Fix various hints and warnings on many set & block classes (via IntelliJ IDEA linting):

- replacing hard coded strings of set codes with reference to 'mage.sets.<set>.getInstance().getCode()' allows for set class names to no longer show as unreferenced & adds for more consistence between other block units
- various protected variables were able to be changed to private to clean up additional warnings
- some JavaDoc comments were generating warnings due to missing documentation
- removed some unused imports and unused variables
- there were multiple conditional logic checks for 'rarity != Rarity.LAND' within an if block where the outer condition was 'if rarity == Rarity.COMMON' rendering the inner condition always true and thus redundant
- a few ExpansionSet.buildDate parameters wer using octal values (eg. '03' instead of '3') which triggered some warnings
- added a booster generation test for WarOfTheSparks to make sure every booster contains a planeswalker
- added a booster generation test for ModernHorizons to make sure every booster contains a snow land
- booster generation test for Battlbond set referenced the Coldsnap set class instead of Battlebond
This commit is contained in:
Mike Simons 2019-07-18 23:28:48 -04:00
parent bbd1390397
commit 8d08f005af
37 changed files with 94 additions and 95 deletions

View file

@ -28,14 +28,14 @@ public class DeckValidatorTest extends MageTestBase {
int number;
public CardNameAmount(String setCode, int cardNumber, int number) {
CardNameAmount(String setCode, int cardNumber, int number) {
this.name = "";
this.setCode = setCode;
this.cardNumber = String.valueOf(cardNumber);
this.number = number;
}
public CardNameAmount(String name, int number) {
CardNameAmount(String name, int number) {
this.name = name;
this.number = number;
}
@ -48,11 +48,11 @@ public class DeckValidatorTest extends MageTestBase {
return number;
}
public String getSetCode() {
String getSetCode() {
return setCode;
}
public String getCardNumber() {
String getCardNumber() {
return cardNumber;
}
@ -359,6 +359,7 @@ public class DeckValidatorTest extends MageTestBase {
cardinfo = CardRepository.instance.findCard(cardNameAmount.getName());
}
for (int i = 0; i < cardNameAmount.getNumber(); i++) {
assert cardinfo != null;
deckToTest.getCards().add(cardinfo.getCard());
}
}
@ -372,6 +373,7 @@ public class DeckValidatorTest extends MageTestBase {
cardinfo = CardRepository.instance.findCard(cardNameAmount.getName());
}
for (int i = 0; i < cardNameAmount.getNumber(); i++) {
assert cardinfo != null;
deckToTest.getSideboard().add(cardinfo.getCard());
}
}

View file

@ -5,6 +5,7 @@ import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.keyword.PartnerWithAbility;
import mage.cards.Card;
@ -143,6 +144,15 @@ public class BoosterGenerationTest extends MageTestBase {
assertTrue(allCards.stream().anyMatch(card -> card.getCardType().contains(CardType.LAND) && card.getRarity().equals(Rarity.COMMON)));
}
@Test
public void testWarOfTheSpark_EveryBoosterContainsPlaneswalker() {
for (int i = 0; i < 10; i++) {
List<Card> booster = WarOfTheSpark.getInstance().createBooster();
// check that booster contains a planeswalker
assertTrue(booster.stream().anyMatch(MageObject::isPlaneswalker));
}
}
@Test
public void testDominaria_EveryBoosterContainsLegendaryCreature() {
for (int i = 0; i < 10; i++) {
@ -160,6 +170,14 @@ public class BoosterGenerationTest extends MageTestBase {
}
}
@Test
public void testModernHorizons_BoosterMustHaveOneSnowLand() {
for (int i = 0; i < 10; i++) {
List<Card> booster = ModernHorizons.getInstance().createBooster();
assertTrue("Modern Horizon's booster must contain 1 snow covered land", booster.stream().anyMatch(card -> card.isBasic() && card.getName().startsWith("Snow-Covered ")));
}
}
@Test
public void testMastersEditionII_BoosterMustHaveOneSnowLand() {
for (int i = 0; i < 10; i++) {
@ -171,7 +189,7 @@ public class BoosterGenerationTest extends MageTestBase {
@Test
public void testBattlebond_BoosterMustHaveOneLand() {
for (int i = 0; i < 10; i++) {
List<Card> booster = Coldsnap.getInstance().createBooster();
List<Card> booster = Battlebond.getInstance().createBooster();
assertTrue("battlebond's booster must contain 1 land", booster.stream().anyMatch(card -> card.isBasic() && card.isLand()));
}
}