/** @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(); }