diff --git a/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java b/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java index 85fd011dc02..1e587b995b1 100644 --- a/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java +++ b/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java @@ -619,6 +619,13 @@ public class TestPlayer implements Player { wasProccessed = true; } + // check damage: card name, damage + if (params[0].equals(CHECK_COMMAND_DAMAGE) && params.length == 3) { + assertDamage(action, game, computerPlayer, params[1], Integer.parseInt(params[2])); + actions.remove(action); + wasProccessed = true; + } + // check life: life if (params[0].equals(CHECK_COMMAND_LIFE) && params.length == 2) { assertLife(action, game, computerPlayer, Integer.parseInt(params[1])); @@ -930,6 +937,12 @@ public class TestPlayer implements Player { Toughness, perm.getToughness().getValue()); } + private void assertDamage(PlayerAction action, Game game, Player player, String permanentName, int damage) { + Permanent perm = findPermanentWithAssert(action, game, player, permanentName); + + Assert.assertEquals(action.getActionName() + " - permanent " + permanentName + " have wrong damage: " + perm.getDamage() + " <> " + damage, damage, perm.getDamage()); + } + private void assertLife(PlayerAction action, Game game, Player player, int Life) { Assert.assertEquals(action.getActionName() + " - " + player.getName() + " have wrong life: " + player.getLife() + " <> " + Life, Life, player.getLife()); diff --git a/Mage.Tests/src/test/java/org/mage/test/serverside/base/impl/CardTestPlayerAPIImpl.java b/Mage.Tests/src/test/java/org/mage/test/serverside/base/impl/CardTestPlayerAPIImpl.java index b7ccdb1bfc6..55863694081 100644 --- a/Mage.Tests/src/test/java/org/mage/test/serverside/base/impl/CardTestPlayerAPIImpl.java +++ b/Mage.Tests/src/test/java/org/mage/test/serverside/base/impl/CardTestPlayerAPIImpl.java @@ -52,6 +52,7 @@ public abstract class CardTestPlayerAPIImpl extends MageTestPlayerBase implement // TODO: add target player param to commands public static final String CHECK_COMMAND_PT = "PT"; + public static final String CHECK_COMMAND_DAMAGE = "DAMAGE"; public static final String CHECK_COMMAND_LIFE = "LIFE"; public static final String CHECK_COMMAND_ABILITY = "ABILITY"; public static final String CHECK_COMMAND_PERMANENT_COUNT = "PERMANENT_COUNT"; @@ -297,6 +298,11 @@ public abstract class CardTestPlayerAPIImpl extends MageTestPlayerBase implement check(checkName, turnNum, step, player, CHECK_COMMAND_PT, permanentName, power.toString(), toughness.toString()); } + public void checkDamage(String checkName, int turnNum, PhaseStep step, TestPlayer player, String permanentName, Integer damage) { + //Assert.assertNotEquals("", permanentName); + check(checkName, turnNum, step, player, CHECK_COMMAND_DAMAGE, permanentName, damage.toString()); + } + public void checkLife(String checkName, int turnNum, PhaseStep step, TestPlayer player, Integer life) { check(checkName, turnNum, step, player, CHECK_COMMAND_LIFE, life.toString()); } @@ -1251,7 +1257,7 @@ public abstract class CardTestPlayerAPIImpl extends MageTestPlayerBase implement if (!player.getActions().isEmpty()) { System.out.println("Remaining actions for " + player.getName() + " (" + player.getActions().size() + "):"); player.getActions().stream().forEach(a -> { - System.out.println("* turn " + a.getTurnNum() + " - " + a.getStep() + ": " + a.getActionName()); + System.out.println("* turn " + a.getTurnNum() + " - " + a.getStep() + ": " + (a.getActionName().isEmpty() ? a.getAction() : a.getActionName())); }); Assert.fail("Player " + player.getName() + " must have 0 actions but found " + player.getActions().size()); }