Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions bin/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/TennisGame.class
/TennisGameException.class
/TennisGameTest.class
/TennisGameTestTest2.class
/AllTests.class
Binary file modified bin/TennisGame.class
Binary file not shown.
Binary file modified bin/TennisGameTest.class
Binary file not shown.
6 changes: 4 additions & 2 deletions src/TennisGame.java
Original file line number Diff line number Diff line change
Expand Up @@ -83,9 +83,11 @@ public String getScore() {
if (player1Points >= 4 && player1Points - player2Points == 1)
return "player1 has advantage";

if (player2Points > 4 && player2Points - player1Points == 1)
//The comparison operator was >
if (player2Points >= 4 && player2Points - player1Points == 1)
return "player2 has advantage";

return player2Score + " - " + player1Score ;
//This return statement was reversed
return player1Score + " - " + player2Score ;
}
}
228 changes: 226 additions & 2 deletions tests/TennisGameTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ public class TennisGameTest {
// "player2 has advantage"
// "player1 wins"
// "player2 wins"
@Ignore
@Test
public void testTennisGame_Start() {
//Arrange
TennisGame game = new TennisGame();
Expand All @@ -30,6 +30,230 @@ public void testTennisGame_Start() {
assertEquals("Initial score incorrect", "love - love", score);
}

@Test
public void testTennisGame_even1() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score deuce 1-1", "15 - 15", score);
}

@Test
public void testTennisGame_even2() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player1Scored();
game.player2Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score even 2-2", "30 - 30", score);
}

@Test
public void testTennisGame_1love() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 1-0", "15 - love", score);
}

@Test
public void testTennisGame_love1() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 0-1", "love - 15", score);
}

@Test
public void testTennisGame_2love() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player1Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 2-0", "30 - love", score);
}

@Test
public void testTennisGame_love2() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player2Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 0-2", "love - 30", score);
}

@Test
public void testTennisGame_3love() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player1Scored();
game.player1Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 3-0", "40 - love", score);
}

@Test
public void testTennisGame_love3() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player2Scored();
game.player2Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 3-0", "love - 40", score);
}

@Test
public void testTennisGame_21() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player1Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 2-1", "30 - 15", score);
}

@Test
public void testTennisGame_12() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player2Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 1-2", "15 - 30", score);
}

@Test
public void testTennisGame_13() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player2Scored();
game.player2Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 1-3", "15 - 40", score);
}

@Test
public void testTennisGame_31() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player1Scored();
game.player1Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 3-1, ", "40 - 15", score);
}

@Test
public void testTennisGame_43() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player2Scored();
game.player2Scored();
game.player2Scored();
game.player1Scored();
game.player1Scored();
game.player1Scored();
game.player1Scored();

//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 4-3", "player1 has advantage", score);
}

@Test
public void testTennisGame_34() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player1Scored();
game.player1Scored();
game.player2Scored();
game.player2Scored();
game.player2Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 3-4", "player2 has advantage", score);
}

@Test
public void testTennisGame_deuceAfterAdvantage2() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player1Scored();
game.player1Scored();
game.player1Scored();
game.player2Scored();
game.player2Scored();
game.player2Scored();
game.player2Scored();
game.player1Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 4-4", "deuce", score);
}

@Test
public void testTennisGame_deuceAfterAdvantage1() throws TennisGameException {
//Arrange
TennisGame game = new TennisGame();
game.player2Scored();
game.player2Scored();
game.player2Scored();
game.player1Scored();
game.player1Scored();
game.player1Scored();
game.player1Scored();
game.player2Scored();
//Act
String score = game.getScore() ;
// Assert
assertEquals("Score 4-4", "deuce", score);
}


@Test
public void testTennisGame_EahcPlayerWin4Points_Score_Deuce() throws TennisGameException {
//Arrange
Expand Down Expand Up @@ -62,6 +286,6 @@ public void testTennisGame_Player1WinsPointAfterGameEnded_ResultsException() thr
game.player1Scored();
//Act
// This statement should cause an exception
game.player1Scored();
game.player1Scored();
}
}