/** * @param CreateDojoCommand $command */ public function handle(CreateDojoCommand $command) { $internalDojo = new Dojo($command->getZenId(), $command->getName(), $command->getCity(), $command->getLat(), $command->getLon(), $command->getEmail(), $command->getWebsite(), $command->getTwitter()); $internalDojo->setZenCreatorEmail($command->getZenCreatorEmail()); $internalDojo->setZenUrl($command->getZenUrl()); $this->doctrine->persist($internalDojo); $event = new DojoCreatedEvent($command->getZenId(), $command->getZenCreatorEmail(), $command->getZenUrl(), $command->getName(), $command->getCity(), $command->getLat(), $command->getLon(), $command->getEmail(), $command->getWebsite(), $command->getTwitter(), $command->isRemoved()); $this->eventRecorder->record($event); }
/** * {@inheritDoc} */ public function load(ObjectManager $manager) { $user = new Dojo(); $user->setUsername('*****@*****.**')->setEmail('*****@*****.**'); $user->setLocation('Startup Port')->setCity('Rotterdam')->setStreet('Heer Bokelweg')->setHousenumber('155')->setName('CoderDojo City')->setFacebook('http://facebook.com/coderdojonederland')->setTwitter('http://twitter.com/coderdojonl')->setWebsite('http://coderdojo.nl')->setPostalcode('3032AD')->setOrganiser('4680001283')->setEnabled(true)->setLat(51.928294)->setLong(4.480246); $encoder = $this->container->get('security.encoder_factory')->getEncoder($user); $user->setPassword($encoder->encodePassword('coderdojo', $user->getSalt())); $manager->persist($user); $manager->flush(); $this->addReference('user', $user); }
/** * @test */ public function it_should_return_constructor_data() { $event1 = $this->createDojoEventMock(); $event2 = $this->createDojoEventMock(); $this->dojo->addDojo($event1); $this->dojo->addDojo($event2); $this->assertSame('chris', $this->dojo->getName()); $this->assertSame('street', $this->dojo->getStreet()); $this->assertSame('10', $this->dojo->getHousenumber()); $this->assertSame('1234aa', $this->dojo->getPostalcode()); $this->assertSame('city', $this->dojo->getCity()); $this->assertSame('facebook', $this->dojo->getFacebook()); $this->assertSame('twitter', $this->dojo->getTwitter()); $this->assertSame('website', $this->dojo->getWebsite()); $this->assertSame('location', $this->dojo->getLocation()); $this->assertSame('organiser', $this->dojo->getOrganiser()); $this->assertCount(2, $this->dojo->getDojos()); $this->dojo->removeDojo($event1); $this->assertCount(1, $this->dojo->getDojos()); }
/** * Updates the internal dojo with data from the external dojo * * @param InternalDojo $internalDojo * @param CreateDojoCommand $externalDojo */ private function updateInternalDojo(InternalDojo $internalDojo, CreateDojoCommand $externalDojo) { $this->progressBar->setMessage('Matched internal dojo: ' . $internalDojo->getName()); $internalDojo->setZenId($externalDojo->getZenId()); $internalDojo->setZenCreatorEmail($externalDojo->getZenCreatorEmail()); $internalDojo->setZenUrl($externalDojo->getZenUrl()); $internalDojo->setName($externalDojo->getName()); $internalDojo->setLat($externalDojo->getLat()); $internalDojo->setLon($externalDojo->getLon()); $internalDojo->setEmail($externalDojo->getEmail()); $internalDojo->setWebsite($externalDojo->getWebsite()); $internalDojo->setTwitter($externalDojo->getTwitter()); $this->countUpdated++; $this->progressBar->advance(); }