webidor/src/test/java/cz/xelfi/quoridor/webidor/FinishedGameTest.java
branchstatistics-and-elo
changeset 178 4b78d4f028b3
parent 166 8c9131715765
child 238 a4f6aca595e8
     1.1 --- a/webidor/src/test/java/cz/xelfi/quoridor/webidor/FinishedGameTest.java	Tue Dec 08 19:57:02 2009 +0100
     1.2 +++ b/webidor/src/test/java/cz/xelfi/quoridor/webidor/FinishedGameTest.java	Thu Jan 07 22:34:17 2010 +0100
     1.3 @@ -184,4 +184,45 @@
     1.4          assertFalse("is finished", end.getId().getStatus().isInProgress());
     1.5      }
     1.6  
     1.7 +    @Test public void testResignBGame() throws Exception {
     1.8 +        String logJarda = webResource.path("login").
     1.9 +            queryParam("name", "Jarda").
    1.10 +            queryParam("password", "heslo").
    1.11 +            accept(MediaType.TEXT_PLAIN).
    1.12 +            put(String.class);
    1.13 +        String logJirka = webResource.path("login").
    1.14 +            queryParam("name", "Jirka").
    1.15 +            queryParam("password", "pesko").
    1.16 +            accept(MediaType.TEXT_PLAIN).
    1.17 +            put(String.class);
    1.18 +
    1.19 +        GameId s = webResource.path("games").queryParam("white", "Jarda")
    1.20 +                .queryParam("loginID", logJarda)
    1.21 +                .queryParam("black", "Jirka").post(GameId.class);
    1.22 +
    1.23 +        assertTrue("In progress", s.getStatus().isInProgress());
    1.24 +
    1.25 +        webResource.path("games/" + s.getId()).
    1.26 +            queryParam("loginID", logJarda).
    1.27 +            queryParam("player", "Jarda").
    1.28 +            queryParam("move", "N").put(GameId.class);
    1.29 +        webResource.path("games/" + s.getId()).
    1.30 +            queryParam("loginID", logJirka).
    1.31 +            queryParam("player", "Jirka").
    1.32 +            queryParam("move", "RESIGN").put(GameId.class);
    1.33 +
    1.34 +
    1.35 +        try {
    1.36 +            Game end = webResource.path("games/" + s.getId()).accept(MediaType.TEXT_XML).get(Game.class);
    1.37 +            fail("Should not be able to get game when finished");
    1.38 +        } catch (UniformInterfaceException ex) {
    1.39 +            // OK
    1.40 +        }
    1.41 +        Game end = webResource.path("games/" + s.getId()).queryParam("loginID", logJarda).accept(MediaType.TEXT_XML).get(Game.class);
    1.42 +        assertEquals("WhiteWins", GameStatus.whiteWon, end.getId().getStatus());
    1.43 +        assertEquals("Jarda wins", "Jarda", end.getCurrentPlayer());
    1.44 +
    1.45 +        assertFalse("is finished", end.getId().getStatus().isInProgress());
    1.46 +    }
    1.47 +
    1.48  }