From 16797e67cd84425851ead72ef4087f0913ba6370 Mon Sep 17 00:00:00 2001 From: Agetian Date: Wed, 1 May 2019 12:32:06 +0300 Subject: [PATCH 1/4] - Added a test for Awakening of Vitu-Ghazi + Cytoshape. --- .../ai/simulation/GameSimulatorTest.java | 36 ++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java index 45ffc0bdce1..948fce27374 100644 --- a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java +++ b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java @@ -1829,7 +1829,6 @@ public class GameSimulatorTest extends SimulationTestCase { assertTrue(discardAfterRevert != null && discardAfterRevert.getApi() == ApiType.Discard); } - public void testSparkDoubleAndGideon() { Game game = initAndCreateGame(); Player p = game.getPlayers().get(0); @@ -1859,6 +1858,41 @@ public class GameSimulatorTest extends SimulationTestCase { assert(simSpark.getCounters(CounterType.LOYALTY) == 5); } + public void testVituGhaziAndCytoshape() { + Game game = initAndCreateGame(); + Player p = game.getPlayers().get(0); + game.getPhaseHandler().devModeSet(PhaseType.MAIN1, p); + + for (int i=0; i<7; i++) { addCardToZone("Plains", p, ZoneType.Battlefield); } + for (int i=0; i<7; i++) { addCardToZone("Island", p, ZoneType.Battlefield); } + for (int i=0; i<7; i++) { addCardToZone("Forest", p, ZoneType.Battlefield); } + + Card tgtLand = addCardToZone("Wastes", p, ZoneType.Battlefield); + + Card vituGhazi = addCardToZone("Awakening of Vitu-Ghazi", p, ZoneType.Hand); + Card cytoshape = addCardToZone("Cytoshape", p, ZoneType.Hand); + Card goblin = addCardToZone("Raging Goblin", p, ZoneType.Battlefield); + + SpellAbility vituSA = vituGhazi.getFirstSpellAbility(); + vituSA.getTargets().add(tgtLand); + + SpellAbility cytoSA = cytoshape.getFirstSpellAbility(); + cytoSA.getTargets().add(tgtLand); + + game.getPhaseHandler().devModeSet(PhaseType.MAIN1, p); + game.getAction().checkStateEffects(true); + + GameSimulator sim = createSimulator(game, p); + sim.simulateSpellAbility(vituSA); + sim.simulateSpellAbility(cytoSA); + + Card awakened = findCardWithName(sim.getSimulatedGameState(), "Vitu-Ghazi"); + + assert(awakened != null); + assert(awakened.getName().equals("Vitu-Ghazi")); + assert(awakened.getCounters(CounterType.P1P1) == 9); + assert(awakened.hasKeyword(Keyword.HASTE)); + } @SuppressWarnings("unused") public void broken_testCloneDimir() { From 7ae287b880d8adabde57c7db3e1608bb02d08b92 Mon Sep 17 00:00:00 2001 From: Agetian Date: Wed, 1 May 2019 12:34:17 +0300 Subject: [PATCH 2/4] - Removed a couple duplicate lines. --- .../src/test/java/forge/ai/simulation/GameSimulatorTest.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java index 948fce27374..991e3d70a44 100644 --- a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java +++ b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java @@ -1843,7 +1843,6 @@ public class GameSimulatorTest extends SimulationTestCase { SpellAbility gideonSA = gideon.getFirstSpellAbility(); SpellAbility sparkDoubleSA = sparkDouble.getFirstSpellAbility(); - game.getPhaseHandler().devModeSet(PhaseType.MAIN1, p); game.getAction().checkStateEffects(true); GameSimulator sim = createSimulator(game, p); @@ -1879,7 +1878,6 @@ public class GameSimulatorTest extends SimulationTestCase { SpellAbility cytoSA = cytoshape.getFirstSpellAbility(); cytoSA.getTargets().add(tgtLand); - game.getPhaseHandler().devModeSet(PhaseType.MAIN1, p); game.getAction().checkStateEffects(true); GameSimulator sim = createSimulator(game, p); From 2447df4dde5788514f8c540ed399b755215952f2 Mon Sep 17 00:00:00 2001 From: Agetian Date: Wed, 1 May 2019 12:35:41 +0300 Subject: [PATCH 3/4] - Some more superfluous lines removed. --- .../src/test/java/forge/ai/simulation/GameSimulatorTest.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java index 991e3d70a44..308ec66b357 100644 --- a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java +++ b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java @@ -1843,8 +1843,6 @@ public class GameSimulatorTest extends SimulationTestCase { SpellAbility gideonSA = gideon.getFirstSpellAbility(); SpellAbility sparkDoubleSA = sparkDouble.getFirstSpellAbility(); - game.getAction().checkStateEffects(true); - GameSimulator sim = createSimulator(game, p); sim.simulateSpellAbility(gideonSA); sim.simulateSpellAbility(sparkDoubleSA); @@ -1878,8 +1876,6 @@ public class GameSimulatorTest extends SimulationTestCase { SpellAbility cytoSA = cytoshape.getFirstSpellAbility(); cytoSA.getTargets().add(tgtLand); - game.getAction().checkStateEffects(true); - GameSimulator sim = createSimulator(game, p); sim.simulateSpellAbility(vituSA); sim.simulateSpellAbility(cytoSA); From fd3deec51f5d48dfa3cb3f23f04d4efc22dea47d Mon Sep 17 00:00:00 2001 From: Agetian Date: Wed, 1 May 2019 12:41:15 +0300 Subject: [PATCH 4/4] - Test for the Goblin type. - Change assert to assertTrue for style similarity. --- .../forge/ai/simulation/GameSimulatorTest.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java index 308ec66b357..b521cd68f12 100644 --- a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java +++ b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java @@ -1849,10 +1849,10 @@ public class GameSimulatorTest extends SimulationTestCase { Card simSpark = (Card)sim.getGameCopier().find(sparkDouble); - assert(simSpark != null); - assert(simSpark.getZone().is(ZoneType.Battlefield)); - assert(simSpark.getCounters(CounterType.P1P1) == 1); - assert(simSpark.getCounters(CounterType.LOYALTY) == 5); + assertTrue(simSpark != null); + assertTrue(simSpark.getZone().is(ZoneType.Battlefield)); + assertTrue(simSpark.getCounters(CounterType.P1P1) == 1); + assertTrue(simSpark.getCounters(CounterType.LOYALTY) == 5); } public void testVituGhaziAndCytoshape() { @@ -1882,10 +1882,11 @@ public class GameSimulatorTest extends SimulationTestCase { Card awakened = findCardWithName(sim.getSimulatedGameState(), "Vitu-Ghazi"); - assert(awakened != null); - assert(awakened.getName().equals("Vitu-Ghazi")); - assert(awakened.getCounters(CounterType.P1P1) == 9); - assert(awakened.hasKeyword(Keyword.HASTE)); + assertTrue(awakened != null); + assertTrue(awakened.getName().equals("Vitu-Ghazi")); + assertTrue(awakened.getCounters(CounterType.P1P1) == 9); + assertTrue(awakened.hasKeyword(Keyword.HASTE)); + assertTrue(awakened.getType().hasSubtype("Goblin")); } @SuppressWarnings("unused")