From 287bcde15cef38ef17e5ec07846af1f28a5f76c6 Mon Sep 17 00:00:00 2001 From: theelk801 Date: Tue, 4 Apr 2023 22:19:11 -0400 Subject: [PATCH] add verify test for backup ability --- .../src/test/java/mage/verify/VerifyCardDataTest.java | 5 +++++ Mage/src/main/java/mage/abilities/keyword/BackupAbility.java | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java index 28aec1baace..2f349204edf 100644 --- a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java +++ b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java @@ -1465,6 +1465,11 @@ public class VerifyCardDataTest { fail(card, "abilities", "card is a Saga but is missing this.addAbility(SagaAbility)"); } + // special check: backup ability should be set up correctly + if (card.getAbilities().containsClass(BackupAbility.class) && CardUtil.castStream(card.getAbilities().stream(), BackupAbility.class).noneMatch(BackupAbility::hasAbilities)) { + fail(card, "abilities", "card has backup but is missing this.addAbility(backupAbility)"); + } + // special check: Werewolves front ability should only be on front and vice versa if (card.getAbilities().containsClass(WerewolfFrontTriggeredAbility.class) && card.isNightCard()) { fail(card, "abilities", "card is a back face werewolf with a front face ability"); diff --git a/Mage/src/main/java/mage/abilities/keyword/BackupAbility.java b/Mage/src/main/java/mage/abilities/keyword/BackupAbility.java index 7983065c7fa..624c991768b 100644 --- a/Mage/src/main/java/mage/abilities/keyword/BackupAbility.java +++ b/Mage/src/main/java/mage/abilities/keyword/BackupAbility.java @@ -63,6 +63,10 @@ public class BackupAbility extends EntersBattlefieldTriggeredAbility { card.addAbility(ability); abilitiesToAdd.add(ability); } + + public boolean hasAbilities() { + return !abilitiesToAdd.isEmpty(); + } } class BackupEffect extends OneShotEffect {