Class GeomancyTests
java.lang.Object
com.pixelmonmod.pixelmon.api.test.impl.move.GeomancyTests
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic CompletableFuture<TestResult> Check that if the user uses Geomancy with a Power Herb and then is Encored into using Geomancy again, the second use of Geomancy correctly goes through the two-turn version (charging first, then boosting).static CompletableFuture<TestResult> Check that if the user is forced to switch out while charging Geomancy, the move fails to apply boosts on the next turn.static CompletableFuture<TestResult> Check that if the user is already Taunted before selecting Geomancy, the move fails to start (no charge).static CompletableFuture<TestResult> Check that if the user is Taunted while charging Geomancy, the move fails to apply boosts on the next turn.static CompletableFuture<TestResult> Check that once Geomancy is selected, the user is locked into resolving it on the next turn, even if they attempt to select a different move.static CompletableFuture<TestResult> Check that if the user faints while charging Geomancy, the move fails to apply boosts on the next turn.static CompletableFuture<TestResult> Check that Geomancy resolves immediately when the user is holding a Power Herb, and that the item is consumed.static CompletableFuture<TestResult> Check that Geomancy charges on turn 1 and then boosts the stats of the user on turn 2.static CompletableFuture<TestResult> Check that Geomancy respects stat stage caps (+6) and applies boosts partially if needed.static CompletableFuture<TestResult> Check that the ability Contrary causes Geomancy to give -2/-2/-2 instead of +2/+2/+2.static CompletableFuture<TestResult> Check that the ability Simple causes Geomancy to give +4/+4/+4 instead of +2/+2/+2.static CompletableFuture<TestResult> Check that Snatch does not steal Geomancy in a doubles battle and that the user still receives the boosts.
-
Constructor Details
-
GeomancyTests
public GeomancyTests()
-
-
Method Details
-
testGeomancyResolvesOnSecondTurn
public static CompletableFuture<TestResult> testGeomancyResolvesOnSecondTurn(BattleTestHelper helper) Check that Geomancy charges on turn 1 and then boosts the stats of the user on turn 2. Turn 1: User uses Geomancy (charging). No stat stages change. Turn 2: Geomancy resolves. SpA/SpD/Spe become +2 each. -
testGeomancyPowerHerbResolvesImmediatelyAndConsumesItem
public static CompletableFuture<TestResult> testGeomancyPowerHerbResolvesImmediatelyAndConsumesItem(BattleTestHelper helper) Check that Geomancy resolves immediately when the user is holding a Power Herb, and that the item is consumed. Turn 1: Geomancy resolves immediately (no charge) with Power Herb. Verify +2/+2/+2 and Power Herb consumed. -
testGeomancyRespectsStatCapsAndAppliesPartially
public static CompletableFuture<TestResult> testGeomancyRespectsStatCapsAndAppliesPartially(BattleTestHelper helper) Check that Geomancy respects stat stage caps (+6) and applies boosts partially if needed. Setup: SpA +6, SpD +5, Spe +0 After Geomancy resolution: SpA stays +6, SpD -> +6, Spe -> +2 -
testGeomancyFailsIfTauntedWhileCharging
public static CompletableFuture<TestResult> testGeomancyFailsIfTauntedWhileCharging(BattleTestHelper helper) Check that if the user is Taunted while charging Geomancy, the move fails to apply boosts on the next turn. Turn 1: User begins charging Geomancy. Foe uses Taunt successfully. Turn 2: Geomancy should fail (no boosts applied). -
testGeomancyCannotBeStartedWhileTaunted
public static CompletableFuture<TestResult> testGeomancyCannotBeStartedWhileTaunted(BattleTestHelper helper) Check that if the user is already Taunted before selecting Geomancy, the move fails to start (no charge). Turn 1: User is Taunted before selecting Geomancy. Turn 2: Selecting Geomancy should fail immediately and not enter charging state. -
testGeomancyCancelledByForcedSwitchDuringCharge
public static CompletableFuture<TestResult> testGeomancyCancelledByForcedSwitchDuringCharge(BattleTestHelper helper) Check that if the user is forced to switch out while charging Geomancy, the move fails to apply boosts on the next turn. Turn 1: User starts charging Geomancy. Foe uses Roar/Whirlwind and successfully forces a switch (needs user to have a bench mon). Verify Geomancy never resolves later (no boosts), and no "pending charge" remains. -
testGeomancyNoBoostIfUserFaintsDuringCharge
public static CompletableFuture<TestResult> testGeomancyNoBoostIfUserFaintsDuringCharge(BattleTestHelper helper) Check that if the user faints while charging Geomancy, the move fails to apply boosts on the next turn. Turn 1: User begins charging Geomancy. Turn 1 or Turn 2: Foe KOs the user before resolution. Verify no boosts were applied. -
testGeomancyWithSimpleGivesPlusFourEach
public static CompletableFuture<TestResult> testGeomancyWithSimpleGivesPlusFourEach(BattleTestHelper helper) Check that the ability Simple causes Geomancy to give +4/+4/+4 instead of +2/+2/+2. Turn 1: User uses Geomancy (charging). Turn 2: Geomancy resolves. SpA/SpD/Spe become +4 each. -
testGeomancyWithContraryGivesMinusTwoEach
public static CompletableFuture<TestResult> testGeomancyWithContraryGivesMinusTwoEach(BattleTestHelper helper) Check that the ability Contrary causes Geomancy to give -2/-2/-2 instead of +2/+2/+2. Turn 1: User uses Geomancy (charging). Turn 2: Geomancy resolves. SpA/SpD/Spe become -2 each. -
testSnatchDoesNotStealGeomancy
Check that Snatch does not steal Geomancy in a doubles battle and that the user still receives the boosts. Doubles: Side A: user uses Geomancy Side B: one opponent uses Snatch Verify opponent does not gain boosts, user still resolves normally. -
testGeomancyLocksUserIntoSecondTurnResolution
public static CompletableFuture<TestResult> testGeomancyLocksUserIntoSecondTurnResolution(BattleTestHelper helper) Check that once Geomancy is selected, the user is locked into resolving it on the next turn, even if they attempt to select a different move. User has Geomancy and another move. Turn 1: selects Geomancy (charge) Turn 2: attempt to select another move; engine should still resolve Geomancy. -
testEncoreAfterPowerHerbGeomancyUsesTwoTurnVersionNext
public static CompletableFuture<TestResult> testEncoreAfterPowerHerbGeomancyUsesTwoTurnVersionNext(BattleTestHelper helper) Check that if the user uses Geomancy with a Power Herb and then is Encored into using Geomancy again, the second use of Geomancy correctly goes through the two-turn version (charging first, then boosting). Turn 1: user uses Geomancy with Power Herb -> immediate boosts, herb consumed. Foe uses Encore after seeing Geomancy. Turn 2: user is forced to use Geomancy again, but WITHOUT Power Herb it should charge (no new boosts yet). Turn 3: Geomancy resolves, applying another +2/+2/+2
-