function it_should_have_session_when_find_by_endurance_type(HydratorFactory $hydratorFactory, EnduranceSessionHydrator $enduranceSessionHydrator, EnduranceSession $enduranceSession1, EnduranceSession $enduranceSession2) { $hydratorFactory->getHydrator('endurance')->willReturn($enduranceSessionHydrator); $this->setHydratorFactory($hydratorFactory); $enduranceSession1->getDuration()->willReturn(45); $enduranceSession1->getFrequence()->willReturn(65); $enduranceSession1->getTrainingTypes()->willReturn(array(10, 21, 42)); $stdSession1 = new \stdClass(); $stdSession1->duration = 45; $stdSession1->frequence = 65; $stdSession1->training_type = array(10, 21, 42); $enduranceSession2->getDuration()->willReturn(60); $enduranceSession2->getFrequence()->willReturn(65); $enduranceSession2->getTrainingTypes()->willReturn(array(10, 21, 42)); $stdSession2 = new \stdClass(); $stdSession2->duration = 60; $stdSession2->frequence = 65; $stdSession2->training_type = array(10, 21, 42); $enduranceSessionHydrator->hydrate($stdSession1)->willReturn($enduranceSession1); $enduranceSessionHydrator->hydrate($stdSession2)->willReturn($enduranceSession2); $this->findByType('endurance')->shouldReturn(array($enduranceSession1, $enduranceSession2)); }
/** * @param string $type * @param stdClass $session * * @return SessionInterface */ public function hydrate($type, \stdClass $session) { return $this->hydratorFactory->getHydrator($type)->hydrate($session); }