From 525ca9a1a226868db220063173b6c811f067262f Mon Sep 17 00:00:00 2001 From: Oleg Agafonov Date: Wed, 13 Dec 2023 20:30:25 +0400 Subject: [PATCH] tests: fixed random fails due wrong mana usage --- .../mage/test/serverside/TokenImagesTest.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/Mage.Tests/src/test/java/org/mage/test/serverside/TokenImagesTest.java b/Mage.Tests/src/test/java/org/mage/test/serverside/TokenImagesTest.java index c681d15b033..851a17c7271 100644 --- a/Mage.Tests/src/test/java/org/mage/test/serverside/TokenImagesTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/serverside/TokenImagesTest.java @@ -612,7 +612,9 @@ public class TokenImagesTest extends CardTestPlayerBase { assert_SacredCat(3 + 5 + 1, "AKH=3", "AKR=5", "MB1=1"); } - @Test + @Test // it's ok for fail in 1 of 50 + // TODO: implement mock or test command to setup "random" images in TokenImpl.generateTokenInfo + // (see setFlipCoinResult and setDieRollResult), so no needs in big amout public void test_Abilities_Incubator_MustTransformWithSameSettings() { // bug with miss image data in tranformed incubator token: https://github.com/magefree/mage/issues/11535 @@ -629,11 +631,19 @@ public class TokenImagesTest extends CardTestPlayerBase { addCard(Zone.BATTLEFIELD, playerA, "Plains", 2 * needIncubatorTokens); // for transform // prepare incubator tokens - activate_Inner(needIncubatorTokens, "Cast Sculpted Perfection"); + IntStream.range(0, needIncubatorTokens).forEach(x -> { + activateManaAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Add {W}", 3); + activateManaAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Add {B}", 1); + activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Cast Sculpted Perfection"); + waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN); + }); // transform tokens to Phyrexian - activate_Inner(needPhyrexianTokens, "{2}: Transform"); - + IntStream.range(0, needPhyrexianTokens).forEach(x -> { + activateManaAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{T}: Add {W}", 2); + activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "{2}: Transform"); + waitStackResolved(1, PhaseStep.PRECOMBAT_MAIN); + }); setStrictChooseMode(true); setStopAt(1, PhaseStep.BEGIN_COMBAT);