public function __construct(Object\PropertyData $PropertyData) { parent::__construct($PropertyData->GetEntityType()); foreach ($PropertyData as $PropertyIdentifier => $Value) { $Property = $PropertyData->GetProperty($PropertyIdentifier); $this->AddPredicate(Expression::BinaryOperation(Expression::Property($Property), Operators\Binary::Identity, Expression::Constant($Value))); } }
/** * @depends testAddedValuesAreSet */ public function testEquivalentPropertyDataMatches() { $SameValue1 = [1, 2, 3, 4]; $SameValue2 = "I am another value"; $OtherPropertyData = $this->MakePropertyDataMock([$this->Property1, $this->Property2]); $this->PropertyData[$this->Property1] = $SameValue1; $OtherPropertyData[$this->Property1] = $SameValue1; $this->PropertyData[$this->Property2] = $SameValue2; $OtherPropertyData[$this->Property2] = $SameValue2; $this->assertTrue($this->PropertyData->Matches($OtherPropertyData)); $this->assertTrue($OtherPropertyData->Matches($this->PropertyData)); }