From 94ccf2ae9611c671021c209e65113572c7c62dc2 Mon Sep 17 00:00:00 2001 From: Hang <thi-hang.NGUYEN@etu.univ-amu.fr> Date: Fri, 18 Nov 2022 22:34:57 +0100 Subject: [PATCH] THN 22h34 18/11/2022 --- app/src/main/java/model/CellGridIterator.java | 6 +- app/src/main/java/model/ComputerPlayer.java | 8 +-- .../java/model/DistinctColorGenerator.java | 12 ---- app/src/main/java/model/FloodGame.java | 2 +- app/src/main/java/model/GrayCell.java | 6 +- .../java/model/UniformColorGenerator.java | 2 +- .../java/model/UniformExceptOneGenerator.java | 4 +- app/src/test/java/model/FlooderTest.java | 57 +++++++++++++++++++ 8 files changed, 71 insertions(+), 26 deletions(-) create mode 100644 app/src/test/java/model/FlooderTest.java diff --git a/app/src/main/java/model/CellGridIterator.java b/app/src/main/java/model/CellGridIterator.java index ffebf05..0be1b59 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 0e0a4dd..662b51a 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 4c9c488..393e455 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 7a93e1c..cd86759 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 830724a..e762466 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 12a2efd..c274dbf 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 e641dcc..054545f 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 0000000..2c1191f --- /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); + } + +} -- GitLab