All Projects → jamesfoster → Deepequal

jamesfoster / Deepequal

Licence: mit
An extensible deep comparison for .NET

Labels

DeepEqual

DeepEqual is an extensible deep equality comparison library.

Installing

Install via NuGet

Install-Package DeepEqual

Usage

To test equality simply call the IsDeepEqual extension method.

bool result = object1.IsDeepEqual(object2);

When used inside a test you might want to call ShouldDeepEqual instead. This method throws an exception with a detailed description of the differences between the 2 objects.

object1.ShouldDeepEqual(object2);

You can pass a custom comparison as the second argument to the ShouldDeepEqual method to override the default behaviour. You can also customize the behaviour inline using the WithDeepEqual extension method.

object1.WithDeepEqual(object2)
       .SkipDefault<MyEntity>()
       .IgnoreSourceProperty(x => x.Id)
       .Assert()
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].