3 namespace Sabre\VObject\Component;
5 use Sabre\VObject\Component;
7 class VTodoTest extends \PHPUnit_Framework_TestCase {
10 * @dataProvider timeRangeTestData
12 public function testInTimeRange(VTodo $vtodo,$start,$end,$outcome) {
14 $this->assertEquals($outcome, $vtodo->isInTimeRange($start, $end));
18 public function timeRangeTestData() {
22 $vtodo = Component::create('VTODO');
23 $vtodo->DTSTART = '20111223T120000Z';
24 $tests[] = array($vtodo, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
25 $tests[] = array($vtodo, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), false);
27 $vtodo2 = clone $vtodo;
28 $vtodo2->DURATION = 'P1D';
29 $tests[] = array($vtodo2, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
30 $tests[] = array($vtodo2, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), false);
32 $vtodo3 = clone $vtodo;
33 $vtodo3->DUE = '20111225';
34 $tests[] = array($vtodo3, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
35 $tests[] = array($vtodo3, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), false);
37 $vtodo4 = Component::create('VTODO');
38 $vtodo4->DUE = '20111225';
39 $tests[] = array($vtodo4, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
40 $tests[] = array($vtodo4, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), false);
42 $vtodo5 = Component::create('VTODO');
43 $vtodo5->COMPLETED = '20111225';
44 $tests[] = array($vtodo5, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
45 $tests[] = array($vtodo5, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), false);
47 $vtodo6 = Component::create('VTODO');
48 $vtodo6->CREATED = '20111225';
49 $tests[] = array($vtodo6, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
50 $tests[] = array($vtodo6, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), false);
52 $vtodo7 = Component::create('VTODO');
53 $vtodo7->CREATED = '20111225';
54 $vtodo7->COMPLETED = '20111226';
55 $tests[] = array($vtodo7, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
56 $tests[] = array($vtodo7, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), false);
58 $vtodo7 = Component::create('VTODO');
59 $tests[] = array($vtodo7, new \DateTime('2011-01-01'), new \DateTime('2012-01-01'), true);
60 $tests[] = array($vtodo7, new \DateTime('2011-01-01'), new \DateTime('2011-11-01'), true);