public void CheckAreEqualTrees_WithStructurallyComparedTypesAndEqualValues_DoesNotThrow () { Expression expected = Expression.Constant (Tuple.Create ("a")); Expression actual = Expression.Constant (Tuple.Create ("a")); var expressionTreeComparer = new TestableExpressionTreeComparer ("expected", "actual", typeof (Tuple<string>)); Assert.That (() => expressionTreeComparer.CheckAreEqualNodes (expected, actual), Throws.Nothing); }
public void CheckAreEqualTrees_WithStructurallyComparedTypesAndEqualValues_DoesNotThrow() { Expression expected = Expression.Constant(Tuple.Create("a")); Expression actual = Expression.Constant(Tuple.Create("a")); var expressionTreeComparer = new TestableExpressionTreeComparer("expected", "actual", typeof(Tuple <string>)); Assert.That(() => expressionTreeComparer.CheckAreEqualNodes(expected, actual), Throws.Nothing); }
public void CheckAreEqualTrees_WithStructurallyComparedTypesAndNotEqualValues_Throws() { Expression expected = Expression.Constant(Tuple.Create("a")); Expression actual = Expression.Constant(Tuple.Create("b")); var expressionTreeComparer = new TestableExpressionTreeComparer("expected", "actual", typeof(Tuple <string>)); Assert.That( () => expressionTreeComparer.CheckAreEqualNodes(expected, actual), Throws.InvalidOperationException.With.Message.EqualTo( "Trees are not equal: Property 'Item1'\nNode 1: (a)\nNode 2: (b)\n" + "Tree 1: expected\nTree 2: actual")); }
public void CheckAreEqualTrees_WithStructurallyComparedTypesAndNotEqualValues_Throws () { Expression expected = Expression.Constant (Tuple.Create ("a")); Expression actual = Expression.Constant (Tuple.Create ("b")); var expressionTreeComparer = new TestableExpressionTreeComparer ("expected", "actual", typeof (Tuple<string>)); Assert.That ( () => expressionTreeComparer.CheckAreEqualNodes (expected, actual), Throws.InvalidOperationException.With.Message.EqualTo ( "Trees are not equal: Property 'Item1'\n" #if !NET_3_5 + "Node 1: (a)\nNode 2: (b)\n" #else + "Node 1: <a>\nNode 2: <b>\n" #endif + "Tree 1: expected\nTree 2: actual")); }