Commit 84aa2075 authored by Chandana Maturi's avatar Chandana Maturi
Browse files

unit testing Passed successfully

parent 70984618
Pipeline #1611 failed with stages
in 0 seconds
......@@ -107,13 +107,16 @@ public class DotsAndBoxesGrid {
* @return true if all four sides have been drawn.
*/
public boolean boxComplete(int x, int y) {
System.out.println(x +" , "+ y);
if (x >= width - 1 || x < 0 || y >= height - 1 || y < 0) {
return false;
}
else if (this.horizontals[x][y] && this.verticals[x][y]) {
// A box is complete if the north and south horizontals and the east and west verticals have all been drawn.
return true;
}
// A box is complete if the north and south horizontals and the east and west verticals have all been drawn.
// FIXME: You'll need to fix this code (after writing a test first).
return true;
return false;
}
/** Tries to claim a box for a player. If the box is complete, sets the ownership and returns true. */
......@@ -139,10 +142,11 @@ public class DotsAndBoxesGrid {
if (y >= height || y < 0) {
throw new IndexOutOfBoundsException(String.format("y was %d, which is out of range. Range is 0 to %d", y, height));
}
// FIXME: You need to throw an exception if the line was already drawn.
this.horizontals[x][y] = true;
if (this.horizontals[x][y]) {
throw new IllegalStateException(String.format("this line has already been selected"));
} else {
this.horizontals[x][y] = true;
}
// Try to claim the north or south boxes
boolean claimN = claimBox(x, y-1, player);
......@@ -170,10 +174,12 @@ public class DotsAndBoxesGrid {
if (y >= height - 1 || y < 0) {
throw new IndexOutOfBoundsException(String.format("y was %d, which is out of range. Range is 0 to %d", y, height - 1));
}
if (this.verticals[x][y]) {
throw new IllegalStateException(String.format("this line has already been selected"));
} else {
this.verticals[x][y] = true;
}
// You need to throw an exception if the line was already drawn.
this.verticals[x][y] = true;
// Try to claim the north or south boxes
boolean claimE = claimBox(x, y, player);
boolean claimW = claimBox(x-1, y, player);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment