diff options
Diffstat (limited to 'trunk/Examples/test-suite/csharp/aggregate_runme.cs')
-rw-r--r-- | trunk/Examples/test-suite/csharp/aggregate_runme.cs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/trunk/Examples/test-suite/csharp/aggregate_runme.cs b/trunk/Examples/test-suite/csharp/aggregate_runme.cs new file mode 100644 index 000000000..ee6394b56 --- /dev/null +++ b/trunk/Examples/test-suite/csharp/aggregate_runme.cs @@ -0,0 +1,28 @@ +using System; +using aggregateNamespace; + +public class runme { + static void Main() { + + // Confirm that move() returns correct results under normal use + int result = aggregate.move(aggregate.UP); + if (result != aggregate.UP) throw new Exception("UP failed"); + + result = aggregate.move(aggregate.DOWN); + if (result != aggregate.DOWN) throw new Exception("DOWN failed"); + + result = aggregate.move(aggregate.LEFT); + if (result != aggregate.LEFT) throw new Exception("LEFT failed"); + + result = aggregate.move(aggregate.RIGHT); + if (result != aggregate.RIGHT) throw new Exception("RIGHT failed"); + + // Confirm that move() raises an exception when the contract is violated + try { + aggregate.move(0); + throw new Exception("0 test failed"); + } + catch (ArgumentOutOfRangeException) { + } + } +} |