[svn] r7545: nemerle/trunk/tools/nemerle-unit: . src src/macros/macros.n src/tests/expected.n

Luntain svnadmin at nemerle.org
Thu Mar 22 12:08:21 CET 2007


Log:
new functionality for NemerleUnit: expected exception

test "test name" expected System.Exception {

}

Author: Luntain
Date: Thu Mar 22 12:08:20 2007
New Revision: 7545

Added:
   nemerle/trunk/tools/nemerle-unit/src/tests/expected.n
Modified:
   nemerle/trunk/tools/nemerle-unit/   (props changed)
   nemerle/trunk/tools/nemerle-unit/src/   (props changed)
   nemerle/trunk/tools/nemerle-unit/src/macros/macros.n

Modified: nemerle/trunk/tools/nemerle-unit/src/macros/macros.n
==============================================================================
--- nemerle/trunk/tools/nemerle-unit/src/macros/macros.n	(original)
+++ nemerle/trunk/tools/nemerle-unit/src/macros/macros.n	Thu Mar 22 12:08:20 2007
@@ -19,15 +19,19 @@
 
 
 
-    macro test(name, code) syntax ("test", name, code ) 
+    macro test(name, code, exception = null) syntax ("test", name, Optional("expected", exception), code) 
         def (sequence,sequence_teardown) = Store.getSetupAndTeardownSequences(Nemerle.Macros.ImplicitCTX().CurrentType.Name)
         def test_body = match(code)
             | <[{..$expresions}]> =>
                 List.Flatten( [sequence,expresions,sequence_teardown])
             | _ => [<[]>]
 
+        mutable attrs = [<[Test]>];
+        when (exception != null)
+            attrs ::= <[ExpectedException(typeof($exception))]>;
+        def mods = Modifiers(NemerleAttributes.Public, attrs);
         def a_test = <[ 
-            decl: [Test] public $(name.ToString().Replace("\"", "") : dyn)(): void  {
+            decl: ..$mods public $(name.ToString().Replace("\"", "") : dyn)(): void  {
                 ..$test_body
             }
         ]>;

Added: nemerle/trunk/tools/nemerle-unit/src/tests/expected.n
==============================================================================
--- (empty file)
+++ nemerle/trunk/tools/nemerle-unit/src/tests/expected.n	Thu Mar 22 12:08:20 2007
@@ -0,0 +1,7 @@
+using NemerleUnit
+using Nemerle.IO
+
+test "null reference" expected System.NullReferenceException
+    assert true
+    def x : string = null
+    x.ToString()



More information about the svn mailing list