/**
  * @Route("/conferences/{conferenceName}/talks/{talkName}/choose", name="choose_talk")
  * @Template()
  */
 public function chooseTalkAction(Request $request, $conferenceName, $talkName)
 {
     $conference = $this->getConferenceByNameOr404(urldecode($conferenceName));
     $mySchedule = $this->getConferenceSchedule($conference);
     $talk = Talk::named(urldecode($talkName));
     $mySchedule->chooseTalk($talk);
     $this->get('doctrine.orm.entity_manager')->flush();
     return $this->redirect($request->headers->get('referer'));
 }
 function it_allows_to_iterate_over_scheduled_talks()
 {
     $conf = $this->getWrappedObject();
     $talk = Talk::named('Advanced Symfony');
     $slot = Slot::fromString('09:00-09:45');
     $track = Track::numbered(2);
     $talkSchedule = new TalkSchedule($conf, $talk, $slot, $track);
     $this->scheduleTalk($talk, $slot, $track);
     $iterator = $this->getIterator();
     $iterator[0]->shouldBeLike($talkSchedule);
 }
 /**
  * @Transform :talk
  */
 public function transformStringToTalk($string)
 {
     return Talk::named($string);
 }
 function it_allows_to_iterate_over_scheduled_talks()
 {
     $this->chooseTalk(Talk::named('BDD by Example'));
     $iterator = $this->getIterator();
     $iterator->shouldHaveCount(1);
 }
 public function getTalk()
 {
     return Talk::named($this->talk);
 }
 function it_exposes_talk()
 {
     $this->getTalk()->shouldBeLike(Talk::named('BDD by Example'));
 }