|
From: Levi K. <lkh...@us...> - 2004-08-24 16:00:37
|
Update of /cvsroot/nmock/nmock/test/NMock In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18881/test/NMock Modified Files: DynamicMockTest.cs MockTest.cs VerifyExceptionTest.cs Log Message: VerifyException message overhaul, now all messages include full expected method signature; helps to locate errors in tests Index: MockTest.cs =================================================================== RCS file: /cvsroot/nmock/nmock/test/NMock/MockTest.cs,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** MockTest.cs 19 Aug 2004 06:12:37 -0000 1.13 --- MockTest.cs 24 Aug 2004 16:00:24 -0000 1.14 *************** *** 258,262 **** { Assertion.AssertEquals("mymock.x(System.String) called too many times", e.Reason); ! Assertion.AssertEquals(0, e.Expected); Assertion.AssertEquals(1, e.Actual); } --- 258,262 ---- { Assertion.AssertEquals("mymock.x(System.String) called too many times", e.Reason); ! Assertion.AssertEquals("<0>", e.Expected); Assertion.AssertEquals(1, e.Actual); } *************** *** 274,278 **** { Assertion.AssertEquals("mymock.x(System.String) called too many times", e.Reason); ! Assertion.AssertEquals(0, e.Expected); Assertion.AssertEquals(1, e.Actual); } --- 274,278 ---- { Assertion.AssertEquals("mymock.x(System.String) called too many times", e.Reason); ! Assertion.AssertEquals("<0>", e.Expected); Assertion.AssertEquals(1, e.Actual); } *************** *** 290,294 **** { Assertion.AssertEquals("mymock.x() never called", e.Reason); ! Assertion.AssertEquals(1, e.Expected); Assertion.AssertEquals(0, e.Actual); } --- 290,294 ---- { Assertion.AssertEquals("mymock.x() never called", e.Reason); ! Assertion.AssertEquals("<1>", e.Expected); Assertion.AssertEquals(0, e.Actual); } *************** *** 307,312 **** catch (VerifyException e) { ! Assertion.AssertEquals("x() called too many times", e.Reason); ! Assertion.AssertEquals(1, e.Expected); Assertion.AssertEquals(2, e.Actual); } --- 307,312 ---- catch (VerifyException e) { ! Assertion.AssertEquals("mymock.x() called too many times", e.Reason); ! Assertion.AssertEquals("<1>", e.Expected); Assertion.AssertEquals(2, e.Actual); } *************** *** 325,329 **** { AssertEquals("mymock.x() never called", e.Reason); ! AssertEquals(2, e.Expected); AssertEquals(0, e.Actual); } --- 325,329 ---- { AssertEquals("mymock.x() never called", e.Reason); ! AssertEquals("<2>", e.Expected); AssertEquals(0, e.Actual); } *************** *** 343,347 **** { Assertion.AssertEquals("mymock.x() not called enough times", e.Reason); ! Assertion.AssertEquals(2, e.Expected); Assertion.AssertEquals(1, e.Actual); } --- 343,347 ---- { Assertion.AssertEquals("mymock.x() not called enough times", e.Reason); ! Assertion.AssertEquals("<2>", e.Expected); Assertion.AssertEquals(1, e.Actual); } *************** *** 362,367 **** catch (VerifyException e) { ! Assertion.AssertEquals("x() called too many times", e.Reason); ! Assertion.AssertEquals(2, e.Expected); Assertion.AssertEquals(3, e.Actual); } --- 362,367 ---- catch (VerifyException e) { ! Assertion.AssertEquals("mymock.x() called too many times", e.Reason); ! Assertion.AssertEquals("<2>", e.Expected); Assertion.AssertEquals(3, e.Actual); } *************** *** 382,386 **** catch (VerifyException e) { ! Assertion.AssertEquals(3, e.Expected); Assertion.AssertEquals(2, e.Actual); Assertion.AssertEquals("mymock.x() not called enough times", e.Reason); --- 382,386 ---- catch (VerifyException e) { ! Assertion.AssertEquals("<3>", e.Expected); Assertion.AssertEquals(2, e.Actual); Assertion.AssertEquals("mymock.x() not called enough times", e.Reason); *************** *** 398,403 **** catch (VerifyException e) { ! Assertion.AssertEquals("x() called with incorrect number of parameters", e.Reason); ! Assertion.AssertEquals(3, e.Expected); Assertion.AssertEquals(2, e.Actual); } --- 398,404 ---- catch (VerifyException e) { ! Assertion.AssertEquals("mymock.x(System.Int32, System.Int32, System.Int32)" + ! " called with incorrect number of parameters", e.Reason); ! Assertion.AssertEquals("<3>", e.Expected); Assertion.AssertEquals(2, e.Actual); } *************** *** 420,424 **** catch (VerifyException e) { ! Assertion.AssertEquals("x() called with incorrect parameter (2)", e.Reason); Assertion.AssertEquals("wee woo", e.Expected); Assertion.AssertEquals("actual value", e.Actual); --- 421,426 ---- catch (VerifyException e) { ! Assertion.AssertEquals("mymock.x(<constraint>, <constraint>)" + ! " called with incorrect parameter (2)", e.Reason); Assertion.AssertEquals("wee woo", e.Expected); Assertion.AssertEquals("actual value", e.Actual); Index: VerifyExceptionTest.cs =================================================================== RCS file: /cvsroot/nmock/nmock/test/NMock/VerifyExceptionTest.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** VerifyExceptionTest.cs 15 Nov 2002 22:48:20 -0000 1.1 --- VerifyExceptionTest.cs 24 Aug 2004 16:00:25 -0000 1.2 *************** *** 1,4 **** --- 1,5 ---- using System; using NUnit.Framework; + using NMock.Constraints; namespace NMock *************** *** 8,22 **** public class VerifyExceptionTest { ! [Test] ! public void Message() { ! VerifyException e = new VerifyException("Boo", "<Wee>", 44); ! Assertion.AssertEquals("Boo\nexpected:<Wee>\n but was:<44>", e.Message); ! Assertion.AssertEquals("Boo", e.Reason); ! Assertion.AssertEquals("<Wee>", e.Expected); ! Assertion.AssertEquals(44, e.Actual); } } --- 9,105 ---- public class VerifyExceptionTest { ! private readonly MethodSignature signature = new MethodSignature("Foo", "Bar"); ! [Test] ! public void SimpleMessage() { ! VerifyException e = new VerifyException(signature, "Boo"); ! Assertion.AssertEquals("\n\tFoo.Bar() Boo", e.Message); ! Assertion.AssertEquals("Foo.Bar() Boo", e.Reason); ! Assertion.AssertEquals(null, e.Expected); ! Assertion.AssertEquals(null, e.Actual); } + [Test] + public void MessageWithExpectedActual() + { + VerifyException e = new VerifyException(signature, "Boo", "Wee", 44); + Assertion.AssertEquals("\n\tFoo.Bar() Boo\n\n\texpected:<Wee>\n\t but was:<44>", e.Message); + Assertion.AssertEquals("Foo.Bar() Boo", e.Reason); + Assertion.AssertEquals("<Wee>", e.Expected); + Assertion.AssertEquals(44, e.Actual); + } + + [Test] + public void MessageFromContraint() + { + IMock constraint = new DynamicMock(typeof(IConstraint)); + constraint.SetupResult("Message", "<wee woo>"); + constraint.SetupResult("Eval", false, typeof(object)); + + constraint.ExpectAndReturn("ExtractActualValue", "actual value", "world"); + + VerifyException e = new VerifyException(signature, + (IConstraint)constraint.MockInstance, "world", 0); + + Assertion.AssertEquals( + "\n\tFoo.Bar() called with incorrect parameter (1)\n\n" + + "\texpected:<wee woo>\n\t but was:<actual value>", e.Message); + + Assertion.AssertEquals("Foo.Bar() called with incorrect parameter (1)", e.Reason); + Assertion.AssertEquals("<wee woo>", e.Expected); + Assertion.AssertEquals("actual value", e.Actual); + } + + [Test] + public void TooManyCalls() + { + VerifyException e = VerifyException.TooManyCalls(signature, 1, 2); + Assertion.AssertEquals("Foo.Bar() called too many times", e.Reason); + Assertion.AssertEquals("<1>", e.Expected); + Assertion.AssertEquals(2, e.Actual); + } + + [Test, ExpectedException(typeof(ArgumentException))] + public void TooManyCalls_EqualArguments() + { + VerifyException.TooManyCalls(signature, 1, 1); + } + + [Test, ExpectedException(typeof(ArgumentException))] + public void TooManyCalls_WrongArguments() + { + VerifyException.TooManyCalls(signature, 2, 1); + } + + [Test] + public void NotEnoughCalls() + { + VerifyException e = VerifyException.NotEnoughCalls(signature, 2, 1); + Assertion.AssertEquals("Foo.Bar() not called enough times", e.Reason); + Assertion.AssertEquals("<2>", e.Expected); + Assertion.AssertEquals(1, e.Actual); + } + + [Test] + public void NotEnoughCalls_Never() + { + VerifyException e = VerifyException.NotEnoughCalls(signature, 1, 0); + Assertion.AssertEquals("Foo.Bar() never called", e.Reason); + Assertion.AssertEquals("<1>", e.Expected); + Assertion.AssertEquals(0, e.Actual); + } + + [Test, ExpectedException(typeof(ArgumentException))] + public void NotEnoughCalls_EqualArguments() + { + VerifyException.NotEnoughCalls(signature, 1, 1); + } + + [Test, ExpectedException(typeof(ArgumentException))] + public void NotEnoughCalls_WrongArguments() + { + VerifyException.NotEnoughCalls(signature, 1, 2); + } } Index: DynamicMockTest.cs =================================================================== RCS file: /cvsroot/nmock/nmock/test/NMock/DynamicMockTest.cs,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** DynamicMockTest.cs 15 Jun 2004 17:32:53 -0000 1.22 --- DynamicMockTest.cs 24 Aug 2004 16:00:24 -0000 1.23 *************** *** 221,225 **** } ! [Test] public void CanSetupResultForMembersInheritedFromBaseInterfaces() { IMock mock = new DynamicMock(typeof(IBlah)); --- 221,225 ---- } ! [Test] public void CanSetupResultForMembersInheritedFromBaseInterfaces() { IMock mock = new DynamicMock(typeof(IBlah)); |