/** @test */
 public function the_deserialized_activity_has_the_same_properties()
 {
     $id = ActivityId::generate();
     $event = new ActivityPlanned($id, 'Crash & Compile', 'Programming competition', Schedule::withStartTime(new DateTimeImmutable('2015-10-01 14:30')), Location::fromNameAndAddress('Francken kamer'), Activity::SOCIAL);
     $event = ActivityPlanned::deserialize($event->serialize());
     $this->assertEquals($id, $event->activityId());
     $this->assertEquals("Crash & Compile", $event->name());
     $this->assertEquals("Programming competition", $event->description());
     $this->assertEquals(new DateTimeImmutable("2015-10-01 14:30"), $event->startTime());
     $this->assertEquals(Location::fromNameAndAddress("Francken kamer"), $event->location());
     $this->assertEquals(Activity::SOCIAL, $event->category());
 }
 protected function applyActivityPlanned(ActivityPlanned $event)
 {
     $this->id = $event->activityId();
     $this->schedule = $event->schedule();
     $this->category = $event->category();
 }