Question: BELOW IS THE CODE YOU HAVE TO HELP ME WITH. MAKE SURE YOU FOLLOW ALL INSTRUCTIONS AND GENERATE YOUR CODE AFTER READING THE JUNIT TESTS,
BELOW IS THE CODE YOU HAVE TO HELP ME WITH. MAKE SURE YOU FOLLOW ALL INSTRUCTIONS AND GENERATE YOUR CODE AFTER READING THE JUNIT TESTS, THAT IS ALL THE METHODS AND CONSTRUCTORS YOU USE SHOULD BE BASED ON THE JUNIT TESTS PROVIDED. I HAVE ATTATCHED THE JAVA CODE AND THE JUNIT TEST FILE.
JAVA CODE:-
package lab5;
/**
*
*
Computational thinking for a software developer/computer programmer
* is a critical skill that is consistently applied. This lab requires you
* to develop a solution using Java object-oriented programming
* that simulates a basketball shootout game.
*
Two players agree to limit the number of ball throw attempts to 3 throws each.
* The first player will make all three throw attempts
* (keep track of the successful baskets made where the ball goes into the basket).
*
After the first player completes all three shots,
* the second player will make all three throw attempts.
* The player who makes the most baskets (gets the ball in the hoop) will be declared the winner.
* In the case of a tie, the tie counter is incremented by one.
* Then, the game is repeated until a winner can be determined.
* Note that the game can be repeated many times.
*
The losing player of the shootout game will have to give the winning player a move ticket(s).
* The number of movie tickets is determined by the total number of baskets made by the winner,
* less the total number of baskets made by the losing player.
*
The losing player gives half of a movie ticket for every tied game (if there were any tied games).
*
If the final calculated number of movie tickets has a decimal value, it should be rounded to
* the nearest whole number since you can't purchase half a ticket!
*
Example: If the player1 made a total of 3 baskets, and player2 made a total of 2,
* and they had three tied games, the number of movie tickets would initially be {@code 3-2=1},
* but increased by {@code 3 x 0.5=1.5}, making the owed number of tickets {@code 2.5} which must be
* rounded up to 3 movie tickets.
*
*
Requirements: - Any use of Java library classes or methods (e.g., ArrayList,
* System.arraycopy) is forbidden. (That is, there must not be an import
* statement in the beginning of this class.) Violation of this requirement will
* result in a 50% penalty of your marks.
*
* - Use only if-statements and/or loops to manipulate primitive arrays (e.g.,
* int[], String[]).
*
*/
public class Game {
// ALREADY IMPLEMENTED; DO NOT MODIFY
/**
* Two players agree to limit the number of ball throw attempts to 3 throws
* each. Constant value
*/
// ALREADY IMPLEMENTED; DO NOT MODIFY
private final static int NUMOFATTEMPT = 3;
/**
* The player1name is used to store the player name. The default value will be
* used if the name is not given to the player
*
* The default value is Unknown
*
*/
// ALREADY IMPLEMENTED; DO NOT MODIFY
private String player1Name;
/**
* The player2name is used to store the player name. The default value will be
* used if the name is not given to the player
*
* The default value is Unknown
*
*/
// ALREADY IMPLEMENTED; DO NOT MODIFY
private String player2Name;
/**
* The player1Attempt array is dynamically allocated at run time to store the
* result from player1 attempts
*
* The default value is false for each attempt
*
*/
// ALREADY IMPLEMENTED; DO NOT MODIFY
private boolean[] player1Attempt;
/**
* The player2Attempt array is dynamically allocated at run time to store the
* result from player2 attempts
*
* The default value is false for each attempt
*
*/
// ALREADY IMPLEMENTED; DO NOT MODIFY
private boolean[] player2Attempt;
/**
* The numberofTie is a counter to keep track of the number of tie games.
*
* The default value is zero before starting the
* game
*
*/
// ALREADY IMPLEMENTED; DO NOT MODIFY
private int numberofTie;
/**
* String Status keeps track of the current situation or status of the game.
*
* This string changes during the game to reflect the game status.
*
*/
// ALREADY IMPLEMENTED; DO NOT MODIFY
private String status;
// TODO: Your implementation starts here
/* Your implementation starts here
* Recall that :
* 1. No System.out.println statements should appear here.
* Instead, you need to return the result.
* 2. No Scanner operations should appear here (e.g., input.nextInt()).
* Instead, refer to the input parameters of this method.
*/
}
JUNIT TEST FILE:-
package lab5;
import static org.junit.Assert.*; import org.junit.Test; import org.junit.rules.Timeout; import org.junit.runners.MethodSorters;
import org.junit.FixMethodOrder; import org.junit.Rule; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.Arrays; import j..>@FixMethodOrder(MethodSorters.NAME_ASCENDING) //ALREADY IMPLEMENTED; DO NOT MODIFY // NO NEED TO SUBMIT THIS FILE
/* * Tests included in this class serve as documentation on how instances of a * Game work. * * Be sure to also read the Lab5 instructions PDF carefully * * Programming IDEs such as Eclipse are able to fix such compilation errors for * you. However, you are advised to follow the guidance as specified in the * written Lab instructions PDF to fix these compilation errors manually, * because: 1) it helps you better understand how the intended classes and * methods work together; and 2) you may be tested in a written test or exam * without the assistance of IDEs. * */
public class JunitTest_GameTest { @Rule public Timeout globalTimeout = Timeout.seconds(1);
private String getPlayer1Name(Game g) { String v = ""; try { Field name = Game.class.getDeclaredField("player1Name"); name.setAccessible(true); v = (String) name.get(g);
} catch (Exception x) { fail("exception occurred trying to get this.getPlayer1Name"); System.out.println(x); } return v; }
private String getPlayer2Name(Game g) { String v = ""; try { Field name = Game.class.getDeclaredField("player2Name"); name.setAccessible(true); v = (String) name.get(g);
} catch (Exception x) { fail("exception occurred trying to get this.getPlayer2Name"); System.out.println(x); } return v; }
private String getGameStatus(Game g) { String v = ""; try { Field name = Game.class.getDeclaredField("status"); name.setAccessible(true); v = (String) name.get(g);
} catch (Exception x) { fail("exception occurred trying to get this.getGameStatus"); System.out.println(x); } return v; }
private int getNumberofTie(Game g) { int v = -1; try { Field name = Game.class.getDeclaredField("numberofTie"); name.setAccessible(true); v = (int) name.get(g);
} catch (Exception x) { fail("exception occurred trying to get this.getNumberofTie"); System.out.println(x); } return v; }
private int getNumberofSucess(Game g, int i) { int v = 0; try { Field[] fields = Game.class.getDeclaredFields(); for (Field f : fields) { Class> t = f.getType(); // System.out.println("field name : " + f.getName() + " , type : " + t); if (t.isArray()) { if ((i == 1) && f.getName().equals("player1Attempt")) { f.setAccessible(true); boolean[] value = boolean[].class.cast(f.get(g)); // System.out.println(Arrays.toString(value)); for (boolean e : value) if (e) v++; // // // System.out.format("%s%n" + " Field: %s%n" // + " Type: %s%n" // + " Component Type: %s%n", // f, f.getName(), t, t.getComponentType()); } if ((i == 2) && f.getName().equals("player2Attempt")) { f.setAccessible(true); boolean[] value = boolean[].class.cast(f.get(g)); // System.out.println(Arrays.toString(value)); for (boolean e : value) if (e) v++; // // // System.out.format("%s%n" + " Field: %s%n" // + " Type: %s%n" // + " Component Type: %s%n", // f, f.getName(), t, t.getComponentType()); } } }
} catch (Exception x) { fail("exception occurred trying to get this.getNumberofSucess"); System.out.println(x); } return v; } @Test public void test_0_0_staticFields() { try { List
int nStatic = 0; for (Field f : fields) { int mod = f.getModifiers(); if (Modifier.isStatic(mod)) { nStatic++; } } assertTrue("there should be three static fields", nStatic == 1); } catch (Exception x) { fail("exception occurred trying to get the fields of this class"); } }
@Test public void test_0_0_NumberofFields() { Field[] allFields = Game.class.getDeclaredFields(); assertEquals(7, allFields.length); }
@Test public void test_1_0() { Game g = new Game(); String expectedP1Name = "Unknown";
String errorMsg = String.format( " Test no-arg constructor failed. Returned player1 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP1Name);
assertTrue(errorMsg, this.getPlayer1Name(g).equals(expectedP1Name));
String expectedstatus = "The game was initialized with unknown players";
String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_1_1() { Game g = new Game(); String expectedP2Name = "Unknown"; String errorMsg = String.format( " Test no-arg constructor failed. Returned player2 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP2Name); assertTrue(errorMsg, this.getPlayer2Name(g).equals(expectedP2Name));
String expectedstatus = "The game was initialized with unknown players";
String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_1_2() { Game g = new Game(); int expectedTienumber = 0; String errorMsg = String.format( " Test no-arg constructor failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber);
}
@Test public void test_1_3() { Game g = new Game(); int expectedNoSucess = 0; String errorMsg = String.format( " Test no-arg constructor failed. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess); }
@Test public void test_1_4() { Game g = new Game(); int expectedNoSucess = 0; String errorMsg = String.format( " Test no-arg constructor failed. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
}
@Test public void test_2_0() { Game g = new Game("", "");
String expectedP1Name = "Unknown";
String errorMsg = String.format( " Test arg constructor failed. Returned player1 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP1Name);
assertTrue(errorMsg, this.getPlayer1Name(g).equals(expectedP1Name));
String expectedstatus = "The game was initialized with player1(Unknown) and player2(Unknown)";
String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_2_1() { Game g = new Game("", "");
String expectedP2Name = "Unknown"; String errorMsg = String.format( " Test arg constructor failed. Returned player2 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP2Name); assertTrue(errorMsg, this.getPlayer2Name(g).equals(expectedP2Name));
String expectedstatus = "The game was initialized with player1(Unknown) and player2(Unknown)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_2_2() { Game g = new Game("", ""); int expectedTienumber = 0; String errorMsg = String.format( " Test arg constructor failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber); }
@Test public void test_2_3() { Game g = new Game("", "");
int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
}
@Test public void test_2_4() { Game g = new Game("", ""); int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
}
@Test public void test_3_0() { Game g = new Game("Mark", "Eric"); String expectedP1Name = "Mark";
String errorMsg = String.format( " Test arg constructor failed. Returned player1 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP1Name);
assertTrue(errorMsg, this.getPlayer1Name(g).equals(expectedP1Name));
String expectedstatus = "The game was initialized with player1(Mark) and player2(Eric)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_3_1() { Game g = new Game("Mark", "Eric"); String expectedP2Name = "Eric"; String errorMsg = String.format( " Test arg constructor failed. Returned player2 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP2Name); assertTrue(errorMsg, this.getPlayer2Name(g).equals(expectedP2Name));
}
@Test public void test_3_2() { Game g = new Game("Emilia", "Zoey");
int expectedTienumber = 0; String errorMsg = String.format( " Test arg constructor failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber);
String expectedstatus = "The game was initialized with player1(Emilia) and player2(Zoey)";
String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_3_3() { Game g = new Game("Eric", "Ellie"); int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
String expectedstatus = "The game was initialized with player1(Eric) and player2(Ellie)";
String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_3_4() { Game g = new Game("Mark", "Eric"); int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
}
@Test public void test_4_0() { Game g = new Game("Ava", "Oliver");
String expectedP1Name = "Ava";
String errorMsg = String.format( " Test arg constructor failed. Returned player1 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP1Name);
assertTrue(errorMsg, this.getPlayer1Name(g).equals(expectedP1Name));
String expectedP2Name = "Oliver"; errorMsg = String.format( " Test arg constructor failed. Returned player2 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP2Name); assertTrue(errorMsg, this.getPlayer2Name(g).equals(expectedP2Name));
g.setPlayer1Name("William"); expectedP1Name = "William"; errorMsg = String.format(" Test setPlayer1Name failed to set player name. player1 name is (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP1Name);
assertTrue(errorMsg, this.getPlayer1Name(g).equals(expectedP1Name));
String expectedstatus = "Player1 name is set"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_4_1() { Game g = new Game("James", "Mia"); String expectedP1Name = "James";
String errorMsg = String.format( " Test arg constructor failed. Returned player1 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP1Name);
assertTrue(errorMsg, this.getPlayer1Name(g).equals(expectedP1Name));
String expectedP2Name = "Mia"; errorMsg = String.format( " Test arg constructor failed. Returned player2 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP2Name); assertTrue(errorMsg, this.getPlayer2Name(g).equals(expectedP2Name));
g.setPlayer2Name("Lucas");
expectedP2Name = "Lucas"; errorMsg = String.format(" Test setPlayer2Name failed to set player name. player2 name is (%s) " + "but correct player name is (%s)", this.getPlayer2Name(g), expectedP2Name);
assertTrue(errorMsg, this.getPlayer2Name(g).equals(expectedP2Name));
String expectedstatus = "Player2 name is set"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_4_3() { Game g = new Game("Jack", "Ethan");
String expectedP1Name = "Jack";
String errorMsg = String.format( " Test getPlayer1Name failed. Returned player1 name (%s) " + "but correct player name is (%s)", this.getPlayer1Name(g), expectedP1Name);
assertTrue(errorMsg, this.getPlayer1Name(g).equals(g.getPlayer1Name()));
String expectedstatus = "The game was initialized with player1(Jack) and player2(Ethan)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s)", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_4_4() { Game g = new Game("Emily", "Aria");
String expectedP2Name = "Aria"; String errorMsg = String.format( " Test getPlayer2Name failed. Returned player2 name (%s) " + "but correct player name is (%s)", this.getPlayer2Name(g), expectedP2Name);
assertTrue(errorMsg, this.getPlayer2Name(g).equals(g.getPlayer2Name()));
}
@Test public void test_5_0() { Game g = new Game("James", "Lucas"); int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d) ", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
g.setPlayer1AttempttoSucess(0); expectedNoSucess = 1; errorMsg = String.format( " Test setPlayer1AttempttoSucess failed to set sucess attempt for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d) ", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
String expectedstatus = "Player1 score attempt number (0)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
g.setPlayer1AttempttoSucess(2); expectedNoSucess = 2; errorMsg = String.format( " Test setPlayer1AttempttoSucess failed to set sucess attempt for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d) ", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
expectedstatus = "Player1 score attempt number (2)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
g.setPlayer1AttempttoSucess(1); expectedNoSucess = 3; errorMsg = String.format( " Test setPlayer1AttempttoSucess failed to set sucess attempt for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
expectedstatus = "Player1 score attempt number (1)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_5_1() { Game g = new Game("James", "Lucas");
int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
g.setPlayer1AttempttoSucess(-1);
String expectedstatus = "The game was initialized with player1(James) and player2(Lucas)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
errorMsg = String.format( " Test setPlayer1AttempttoSucess should not change sucess attempts for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
g.setPlayer1AttempttoSucess(5); errorMsg = String.format( " Test setPlayer1AttempttoSucess should not change sucess attempts for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
expectedstatus = "The game was initialized with player1(James) and player2(Lucas)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
g.setPlayer1AttempttoSucess(1); expectedNoSucess = 1; errorMsg = String.format( " Test setPlayer1AttempttoSucess failed to set sucess attempt for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
expectedstatus = "Player1 score attempt number (1)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_5_2() { Game g = new Game("James", "Lucas");
int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
g.setPlayer2AttempttoSucess(0);
expectedNoSucess = 1; errorMsg = String.format( " Test setPlayer2AttempttoSucess failed to set sucess attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
String expectedstatus = "Player2 score attempt number (0)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
g.setPlayer2AttempttoSucess(2);
expectedNoSucess = 2; errorMsg = String.format( " Test setPlayer2AttempttoSucess failed to set sucess attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
expectedstatus = "Player2 score attempt number (2)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
g.setPlayer2AttempttoSucess(1);
expectedNoSucess = 3; errorMsg = String.format( " Test setPlayer2AttempttoSucess failed to set sucess attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
expectedstatus = "Player2 score attempt number (1)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_5_3() {
Game g = new Game("James", "Lucas");
int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
g.setPlayer2AttempttoSucess(0); g.setPlayer2AttempttoSucess(0); g.setPlayer2AttempttoSucess(0); expectedNoSucess = 1; errorMsg = String.format( " Test setPlayer2AttempttoSucess failed to set sucess attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
g.setPlayer2AttempttoSucess(2); g.setPlayer2AttempttoSucess(2); g.setPlayer2AttempttoSucess(2); g.setPlayer2AttempttoSucess(2);
expectedNoSucess = 2; errorMsg = String.format( " Test setPlayer2AttempttoSucess failed to set sucess attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess); String expectedstatus = "Player2 score attempt number (2)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus));
}
@Test public void test_5_4() { Game g = new Game("Luna", "Lily"); int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess); g.setPlayer1AttempttoSucess(0); g.setPlayer1AttempttoSucess(1); g.setPlayer1AttempttoSucess(2); expectedNoSucess = 3; errorMsg = String.format( " Test setPlayer1AttempttoSucess failed to set sucess attempt for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess);
g.setPlayer1AttempttoFail(0); expectedNoSucess = 2; errorMsg = String.format( " Test setPlayer1AttempttoFail failed to set fail attempt for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess); String expectedstatus = "Player1 fail to score attempt number (0)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); g.setPlayer1AttempttoFail(1); expectedNoSucess = 1; errorMsg = String.format( " Test setPlayer1AttempttoFail failed to set fail attempt for player1. Returned number of successful attemps for player1 (%d) " + "but correct number of successful attemps for player1 is (%d)", getNumberofSucess(g, 1), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 1) == expectedNoSucess); expectedstatus = "Player1 fail to score attempt number (1)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); }
@Test public void test_5_5() { Game g = new Game("Luna", "Lily"); int expectedNoSucess = 0; String errorMsg = String.format( " Test arg constructor failed. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess); g.setPlayer2AttempttoSucess(0); g.setPlayer2AttempttoSucess(1); g.setPlayer2AttempttoSucess(2); expectedNoSucess = 3; errorMsg = String.format( " Test setPlayer2AttempttoSucess failed to set sucess attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess);
g.setPlayer2AttempttoFail(0); String expectedstatus = "Player2 fail to score attempt number (0)"; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); expectedNoSucess = 2; errorMsg = String.format( " Test setPlayer2AttempttoFail failed to set fail attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess); g.setPlayer2AttempttoFail(1); expectedNoSucess = 1; errorMsg = String.format( " Test setPlayer2AttempttoFail failed to set fail attempt for player2. Returned number of successful attemps for player2 (%d) " + "but correct number of successful attemps for player2 is (%d)", getNumberofSucess(g, 2), expectedNoSucess); assertTrue(errorMsg, this.getNumberofSucess(g, 2) == expectedNoSucess); expectedstatus = "Player2 fail to score attempt number (1)"; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); } @Test public void test_6_0() { Game g = new Game("Emma", "Lily"); int expectedNotickets = 0; int actualNotickets = g.getNoofMovieTicket(); String errorMsg = String.format( " Test getNoofMovieTicket failed to calculate number of movie tickets. Returned (%d) " + "but correct number is (%d) ", actualNotickets, expectedNotickets); assertTrue(errorMsg, actualNotickets==expectedNotickets);
int expectedTienumber = 1; errorMsg = String.format( " Test getNumberofTie failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber); String expectedstatus = "The game is tied with no winner. Player1(0)==Pleyer2(0). Reset the game."; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); } @Test public void test_6_1() { Game g = new Game("Emma", "Naomi"); g.setPlayer1AttempttoSucess(0);
int expectedNotickets = 1; int actualNotickets = g.getNoofMovieTicket(); String errorMsg = String.format( " Test getNoofMovieTicket failed to calculate number of movie tickets. Returned (%d) " + "but correct number is (%d) ", actualNotickets, expectedNotickets); assertTrue(errorMsg, actualNotickets==expectedNotickets); int expectedTienumber = 0; errorMsg = String.format( " Test getNumberofTie failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber); String expectedstatus = "Player1 won the game. Player2 should pay (1) movie tickets."; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); } @Test public void test_6_2() { Game g = new Game("Emma", "Naomi"); g.setPlayer1AttempttoSucess(0); g.setPlayer1AttempttoSucess(1);
int expectedNotickets = 2; int actualNotickets = g.getNoofMovieTicket(); String errorMsg = String.format( " Test getNoofMovieTicket failed to calculate number of movie tickets. Returned (%d) " + "but correct number is (%d) ", actualNotickets, expectedNotickets); assertTrue(errorMsg, actualNotickets==expectedNotickets); int expectedTienumber = 0; errorMsg = String.format( " Test getNumberofTie failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber); String expectedstatus = "Player1 won the game. Player2 should pay (2) movie tickets."; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); } @Test public void test_6_3() { Game g = new Game("Emma", "Naomi"); g.setPlayer1AttempttoSucess(0); g.setPlayer1AttempttoSucess(1); g.setPlayer1AttempttoSucess(2);
int expectedNotickets = 3; int actualNotickets = g.getNoofMovieTicket(); String errorMsg = String.format( " Test getNoofMovieTicket failed to calculate number of movie tickets. Returned (%d) " + "but correct number is (%d) ", actualNotickets, expectedNotickets); assertTrue(errorMsg, actualNotickets==expectedNotickets); int expectedTienumber = 0; errorMsg = String.format( " Test getNumberofTie failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber); String expectedstatus = "Player1 won the game. Player2 should pay (3) movie tickets."; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); } @Test public void test_6_4() { Game g = new Game("Emma", "Naomi"); g.setPlayer1AttempttoSucess(0); g.setPlayer1AttempttoSucess(1); g.setPlayer1AttempttoSucess(2); g.setPlayer2AttempttoSucess(0); g.setPlayer2AttempttoSucess(1); g.setPlayer2AttempttoFail(2); int expectedNotickets = 1; String errorMsg = String.format( " Test getNoofMovieTicket failed to calculate number of movie tickets. Returned (%d) " + "but correct number is (%d) ", g.getNoofMovieTicket(), expectedNotickets); assertTrue(errorMsg, g.getNoofMovieTicket()==expectedNotickets); String expectedstatus = "Player1 won the game. Player2 should pay (1) movie tickets."; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); } @Test public void test_6_5() { Game g = new Game("Emma", "Naomi"); g.setPlayer1AttempttoSucess(0); g.setPlayer1AttempttoFail(1); g.setPlayer1AttempttoSucess(2); g.setPlayer2AttempttoSucess(0); g.setPlayer2AttempttoSucess(1); g.setPlayer2AttempttoFail(2); int expectedNotickets = 0; int actualNotickets = g.getNoofMovieTicket(); String errorMsg = String.format( " Test getNoofMovieTicket failed to calculate number of movie tickets. Returned (%d) " + "but correct number is (%d) ", actualNotickets, expectedNotickets); assertTrue(errorMsg, actualNotickets==expectedNotickets); String expectedstatus = "The game is tied with no winner. Player1(2)==Pleyer2(2). Reset the game."; String errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); int expectedTienumber = 1; errorMsg = String.format( " Test getNumberofTie failed. Returned numberofTie (%d) " + "but correct numberofTie is (%d)", this.getNumberofTie(g), expectedTienumber);
assertTrue(errorMsg, this.getNumberofTie(g) == expectedTienumber); g.setPlayer1AttempttoSucess(0); g.setPlayer1AttempttoFail(1); g.setPlayer1AttempttoFail(2); g.setPlayer2AttempttoSucess(0); g.setPlayer2AttempttoSucess(1); g.setPlayer2AttempttoSucess(2); expectedNotickets = 3; actualNotickets = g.getNoofMovieTicket(); errorMsg = String.format( " Test getNoofMovieTicket failed to calculate number of movie tickets. Returned (%d) " + "but correct number is (%d) ", actualNotickets, expectedNotickets); assertTrue(errorMsg, actualNotickets==expectedNotickets); expectedstatus = "Player2 won the game. Player1 should pay (3) movie tickets."; errorstatusMsg = String.format( " Test Game status failed. Returned status Msg (%s) " + "but correct Msg is (%s) ", this.getGameStatus(g), expectedstatus); assertTrue(errorstatusMsg, this.getGameStatus(g).equals(expectedstatus)); } }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
