public function testPopAttendee() { $event = new Event('test'); $event->setAttendees(array('Daniel')); $this->assertEquals(1, $event->getNumberOfAttendees()); $this->assertTrue($event->hasAttendees()); $this->assertEquals('Daniel', $event->popRandomAttendee()); }
/** * @see Command */ protected function execute(InputInterface $input, OutputInterface $output) { $container = $this->getApplication()->getContainer(); $dataHandler = $container->get('data_adapter'); $this->event = $dataHandler->getEvent($input->getArgument('event_id')); $doGetAttendees = true; if ($this->event->hasAttendees()) { $doGetAttendees = $this->getHelper('dialog')->askConfirmation($output, 'The list of attendees for this event ID already exists, do you want to override? (no) ', false); } if ($doGetAttendees) { $this->event->clearAttendees(); $attendees = $container->get('provider')->getAttendees((string) $this->event); $this->event->setAttendees($attendees); $dataHandler->saveEvent($this->event); $output->writeln("<info>Total attendees:</info><comment>{$this->event->getNumberOfAttendees()}</comment>"); } $output->writeln("<info>You can now start the prizes raffle!</info>"); }