Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Javadocs are already complete in the supplied code. If you add any fields, methods or classes, complete Javadocs will be expected for them. It is suggested that you do some level of Javadocs for your anonymous inner classes, if only to help keep things straight in your own head.

Testing Procedures

Wiki Markup
The supplied code contains a simple test routine that gives you examples on how to instantiate a {{GameModel}}, {\[Board}} and test them.

It is reasonable to test your code by the following process:

  1. Instantiate a GameModel using the supplied dummy IViewAdapter object.
  2. Load a test output puzzle into the model and then save a reference to model's current board -- this is your reference output board
  3. Load a test input puzzle into the model.
  4. Run your desired operation.
  5. Get a reference to the model's current board -- this is the test output board.
  6. Use assertEquals to compare the output board to the reference board.  

It is highly recommended that you start testing with 2x2 boards.   Carefully construct SIMPLE boards that will test just the feature in question. 

After you are satisfied with your tests on 2x2 boards THEN move on to 3x3 boards.    Note: testing irreducible boards with choices that lead to unsolvable boards may be impossible on a 2x2 board. 

The supplied code does NOT contain a full suite of test boards!  Milestone 1:


 

Extra credit

If you are attempting an extra credit task, put a note to such at the top of your GameModel class. If you don't, the staff might not see it and grade it.

...