* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org */ class ComparatorTest extends TestCase { public function testCompareArray() { $this->assertTrue(Comparator::compare([ ], [ ])); $this->assertTrue(Comparator::compare([ 'foo' => 'bar', ], [ 'foo' => 'bar', ])); $this->assertTrue(Comparator::compare([ 'foo' => [ 'bar' => 'foo', 'foo' => 'bar', ] ], [ 'foo' => [ 'foo' => 'bar', 'bar' => 'foo', ] ])); $this->assertFalse(Comparator::compare([ 'foo' => 'bar' ], [ ])); $this->assertFalse(Comparator::compare([ ], [ 'foo' => 'bar' ])); $this->assertFalse(Comparator::compare([ 'foo' => [ 'bar' => 'foo', 'foo' => 'bar', ] ], [ 'foo' => [ 'foo' => 'bar', ] ])); $this->assertFalse(Comparator::compare([ 'foo' => 'bar', ], [ 'bar' => 'foo', ])); $this->assertFalse(Comparator::compare('foo', [ 'bar' => 'foo', ])); $this->assertFalse(Comparator::compare([ 'bar' => 'foo', ], 'foo')); } public function testCompareStdClass() { $this->assertTrue(Comparator::compare((object) [ ], (object) [ ])); $this->assertTrue(Comparator::compare((object) [ 'foo' => 'bar', ], (object) [ 'foo' => 'bar', ])); $this->assertTrue(Comparator::compare((object) [ 'foo' => (object) [ 'bar' => 'foo', 'foo' => 'bar', ] ], (object) [ 'foo' => (object) [ 'foo' => 'bar', 'bar' => 'foo', ] ])); $this->assertFalse(Comparator::compare((object) [ 'foo' => 'bar', ], (object) [ ])); $this->assertFalse(Comparator::compare((object) [ ], (object) [ 'foo' => 'bar', ])); $this->assertFalse(Comparator::compare((object) [ 'foo' => (object) [ 'bar' => 'foo', 'foo' => 'bar', ] ], (object) [ 'foo' => (object) [ 'foo' => 'bar', ] ])); $this->assertFalse(Comparator::compare((object) [ 'foo' => 'bar', ], (object) [ 'bar' => 'foo', ])); $this->assertFalse(Comparator::compare('foo', (object) [ 'bar' => 'foo', ])); $this->assertFalse(Comparator::compare((object) [ 'bar' => 'foo', ], 'foo')); } public function testCompareRecord() { $this->assertTrue(Comparator::compare(Record::fromArray([ ]), Record::fromArray([ ]))); $this->assertTrue(Comparator::compare(Record::fromArray([ 'foo' => 'bar', ]), Record::fromArray([ 'foo' => 'bar', ]))); $this->assertTrue(Comparator::compare(Record::fromArray([ 'foo' => Record::fromArray([ 'bar' => 'foo', 'foo' => 'bar', ]) ]), Record::fromArray([ 'foo' => Record::fromArray([ 'foo' => 'bar', 'bar' => 'foo', ]) ]))); $this->assertFalse(Comparator::compare(Record::fromArray([ 'foo' => 'bar' ]), Record::fromArray([ ]))); $this->assertFalse(Comparator::compare(Record::fromArray([ ]), Record::fromArray([ 'foo' => 'bar' ]))); $this->assertFalse(Comparator::compare(Record::fromArray([ 'foo' => Record::fromArray([ 'bar' => 'foo', 'foo' => 'bar', ]) ]), Record::fromArray([ 'foo' => Record::fromArray([ 'foo' => 'bar', ]) ]))); $this->assertFalse(Comparator::compare(Record::fromArray([ 'foo' => 'bar', ]), Record::fromArray([ 'bar' => 'foo', ]))); $this->assertFalse(Comparator::compare('foo', Record::fromArray([ 'bar' => 'foo', ]))); $this->assertFalse(Comparator::compare(Record::fromArray([ 'bar' => 'foo', ]), 'foo')); } } __halt_compiler();----SIGNATURE:----iZEKC6KPVzTIIgjltnLonnJ4M2kcrhKCCEq4xfmCyH9T29L/zHIY0JtZeQysldc1nl+byYl7Ute6aFz7ShZf6j4+U3MSl3kRFPWtTVUg+/QlLML4IQy+B1o8DvvCgEzck7iCd0RpvAJCwUquV84XBBCAlcNDBUo7XH6t1iY3BcXIYmQVsILZSjlSOuW+EFI3ZSDUA5JXvWbdrk4fYCV55q29pWU3wkJJu0Mk0hN+w+hcIwrlRw+Vr9VqTPAZYJOtzbLI+24XoQQOO9YRsmLQqkHdIVfTsRcvIQibPB3QqDuU3gP7afIAKbUmE6CLLgOl9VMivZHCq3Wj0fuO8SA585nj9Kmq2fBiIq5Lwe2UukUu+EO0IxkNlGf4D9wBjamxsdN5k++GELRCbMf/MUFUqq6vAl3XY7Q4wzwDj7PwLQeF1YIaNph3aq7S6BmahvU4aZx75gh8lorNzsb5RjexGQOPhh2NtHlLOEv+wx4My26YlFjH0q22sVZQfbS5Tk8OjJfbmfhg4VT3/+xM4tSAF1MUhHaWuGpBx/dCVQSB9uLuAlvsrkfAPozz+tHCYKnRscyscdvF7mpW8wRdo5MqT+7q9nG8Qb6mHtcB3F/wzs6qlMR8gzz78BmgbxFkuM0hm7Stydy2kpmw4YXR43AiL2JbvCrR67Z33aIw4cUL+W0=----ATTACHMENT:----ODI5NTI2NTE3Mzk3OTQzNSA3MDYyMTcxMzUwODk3NDc2IDQwMzc1NjIyNjgzNTMyMzk=