diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/BuildingCard.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/BuildingCard.java index 63f1d55..1460025 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/BuildingCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/BuildingCard.java @@ -23,15 +23,23 @@ public class BuildingCard extends PlayableCard implements Cloneable , BuildingEf return effectType; } - public BuildingCard(int era,int price) { + public BuildingCard(int era,int price) throws IllegalArgumentException{ super(era); - this.price = price; + if (price > 0) { + this.price = price; + } else { + throw new IllegalArgumentException(); + } } - public BuildingCard(int effectId,EffectType effectType ,int era,int price) { + public BuildingCard(int effectId,EffectType effectType ,int era,int price) throws IllegalArgumentException{ this.effectId = effectId; this.effectType = effectType; super(era); - this.price = price; + if (price > 0) { + this.price = price; + } else { + throw new IllegalArgumentException(); + } } diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Building13Test.java b/src/test/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Building13Test.java index 8e2290d..f1bd5a7 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Building13Test.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/Cards/Building/Effects/Building13Test.java @@ -12,9 +12,22 @@ class Building13Test { void testClone() { assertThrows(IllegalArgumentException.class, () -> { Building13 b2 = new Building13(0, 15); - Building13 b3 = new Building13(-1, 100); - Building13 b4 = new Building13(5, -10); - Building13 b5 = new Building13(-2, 0); + }); + + assertThrows(IllegalArgumentException.class, () -> { + Building13 b3 = new Building13(-1, 15); + }); + + assertThrows(IllegalArgumentException.class, () -> { + Building13 b4 = new Building13(4, 15); + }); + + assertThrows(IllegalArgumentException.class, () -> { + Building13 b5 = new Building13(2, 0); + }); + + assertThrows(IllegalArgumentException.class, () -> { + Building13 b6 = new Building13(1, -15); }); Building13 b1 = new Building13(1, 10);