public function getVisitorMock(RecordInterface $record) { $visitor = $this->getMock('PSX\\Data\\Record\\VisitorInterface', array('visitObjectStart', 'visitObjectEnd', 'visitObjectValueStart', 'visitObjectValueEnd', 'visitArrayStart', 'visitArrayEnd', 'visitArrayValueStart', 'visitArrayValueEnd', 'visitValue')); $visitor->expects($this->at(0))->method('visitObjectStart')->with($this->equalTo('record')); $visitor->expects($this->at(1))->method('visitObjectValueStart')->with($this->equalTo('id'), $this->equalTo(1)); $visitor->expects($this->at(2))->method('visitValue')->with($this->equalTo(1)); $visitor->expects($this->at(4))->method('visitObjectValueStart')->with($this->equalTo('title'), $this->equalTo('foobar')); $visitor->expects($this->at(5))->method('visitValue')->with($this->equalTo('foobar')); $visitor->expects($this->at(7))->method('visitObjectValueStart')->with($this->equalTo('active'), $this->equalTo(true)); $visitor->expects($this->at(8))->method('visitValue')->with($this->equalTo(true)); $visitor->expects($this->at(10))->method('visitObjectValueStart')->with($this->equalTo('disabled'), $this->equalTo(false)); $visitor->expects($this->at(11))->method('visitValue')->with($this->equalTo(false)); $visitor->expects($this->at(13))->method('visitObjectValueStart')->with($this->equalTo('rating'), $this->equalTo(12.45)); $visitor->expects($this->at(14))->method('visitValue')->with($this->equalTo(12.45)); $visitor->expects($this->at(16))->method('visitObjectValueStart')->with($this->equalTo('date'), $this->equalTo(new \DateTime('2014-01-01T12:34:47+01:00'))); $visitor->expects($this->at(17))->method('visitValue')->with($this->equalTo(new \DateTime('2014-01-01T12:34:47+01:00'))); $visitor->expects($this->at(19))->method('visitObjectValueStart')->with($this->equalTo('href'), $this->equalTo(new Uri('http://foo.com'))); $visitor->expects($this->at(20))->method('visitValue')->with($this->equalTo(new Uri('http://foo.com'))); // person $visitor->expects($this->at(22))->method('visitObjectValueStart')->with($this->equalTo('person'), $this->equalTo($record->getPerson())); $visitor->expects($this->at(23))->method('visitObjectStart')->with($this->equalTo('person')); $visitor->expects($this->at(24))->method('visitObjectValueStart')->with($this->equalTo('title'), $this->equalTo('Foo')); $visitor->expects($this->at(25))->method('visitValue')->with($this->equalTo('Foo')); // category $visitor->expects($this->at(29))->method('visitObjectValueStart')->with($this->equalTo('category'), $this->equalTo($record->getCategory())); $visitor->expects($this->at(30))->method('visitObjectStart')->with($this->equalTo('category')); $visitor->expects($this->at(31))->method('visitObjectValueStart')->with($this->equalTo('general'), $this->equalTo($record->getCategory()->getGeneral())); $visitor->expects($this->at(32))->method('visitObjectStart')->with($this->equalTo('category')); $visitor->expects($this->at(33))->method('visitObjectValueStart')->with($this->equalTo('news'), $this->equalTo($record->getCategory()->getGeneral()->getNews())); $visitor->expects($this->at(34))->method('visitObjectStart')->with($this->equalTo('category')); $visitor->expects($this->at(35))->method('visitObjectValueStart')->with($this->equalTo('technic'), $this->equalTo('Foo')); $visitor->expects($this->at(36))->method('visitValue')->with($this->equalTo('Foo')); // tags $visitor->expects($this->at(44))->method('visitObjectValueStart')->with($this->equalTo('tags'), $this->equalTo($record->getTags())); $visitor->expects($this->at(46))->method('visitArrayValueStart')->with($this->equalTo('bar')); $visitor->expects($this->at(47))->method('visitValue')->with($this->equalTo('bar')); $visitor->expects($this->at(49))->method('visitArrayValueStart')->with($this->equalTo('foo')); $visitor->expects($this->at(50))->method('visitValue')->with($this->equalTo('foo')); $visitor->expects($this->at(52))->method('visitArrayValueStart')->with($this->equalTo('test')); $visitor->expects($this->at(53))->method('visitValue')->with($this->equalTo('test')); // entry $visitor->expects($this->at(57))->method('visitObjectValueStart')->with($this->equalTo('entry'), $this->equalTo($record->getEntry())); $visitor->expects($this->at(59))->method('visitArrayValueStart')->with($this->equalTo($record->getEntry()[0])); $visitor->expects($this->at(60))->method('visitObjectStart')->with($this->equalTo('entry')); $visitor->expects($this->at(61))->method('visitObjectValueStart')->with($this->equalTo('title'), $this->equalTo($record->getEntry()[0]->getTitle())); $visitor->expects($this->at(62))->method('visitValue')->with($this->equalTo($record->getEntry()[0]->getTitle())); $visitor->expects($this->at(66))->method('visitArrayValueStart')->with($this->equalTo($record->getEntry()[1])); $visitor->expects($this->at(67))->method('visitObjectStart')->with($this->equalTo('entry')); $visitor->expects($this->at(68))->method('visitObjectValueStart')->with($this->equalTo('title'), $this->equalTo($record->getEntry()[1]->getTitle())); $visitor->expects($this->at(69))->method('visitValue')->with($this->equalTo($record->getEntry()[1]->getTitle())); return $visitor; }