public function testWkstRule() { $wkst = new WkstRule(WeekDay::MO()); $this->assertSame('MO', (string) $wkst->getDay()); $wkst->setDay(WeekDay::SU()); $this->assertSame('SU', (string) $wkst->getDay()); $xml = '<?xml version="1.0"?>' . "\n" . '<wkst day="' . WeekDay::SU() . '" />'; $this->assertXmlStringEqualsXmlString($xml, (string) $wkst); $array = array('wkst' => array('day' => WeekDay::SU()->value())); $this->assertEquals($array, $wkst->toArray()); }
public function testWkDay() { $ordwk = mt_rand(1, 10); $wkday = new WkDay(WeekDay::SU(), $ordwk); $this->assertSame('SU', (string) $wkday->getDay()); $this->assertSame($ordwk, $wkday->getOrdWk()); $wkday = new WkDay(WeekDay::MO()); $wkday->setDay(WeekDay::SU())->setOrdWk($ordwk); $this->assertSame('SU', (string) $wkday->getDay()); $this->assertSame($ordwk, $wkday->getOrdWk()); $xml = '<?xml version="1.0"?>' . "\n" . '<wkday day="' . WeekDay::SU() . '" ordwk="' . $ordwk . '" />'; $this->assertXmlStringEqualsXmlString($xml, (string) $wkday); $array = array('wkday' => array('day' => WeekDay::SU()->value(), 'ordwk' => $ordwk)); $this->assertEquals($array, $wkday->toArray()); }
public function testByDayRule() { $ordwk1 = mt_rand(1, 53); $ordwk2 = mt_rand(-53, -1); $wkday1 = new WkDay(WeekDay::SU(), $ordwk1); $wkday2 = new WkDay(WeekDay::MO(), $ordwk2); $byday = new ByDayRule([$wkday1]); $this->assertSame([$wkday1], $byday->getDays()->all()); $byday->addDay($wkday2); $this->assertSame([$wkday1, $wkday2], $byday->getDays()->all()); $xml = '<?xml version="1.0"?>' . "\n" . '<byday>' . '<wkday day="' . WeekDay::SU() . '" ordwk="' . $ordwk1 . '" />' . '<wkday day="' . WeekDay::MO() . '" ordwk="' . $ordwk2 . '" />' . '</byday>'; $this->assertXmlStringEqualsXmlString($xml, (string) $byday); $array = array('byday' => array('wkday' => array(array('day' => WeekDay::SU()->value(), 'ordwk' => $ordwk1), array('day' => WeekDay::MO()->value(), 'ordwk' => $ordwk2)))); $this->assertEquals($array, $byday->toArray()); }
public function testByDayRule() { $wkday1 = new \Zimbra\Mail\Struct\WkDay(WeekDay::SU(), 10); $wkday2 = new \Zimbra\Mail\Struct\WkDay(WeekDay::MO(), 10); $byday = new \Zimbra\Mail\Struct\ByDayRule(array($wkday1)); $this->assertSame(array($wkday1), $byday->wkday()->all()); $byday->addWkDay($wkday2); $this->assertSame(array($wkday1, $wkday2), $byday->wkday()->all()); $xml = '<?xml version="1.0"?>' . "\n" . '<byday>' . '<wkday day="SU" ordwk="10" />' . '<wkday day="MO" ordwk="10" />' . '</byday>'; $this->assertXmlStringEqualsXmlString($xml, (string) $byday); $array = array('byday' => array('wkday' => array(array('day' => 'SU', 'ordwk' => 10), array('day' => 'MO', 'ordwk' => 10)))); $this->assertEquals($array, $byday->toArray()); }