Commit e223a77

mo khan <mo@mokhan.ca>
2019-08-05 18:56:13
start to print the grid
1 parent b80955c
src/Q9/MovingRobot.java
@@ -45,6 +45,24 @@ public class MovingRobot extends Robot {
     return r1.getX() == r2.getX() && r1.getY() == r2.getY();
   }
 
+  public static String printGrid(Robot x, Robot y) {
+    String grid = "";
+    int row = 0;
+
+    for (int column = 0; column < 10; column++) {
+      if (x.getX() == row && x.getY() == column) {
+        grid += "|X";
+      } else if (y.getX() == row && y.getY() == column) {
+        grid += "|Y";
+      } else {
+        grid += "| ";
+      }
+    }
+    grid += "|\n";
+
+    return grid;
+  }
+
   public String printMoves() {
     ArrayList<String> printableMoves = new ArrayList<String>();
     for (Integer move : this.moves) printableMoves.add(String.valueOf(move));
@@ -139,6 +157,8 @@ public class MovingRobot extends Robot {
 
       System.out.println(
           String.format("R1 (%d, %d), R2 (%d, %d)", r1.getX(), r1.getY(), r2.getX(), r2.getY()));
+
+      System.out.println(MovingRobot.printGrid(r1, r2));
     }
 
     System.out.println(String.format("Collision at: (%d, %d)", r1.getX(), r1.getY()));
src/Q9/MovingRobotTest.java
@@ -143,4 +143,17 @@ public class MovingRobotTest extends TestCase {
     subject.move(Robot.RIGHT);
     assertEquals(String.format("%d,%d", Robot.RIGHT, Robot.RIGHT), subject.printMoves());
   }
+
+  public void test_printGrid() {
+    Robot r1 = new MovingRobot(0, 0);
+    Robot r2 = new MovingRobot(9, 9);
+
+    String expected = "|X| | | | | | | | | |\n";
+    String result = MovingRobot.printGrid(r1, r2);
+
+    System.out.println(expected);
+    System.out.println(result);
+
+    assertEquals(expected, result);
+  }
 }