From 7bccd77c4eba78ba9e552ca64df08a81eef322e8 Mon Sep 17 00:00:00 2001 From: dragapsy <elghaoutiayman20@gmail.com> Date: Fri, 18 Nov 2022 22:22:47 +0100 Subject: [PATCH] =?UTF-8?q?Tache=205=20(La=20methode=20next()=20de=20la=20?= =?UTF-8?q?classe=20ColoredCellIterator)=20-Test=20pass=C3=A9=20avec=20suc?= =?UTF-8?q?c=C3=A9s-.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/model/ColoredCellIterator.java | 14 +++++++++++--- app/src/main/java/model/GrayCell.java | 5 +++++ .../test/java/model/ColoredCellIteratorTest.java | 14 ++++++++++---- 3 files changed, 26 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/model/ColoredCellIterator.java b/app/src/main/java/model/ColoredCellIterator.java index 12679d2..558bb64 100644 --- a/app/src/main/java/model/ColoredCellIterator.java +++ b/app/src/main/java/model/ColoredCellIterator.java @@ -1,6 +1,7 @@ package model; import javafx.scene.paint.Color; +import util.SetUtil; import java.awt.*; import java.util.HashSet; @@ -26,11 +27,18 @@ public class ColoredCellIterator implements Iterator<Cell> { @Override public boolean hasNext() { boolean expression=!(this.pendingCells.isEmpty()); - return expression; + return expression; } @Override public Cell next() { - return null; - } + Cell Cell = SetUtil.anyElement(this.pendingCells); + this.pendingCells.remove(Cell); + this.visitedCells.add(Cell); + for (Cell neighbour : Cell.getNeighbours()){ + if (Cell.getColor() == neighbour.getColor() && !(this.visitedCells.contains(neighbour))){ + this.pendingCells.add(neighbour); + } + } + return Cell; } } diff --git a/app/src/main/java/model/GrayCell.java b/app/src/main/java/model/GrayCell.java index 8007887..80d9a70 100644 --- a/app/src/main/java/model/GrayCell.java +++ b/app/src/main/java/model/GrayCell.java @@ -3,6 +3,7 @@ package model; import javafx.beans.property.Property; import javafx.scene.paint.Color; +import java.util.Iterator; import java.util.List; public class GrayCell extends AbstractCell{ @@ -27,7 +28,11 @@ public class GrayCell extends AbstractCell{ */ @Override public void setNeighbours(List<Cell> cells) { + } + @Override + public Iterator<Cell> iterator() { + return null; } @Override diff --git a/app/src/test/java/model/ColoredCellIteratorTest.java b/app/src/test/java/model/ColoredCellIteratorTest.java index 4e55550..67a4966 100644 --- a/app/src/test/java/model/ColoredCellIteratorTest.java +++ b/app/src/test/java/model/ColoredCellIteratorTest.java @@ -11,8 +11,6 @@ import static org.assertj.core.api.Assertions.assertThat; class ColoredCellIteratorTest { - // TODO - // uncomment /* * +---+---+---+ * | R | B | R | @@ -23,7 +21,15 @@ class ColoredCellIteratorTest { * +---+---+---+ */ - /* private static ArrayGrid gridThreeThree = new ArrayGrid(3,3); + private static ArrayGrid gridThreeThree; + + static { + try { + gridThreeThree = new ArrayGrid(3,3); + } catch (Exception e) { + throw new RuntimeException(e); + } + } @BeforeAll private static void initializeColorsGrid(){ @@ -56,5 +62,5 @@ class ColoredCellIteratorTest { assertThat(fromIteratorCells).hasSameElementsAs(expectedBlackCells).hasSameSizeAs(expectedBlackCells); } - */ + } \ No newline at end of file -- GitLab