| |
| import aggregate.*; |
| |
| public class aggregate_runme { |
| |
| static { |
| try { |
| System.loadLibrary("aggregate"); |
| } catch (UnsatisfiedLinkError e) { |
| System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e); |
| System.exit(1); |
| } |
| } |
| |
| public static void main(String argv[]) { |
| |
| // Confirm that move() returns correct results under normal use |
| int result = aggregate.move(aggregate.UP); |
| if (result != aggregate.UP) throw new RuntimeException("UP failed"); |
| |
| result = aggregate.move(aggregate.DOWN); |
| if (result != aggregate.DOWN) throw new RuntimeException("DOWN failed"); |
| |
| result = aggregate.move(aggregate.LEFT); |
| if (result != aggregate.LEFT) throw new RuntimeException("LEFT failed"); |
| |
| result = aggregate.move(aggregate.RIGHT); |
| if (result != aggregate.RIGHT) throw new RuntimeException("RIGHT failed"); |
| |
| // Confirm that move() raises an exception when the contract is violated |
| try { |
| aggregate.move(0); |
| throw new RuntimeException("0 test failed"); |
| } |
| catch (IllegalArgumentException e) { |
| } |
| } |
| } |
| |