Milestone 1: Test Suites for WorldSimulatorand GridWorld2d<T>

The first deliverable is a set of test suites for the WorldSimulatorand GridWorld2d<T>modules, along with Javadoc documentation describing them. Remember that the concrete implementation (Milestone 2) requires at least two concrete GridWorld2d<T>implementations: RectangularGridWorld2d<T> and TorusGridWorld2d<T>. Milestone 1 MUST include testing code for both of these concrete implementations.

NOTE: Constructing test suites does not require that you have completed, or even started, the WorldSimulatorand GridWorld2d<T> modules themselves. You can, and are expected to, write thorough test suites before having written the target units.

The deliverables for this milestone are:

test suite java files
The class descriptions for the test suites for the WorldSimulatorand GridWorld2d<T>components, including both rectangular and toroidal gridworld implementations. The handin MAY provide a single test suite class file that tests all modules, one test suite class file for each module, or more than one test suite for each module.

In keeping with the ``Standalone execution'' quantitative requirement (Section [*]), the test suite programs MUST be executable standalone, from the command line, using the text-mode interface.

Other Java source files
Any other supporting code files necessary to compile and run the test suites. For example, you MAY include ``stub'' classes for concrete implementations of WorldSimulatorand GridWorld2d<T>. Such stub classes do not actually do anything, but they will allow the test suites to compile. Note that it is expected that initially all tests will be failed.
Test suite documentation
The handin MUST also include full documentation describing: The test suite documentation MUST also include a summary, for each module, of why all the tests, taken together, comprise a thorough exercise of the target module.

The test suite documentation MUST be written in the Javadoc comments for each test suite program. The high level summary SHOULD be the module-level comment for the java file.

The compiled Javadoc documentation MUST be provided in a directory named documentation/ at the root of the submission.

In addition, the handin MAY include any or all of the following:

This file documents any know missing features or incomplete tests. It SHOULD also document what tests you would have liked to include, but didn't, along with a description of why you did not include them.
This file includes any other notes or documentation necessary to use or understand the submission that are not already included in other documentation.

Terran Lane 2005-10-18