FileDocCategorySizeDatePackage
TestGame.javaAPI DocExample2643Fri Aug 16 22:15:40 BST 2002com.oreilly.javaxp.junit

TestGame.java

package com.oreilly.javaxp.junit;

import junit.extensions.RepeatedTest;
import junit.extensions.ActiveTestSuite;
import junit.framework.*;

/**
 * Sample unit tests for the {@link Game} class.
 * @author Eric M. Burke
 * @version $Id: TestGame.java,v 1.2 2002/08/17 03:15:40 jepc Exp $
 */
public class TestGame extends TestCase {
    private Game game;
    private Ship fighter;

    public TestGame(String name) {
        super(name);
    }

    public void setUp() throws BadGameException {
        this.game = new Game();
        this.fighter = this.game.createFighter("001");
    }

    public void tearDown() {
        this.game.shutdown();
    }

    public static Test suite() {

        // show how to run tests concurrently
        TestSuite suite = new ActiveTestSuite();
        suite.addTest(new TestGame("testCreateFighter"));
        suite.addTest(new RepeatedTest(new TestGame("testGameInitialState"), 20));
        suite.addTest(new RepeatedTest(new TestGame("testSameFighters"), 10));
        suite.addTest(TestPerson.suite());
        return suite;

        //return new RepeatedTest(new TestSuite(TestGame.class), 1);

//        TestSuite suite = new TestSuite();
//        suite.addTest(new RepeatedTest(new TestGame("testCreateFighter"), 100));
//        suite.addTest(new TestGame("testSameFighters"));
//        suite.addTest(new TestGame("testGameInitialState"));
//        return suite;

        /*
        TestSuite suite = new TestSuite(TestGame.class);
        suite.addTest(new TestSuite(TestPerson.class));
        return suite;
        */
    }

    public static void main(String[] args) {
        junit.textui.TestRunner.run(new TestSuite(TestGame.class));
    }


    public void testCreateFighter() {
        System.out.println("Begin testCreateFigher()");
        assertEquals("Fighter did not have the correct identifier",
                "001", this.fighter.getId());
        System.out.println("End testCreateFighter()");
    }

    public void testSameFighters() {
        System.out.println("Begin testSameFighters()");
        Ship fighter2 = this.game.createFighter("001");
        assertSame("createFighter with same id should return same object",
                this.fighter, fighter2);
        System.out.println("End testSameFighters()");
    }

    public void testGameInitialState() {
        System.out.println("Begin testGameInitialState()");
        assertTrue("A new game should not be started yet",
                !this.game.isPlaying());
        System.out.println("End testGameInitialState()");
    }
}