Skip to content

Commit

Permalink
tests: improved verify checks for emblems and tokens
Browse files Browse the repository at this point in the history
  • Loading branch information
JayDi85 committed Jun 17, 2023
1 parent ebef329 commit ef85353
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -1364,7 +1364,14 @@ public void test_checkMissingTokenData() {
List<Card> cardsList = new ArrayList<>(CardScanner.getAllCards());
Map<String, List<Card>> setsWithTokens = new HashMap<>();
for (Card card : cardsList) {
String allRules = String.join(" ", card.getRules()).toLowerCase(Locale.ENGLISH);
// must check all card parts (example: Mila, Crafty Companion with Lukka Emblem)
String allRules = CardUtil.getObjectPartsAsObjects(card)
.stream()
.map(obj -> (Card) obj)
.map(Card::getRules)
.flatMap(Collection::stream)
.map(r -> r.toLowerCase(Locale.ENGLISH))
.collect(Collectors.joining("; "));
if ((allRules.contains("create") && allRules.contains("token"))
|| (allRules.contains("get") && allRules.contains("emblem"))) {
List<Card> sourceCards = setsWithTokens.getOrDefault(card.getExpansionSetCode(), null);
Expand Down Expand Up @@ -1400,8 +1407,12 @@ public void test_checkMissingTokenData() {
String needTokenName = token.getName()
.replace(" Token", "")
.replace("Emblem ", "");
// need add card name, so it will skip no name emblems like Sarkhan, the Dragonspeaker
// cards with emblems don't use emblem's name, so check it in card name itself (example: Sarkhan, the Dragonspeaker)
// also must check all card parts (example: Mila, Crafty Companion with Lukka Emblem)
if (sourceCards.stream()
.map(CardUtil::getObjectPartsAsObjects)
.flatMap(Collection::stream)
.map(obj -> (Card) obj)
.map(card -> card.getName() + " - " + String.join(", ", card.getRules()))
.noneMatch(s -> s.contains(needTokenName))) {
warningsList.add("info, tok-data has un-used tokens: "
Expand Down

0 comments on commit ef85353

Please sign in to comment.