public void RecursivelyAssertEquality(Comparands comparands, IEquivalencyValidationContext context) { var scope = AssertionScope.Current; if (ShouldCompareMembersThisDeep(context.CurrentNode, context.Options, scope)) { UpdateScopeWithReportableContext(scope, comparands, context.CurrentNode); if (!context.IsCyclicReference(comparands.Expectation)) { RunStepsUntilEquivalencyIsProven(comparands, context); } } }