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) { } } }