/** * @test */ public function it_compares_dictionaries_without_identifier_by_their_properties() { $address = AddressDictionary::fromNativeValue(array('street' => 'Main Street', 'streetNumber' => 10, 'zip' => '12345', 'city' => 'Test City')); $sameAddress = AddressDictionary::fromNativeValue(array('street' => 'Main Street', 'streetNumber' => 10, 'zip' => '12345', 'city' => 'Test City')); $otherAddress = AddressDictionary::fromNativeValue(array('street' => 'Main Street', 'streetNumber' => 10, 'zip' => '12345', 'city' => 'New York')); $this->assertTrue($address->sameAs($sameAddress)); $this->assertFalse($address->sameAs($otherAddress)); }
/** * @return array[propertyName => Prototype] */ public static function getPropertyPrototypes() { return array('id' => Integer::prototype(), 'name' => String::prototype(), 'address' => AddressDictionary::prototype()); }