@Test public void shouldDoNothingWhenTwoPlayersMoveTowardsEachOtherWhenBadY() { givenFl("☼☼☼☼☼" + "☼☻ ☼" + "☼ ☼" + "☼☺ ☼" + "☼☼☼☼☼"); joystick1.act(1, 1); joystick1.right(); joystick2.act(1, 3); joystick2.right(); game.tick(); assertE("☼☼☼☼☼" + "☼☻☻ ☼" + "☼ ☼" + "☼☺☺ ☼" + "☼☼☼☼☼"); }
@Test public void shouldCaptureManyEnemies() { // given givenFl("☼☼☼☼☼" + "☼ ☻☼" + "☼ ☼" + "☼☺ ☼" + "☼☼☼☼☼"); joystick2.act(3, 3); joystick2.down(); game.tick(); joystick2.act(3, 2); joystick2.down(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☻☼" + "☼ ☻☼" + "☼☺ ☻☼" + "☼☼☼☼☼"); // when joystick2.act(3, 3); joystick2.left(); joystick1.act(1, 1); joystick1.right(); game.tick(); // then assertE("☼☼☼☼☼" + "☼ ☻☻☼" + "☼ ☺☼" + "☼☺☺☺☼" + "☼☼☼☼☼"); }
@Test public void shouldAnnigilateWhenTwoPlayersMoveTowardsEachOther() { givenFl("☼☼☼☼☼" + "☼ ☼" + "☼ ☻☼" + "☼☺ ☼" + "☼☼☼☼☼"); joystick1.act(1, 1); joystick1.right(); joystick2.act(3, 2); joystick2.left(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☼" + "☼ ☻☻☼" + "☼☺☺ ☼" + "☼☼☼☼☼"); }
@Test public void shouldSplitLeftAndRight() { givenFl("☼☼☼☼☼" + "☼ ☼" + "☼ ☺ ☼" + "☼ ☼" + "☼☼☼☼☼"); joystick1.act(2, 2); joystick1.left(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☼" + "☼☺☺ ☼" + "☼ ☼" + "☼☼☼☼☼"); joystick1.act(2, 2); joystick1.right(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☼" + "☼☺☺☺☼" + "☼ ☼" + "☼☼☼☼☼"); }
@Test public void shouldHitTheHero() { givenFl("☼☼☼☼☼" + "☼ ☼" + "☼ ☺ ☼" + "☼ ☼" + "☼☼☼☼☼"); joystick1.act(2, 2); joystick1.left(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☼" + "☼☺☺ ☼" + "☼ ☼" + "☼☼☼☼☼"); joystick1.act(1, 2); joystick1.right(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☼" + "☼☺☺ ☼" + "☼ ☼" + "☼☼☼☼☼"); assertEquals(2, player1.heroes.size()); }
@Test public void shouldKillWhenPlayerMoveTowardsStanding() { // given givenFl("☼☼☼☼☼" + "☼ ☻☼" + "☼ ☼" + "☼☺ ☼" + "☼☼☼☼☼"); joystick2.act(3, 3); joystick2.down(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☻☼" + "☼ ☻☼" + "☼☺ ☼" + "☼☼☼☼☼"); // when joystick1.act(1, 1); joystick1.right(); game.tick(); // then assertE("☼☼☼☼☼" + "☼ ☻☼" + "☼ ☺☼" + "☼☺☺ ☼" + "☼☼☼☼☼"); }
@Test public void shouldNotPickEmptyField() { givenFl("☼☼☼☼☼" + "☼ ☼" + "☼ ☺ ☼" + "☼ ☼" + "☼☼☼☼☼"); joystick1.act(1, 1); joystick1.up(); game.tick(); joystick1.down(); game.tick(); joystick1.left(); game.tick(); joystick1.right(); game.tick(); assertE("☼☼☼☼☼" + "☼ ☼" + "☼ ☺ ☼" + "☼ ☼" + "☼☼☼☼☼"); }