/** * Returns a new CreatePoll command from serialized data * * @param array $data * @return self * @throws CannotDeserializeCommand */ public static function deserialize(array $data) { $validator = new CommandSerializedData(array('pollId', 'title')); if (!$validator->isSatisfiedBy($data)) { throw new CannotDeserializeCommand($data, __CLASS__); } $id = new PollId($data['pollId']); return new self($id, $data['title']); }
/** * @test * @group unit */ public function invalid_serialized_data_returns_true() { $validator = new CommandSerializedData(array('valid_key')); $invalidData = array('invalid_key' => 'value'); $this->assertFalse($validator->isSatisfiedBy($invalidData)); }