The following code causes an exception in 1.7.1.1:
var obj1 = new { Bytes = new byte[] { 1, 2, 3, 4 }, Obj = new { A = 1, B = 2 } };
var obj2 = new { Bytes = new byte[] { 1, 2, 3, 4 }, Obj = new { A = 1, B = 2 } };
Error Message:
Test method PVM.Server.Tests.Infrastructure.Persistence.MappingsTests.TestOrderMapping threw exception:
System.InvalidOperationException: Please specify some properties to include in the comparison.
Error Stack Trace:
FluentAssertions.Assertions.PropertyEqualityValidator.Validate(UniqueObjectTracker tracker, String parentPropertyName) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 83
FluentAssertions.Assertions.PropertyEqualityValidator.AssertNestedEquality(Object actualValue, Object expectedValue, String propertyName) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 236
FluentAssertions.Assertions.PropertyEqualityValidator.AssertNestedCollectionEquality(Object actualValue, IEnumerable expectedValue, String propertyPath) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 191
FluentAssertions.Assertions.PropertyEqualityValidator.AssertSinglePropertyEquality(String propertyName, Object actualValue, Object expectedValue) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 150
FluentAssertions.Assertions.PropertyEqualityValidator.AssertPropertyEqualityUsingVerificationContext(Object expectedValue, Object actualValue, PropertyInfo propertyInfo) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 124
FluentAssertions.Assertions.PropertyEqualityValidator.AssertSelectedPropertiesAreEqual(Object subject, Object expected) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 100
FluentAssertions.Assertions.PropertyEqualityValidator.Validate(UniqueObjectTracker tracker, String parentPropertyName) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 86
FluentAssertions.Assertions.PropertyEqualityValidator.Validate() in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 66
FluentAssertions.Assertions.PropertyAssertions`1.EqualTo(Object otherObject, String reason, Object[] reasonArgs) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyAssertions.cs: line 166
FluentAssertions.Assertions.PropertyAssertions`1.EqualTo(Object otherObject) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyAssertions.cs: line 142
Tests.TestRecursivePropertiesComparison() in C:\Users\aegon\projects\fluentassertions_test\src\Tests.cs: line 43
Comments: ** Comment from web user: dennisdoomen **
var obj1 = new { Bytes = new byte[] { 1, 2, 3, 4 }, Obj = new { A = 1, B = 2 } };
var obj2 = new { Bytes = new byte[] { 1, 2, 3, 4 }, Obj = new { A = 1, B = 2 } };
Error Message:
Test method PVM.Server.Tests.Infrastructure.Persistence.MappingsTests.TestOrderMapping threw exception:
System.InvalidOperationException: Please specify some properties to include in the comparison.
Error Stack Trace:
FluentAssertions.Assertions.PropertyEqualityValidator.Validate(UniqueObjectTracker tracker, String parentPropertyName) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 83
FluentAssertions.Assertions.PropertyEqualityValidator.AssertNestedEquality(Object actualValue, Object expectedValue, String propertyName) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 236
FluentAssertions.Assertions.PropertyEqualityValidator.AssertNestedCollectionEquality(Object actualValue, IEnumerable expectedValue, String propertyPath) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 191
FluentAssertions.Assertions.PropertyEqualityValidator.AssertSinglePropertyEquality(String propertyName, Object actualValue, Object expectedValue) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 150
FluentAssertions.Assertions.PropertyEqualityValidator.AssertPropertyEqualityUsingVerificationContext(Object expectedValue, Object actualValue, PropertyInfo propertyInfo) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 124
FluentAssertions.Assertions.PropertyEqualityValidator.AssertSelectedPropertiesAreEqual(Object subject, Object expected) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 100
FluentAssertions.Assertions.PropertyEqualityValidator.Validate(UniqueObjectTracker tracker, String parentPropertyName) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 86
FluentAssertions.Assertions.PropertyEqualityValidator.Validate() in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyEqualityValidator.cs: line 66
FluentAssertions.Assertions.PropertyAssertions`1.EqualTo(Object otherObject, String reason, Object[] reasonArgs) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyAssertions.cs: line 166
FluentAssertions.Assertions.PropertyAssertions`1.EqualTo(Object otherObject) in c:\Workspaces\FluentAssertions\Releases\1.7.0\FluentAssertions.Net35\Assertions\PropertyAssertions.cs: line 142
Tests.TestRecursivePropertiesComparison() in C:\Users\aegon\projects\fluentassertions_test\src\Tests.cs: line 43
Comments: ** Comment from web user: dennisdoomen **
It also occurs on the trunk, so we need to fix it for 1.7.1.1 and 1.8.