diff --git a/app/src/main/java/model/CellGridIterator.java b/app/src/main/java/model/CellGridIterator.java index ffebf05410a15beaf8c76fdd926be065cecb77a6..0be1b594967559d911c955bd1b39234864357231 100644 --- a/app/src/main/java/model/CellGridIterator.java +++ b/app/src/main/java/model/CellGridIterator.java @@ -3,9 +3,9 @@ package model; import java.util.Iterator; public class CellGridIterator implements Iterator<Cell> { - ArrayGrid grid; - int indixRow; - int indixColum; + public ArrayGrid grid; + public int indixRow; + public int indixColum; public CellGridIterator(ArrayGrid grid) { this.grid = grid; diff --git a/app/src/main/java/model/ComputerPlayer.java b/app/src/main/java/model/ComputerPlayer.java index 0e0a4dd65195c58aca1b7a67e5fd7de343faf203..662b51a187eb18e0640937d5c5a3d93c924ff2fb 100644 --- a/app/src/main/java/model/ComputerPlayer.java +++ b/app/src/main/java/model/ComputerPlayer.java @@ -44,10 +44,10 @@ public class ComputerPlayer implements Player{ public Color play(){ return this.strategi.play(this.getStartCell());// Color.RED; } -// public Color setStrategy(PlayStrategy strategy){ -// this.strategi=strategy; -// return this.play(); -// } + public Color setStrategy(PlayStrategy strategy){ + this.strategi=strategy; + return this.play(); + } public void setStartCell(Cell start){ this.cellStart=start; } diff --git a/app/src/main/java/model/DistinctColorGenerator.java b/app/src/main/java/model/DistinctColorGenerator.java index 4c9c488ee068b3b37b6d9eeb370fcd4964badc5e..393e455564019053f4041c846a61bb476bfc7c81 100644 --- a/app/src/main/java/model/DistinctColorGenerator.java +++ b/app/src/main/java/model/DistinctColorGenerator.java @@ -17,11 +17,8 @@ public class DistinctColorGenerator implements ColorGenerator { List<Cell> neighbors = cell.getNeighbours(); - //System.out.println(neighbors.size()); - List<Color> neighbor_colors = new ArrayList<Color>(); - for (Cell c : neighbors) { neighbor_colors.add(c.getColor()); } @@ -30,15 +27,6 @@ public class DistinctColorGenerator implements ColorGenerator { if (neighbor_colors.contains(colors.get(i)) == false){ return colors.get(i); } -// int j = 0; -// for (; j < neighbor_colors.size(); j++) { -// if (colors.get(i).equals(neighbor_colors.get(j)) == true) -// break;//if (!(neighbor_colors.contains(colors.get(i)))){ -// } -// -// if(j == neighbor_colors.size()){ -// return colors.get(i); -// } } return defaultColor; diff --git a/app/src/main/java/model/FloodGame.java b/app/src/main/java/model/FloodGame.java index 7a93e1c8979147bc7a48c6f680f53a01afe0d178..cd86759906c7730e594c16f9c1e2f945f95ede01 100644 --- a/app/src/main/java/model/FloodGame.java +++ b/app/src/main/java/model/FloodGame.java @@ -62,7 +62,7 @@ public class FloodGame { public boolean hasEnded(){ // TODO - return (this.getTurn()>=25 || hasWon(player)); + return (this.getTurn()>=100 || hasWon(player)); } } diff --git a/app/src/main/java/model/GrayCell.java b/app/src/main/java/model/GrayCell.java index 830724a17e039797910444a406b0a985de1a6d57..e76246683a51012d7dc29d023c7a9908fb74f9ac 100644 --- a/app/src/main/java/model/GrayCell.java +++ b/app/src/main/java/model/GrayCell.java @@ -9,9 +9,9 @@ import java.util.List; public class GrayCell extends AbstractCell{ - Cell[][] cells; - int nberOfRows; - int nberOfColums; + public Cell[][] cells; + public int nberOfRows; + public int nberOfColums; List<Cell> neighbours; public GrayCell(Cell[][] cells, int rows, int colums){ diff --git a/app/src/main/java/model/UniformColorGenerator.java b/app/src/main/java/model/UniformColorGenerator.java index 12a2efd3c705a333c73e227cfda289b66ebdfb45..c274dbfb330149c3db0b62dcfd0ffe13776a4cdb 100644 --- a/app/src/main/java/model/UniformColorGenerator.java +++ b/app/src/main/java/model/UniformColorGenerator.java @@ -3,7 +3,7 @@ package model; import javafx.scene.paint.Color; public class UniformColorGenerator implements ColorGenerator{ - Color color; + public Color color; public UniformColorGenerator(Color color){ this.color=color; } diff --git a/app/src/main/java/model/UniformExceptOneGenerator.java b/app/src/main/java/model/UniformExceptOneGenerator.java index e641dcc742cf6aab842abd2af842876e70cdf16c..054545fd7a0ea1981c5554e56b8e51a551807c7e 100644 --- a/app/src/main/java/model/UniformExceptOneGenerator.java +++ b/app/src/main/java/model/UniformExceptOneGenerator.java @@ -3,8 +3,8 @@ package model; import javafx.scene.paint.Color; public class UniformExceptOneGenerator implements ColorGenerator{ - Color uniformColor; - Color exceptionColor; + public Color uniformColor; + public Color exceptionColor; public UniformExceptOneGenerator(Color uniformColor, Color exceptionColor){ this.uniformColor=uniformColor; this.exceptionColor=exceptionColor; diff --git a/app/src/test/java/model/FlooderTest.java b/app/src/test/java/model/FlooderTest.java new file mode 100644 index 0000000000000000000000000000000000000000..2c1191f11f62913e951bf502622544c1a3c2333b --- /dev/null +++ b/app/src/test/java/model/FlooderTest.java @@ -0,0 +1,57 @@ +package model; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.api.Assertions.*; + +import java.util.ArrayList; +import java.util.List; + +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + +import javafx.scene.paint.Color; + +class FlooderTest { + + /* + * +---+---+---+ + * | R | B | R | + * +---+---+---| + * | R | R | B | + * |---+---+---+ + * | B | B | R | + * +---+---+---+ + */ + private static ArrayGrid gridThreeThree = new ArrayGrid(3,3); + + @BeforeAll + private static void initializeColorsGrid33(){ + gridThreeThree.getCell(0,0).setColor(Color.RED); + gridThreeThree.getCell(0,1).setColor(Color.BLACK); + gridThreeThree.getCell(0,2).setColor(Color.RED); + gridThreeThree.getCell(1,0).setColor(Color.RED); + gridThreeThree.getCell(1,1).setColor(Color.RED); + gridThreeThree.getCell(1,2).setColor(Color.BLACK); + gridThreeThree.getCell(2,0).setColor(Color.BLACK); + gridThreeThree.getCell(2,1).setColor(Color.BLACK); + gridThreeThree.getCell(2,2).setColor(Color.RED); + + } + + @Test + void testcoloredArea() { + + int area1 = Flooder.coloredArea(gridThreeThree.getCell(0,0)); + int area2 = Flooder.coloredArea(gridThreeThree.getCell(2,0)); + assertEquals(area1, 7); + assertEquals(area2, 7); + } + + @Test + void testFlood() { + Flooder.flood(gridThreeThree.getCell(0, 0), Color.BLACK); + int area = Flooder.coloredArea(gridThreeThree.getCell(0,0)); + assertThat(area == 3); + } + +}