public function DateRecurRlHelperUnitTest::testOccurrence in Recurring Dates Field 3.0.x
Same name and namespace in other branches
- 8.2 tests/src/Unit/DateRecurRlHelperUnitTest.php \Drupal\Tests\date_recur\Unit\DateRecurRlHelperUnitTest::testOccurrence()
- 3.x tests/src/Unit/DateRecurRlHelperUnitTest.php \Drupal\Tests\date_recur\Unit\DateRecurRlHelperUnitTest::testOccurrence()
- 3.1.x tests/src/Unit/DateRecurRlHelperUnitTest.php \Drupal\Tests\date_recur\Unit\DateRecurRlHelperUnitTest::testOccurrence()
Test occurrence generation with range limiters.
@covers ::getOccurrences @covers ::generateOccurrences
File
- tests/
src/ Unit/ DateRecurRlHelperUnitTest.php, line 27
Class
- DateRecurRlHelperUnitTest
- Tests Rlanvin implementation of helper.
Namespace
Drupal\Tests\date_recur\UnitCode
public function testOccurrence() {
$helper = $this
->createHelper('FREQ=DAILY;COUNT=1', new \DateTime('2am 14 April 2014'), new \DateTime('4am 14 April 2014'));
// Test out of range (before).
$occurrences = $helper
->getOccurrences(new \DateTime('1am 14 April 2014'), new \DateTime('1:30am 14 April 2014'));
$this
->assertCount(0, $occurrences);
// Test out of range (after).
$occurrences = $helper
->getOccurrences(new \DateTime('4:30am 14 April 2014'), new \DateTime('5am 14 April 2014'));
$this
->assertCount(0, $occurrences);
// Test in range (intersects occurrence start).
$occurrences = $helper
->getOccurrences(new \DateTime('1am 14 April 2014'), new \DateTime('3am 14 April 2014'));
$this
->assertCount(1, $occurrences);
// Test in range (exact).
$occurrences = $helper
->getOccurrences(new \DateTime('2am 14 April 2014'), new \DateTime('4am 14 April 2014'));
$this
->assertCount(1, $occurrences);
// Test in range (within).
$occurrences = $helper
->getOccurrences(new \DateTime('2:30am 14 April 2014'), new \DateTime('3:30am 14 April 2014'));
$this
->assertCount(1, $occurrences);
// Test in range (intersects occurrence end).
$occurrences = $helper
->getOccurrences(new \DateTime('3am 14 April 2014'), new \DateTime('5am 14 April 2014'));
$this
->assertCount(1, $occurrences);
// Test in range but zero limit.
$occurrences = $helper
->getOccurrences(new \DateTime('1am 14 April 2014'), new \DateTime('3am 14 April 2014'), 0);
$this
->assertCount(0, $occurrences);
}