From cee93038cc803d58431e0bd9352e6dd75f2379b9 Mon Sep 17 00:00:00 2001 From: MatteoPellegrino05 Date: Fri, 27 Mar 2026 19:34:28 +0100 Subject: [PATCH] Fix: changed test names for InvetorTest, BuilderTest; Update: DecksCreatorTest --- .../TribeCards/Characters/BuilderTest.java | 4 +- .../TribeCards/Characters/InventorTest.java | 8 +-- .../ingsw/gc14/Model/DecksCreatorTest.java | 62 ++++++++++++++++++- 3 files changed, 67 insertions(+), 7 deletions(-) diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/BuilderTest.java b/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/BuilderTest.java index c484cfb..e8fb1b1 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/BuilderTest.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/BuilderTest.java @@ -90,14 +90,14 @@ class BuilderTest { } @Test - void constructorShouldThrowIfReductionValueNegative() { + void negativeReductionValue() { assertThrows(IllegalArgumentException.class, () -> { new Builder(1, -1, 3); }); } @Test - void constructorShouldThrowIfPrestigeValueNegative() { + void negativePrestigeValue() { assertThrows(IllegalArgumentException.class, () -> { new Builder(1, 2, -3); }); diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/InventorTest.java b/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/InventorTest.java index 13cdc08..e89dcf2 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/InventorTest.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Characters/InventorTest.java @@ -84,28 +84,28 @@ class InventorTest { } @Test - void constructorShouldThrowIfIconIsNegative() { + void negativeIcon() { assertThrows(IllegalArgumentException.class, () -> { new Inventor(1, -1); }); } @Test - void constructorShouldThrowIfIconIsGreaterThanNine() { + void iconGreaterThanNine() { assertThrows(IllegalArgumentException.class, () -> { new Inventor(1, 10); }); } @Test - void constructorWithNMinShouldThrowIfIconIsNegative() { + void negativeIconWithNMin() { assertThrows(IllegalArgumentException.class, () -> { new Inventor(1, -1, 3); }); } @Test - void constructorWithNMinShouldThrowIfIconIsGreaterThanNine() { + void iconGreaterThanNineWithNMin() { assertThrows(IllegalArgumentException.class, () -> { new Inventor(1, 10, 3); }); diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/DecksCreatorTest.java b/src/test/java/it/polimi/ingsw/gc14/Model/DecksCreatorTest.java index 495e6e9..af8bf70 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/DecksCreatorTest.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/DecksCreatorTest.java @@ -1,5 +1,6 @@ package it.polimi.ingsw.gc14.Model; +import it.polimi.ingsw.gc14.Model.Cards.BuildingCard; import it.polimi.ingsw.gc14.Model.Cards.TribeCard; import org.junit.jupiter.api.Test; @@ -18,4 +19,63 @@ class DecksCreatorTest { List cards3 = DecksCreator.loadTribeDeck("/Cards/tribe_era3.json"); assertEquals(29,cards3.size()); } -} \ No newline at end of file + + @Test + void loadDeckWrongEra() { + assertThrows(IllegalArgumentException.class, () -> DecksCreator.loadTribeDeckByEra(0)); + assertThrows(IllegalArgumentException.class, () -> DecksCreator.loadTribeDeckByEra(4)); + assertThrows(IllegalArgumentException.class, () -> DecksCreator.loadTribeDeckByEra(-1)); + } + + @Test + void loadDeckWrongPath() { + assertThrows(RuntimeException.class, () -> DecksCreator.loadTribeDeck("/Cards/not_found.json")); + } + + @Test + void loadBuildingDeck() { + List allCards = DecksCreator.loadBuildingDeck("/Cards/buildingCards.json"); + + assertNotNull(allCards); + assertFalse(allCards.isEmpty()); + assertFalse(allCards.contains(null)); + } + + @Test + void loadBuildingDeckByEra() { + List allCards = DecksCreator.loadBuildingDeck("/Cards/buildingCards.json"); + + List era1 = DecksCreator.loadBuildingDeckByEra(1); + List era2 = DecksCreator.loadBuildingDeckByEra(2); + List era3 = DecksCreator.loadBuildingDeckByEra(3); + + assertEquals(allCards.stream().filter(c -> c.getEra() == 1).count(), era1.size()); + assertEquals(allCards.stream().filter(c -> c.getEra() == 2).count(), era2.size()); + assertEquals(allCards.stream().filter(c -> c.getEra() == 3).count(), era3.size()); + + assertTrue(era1.stream().allMatch(c -> c.getEra() == 1)); + assertTrue(era2.stream().allMatch(c -> c.getEra() == 2)); + assertTrue(era3.stream().allMatch(c -> c.getEra() == 3)); + } + + @Test + void loadBuildingDeckWrongEra() { + assertThrows(IllegalArgumentException.class, () -> DecksCreator.loadBuildingDeckByEra(0)); + assertThrows(IllegalArgumentException.class, () -> DecksCreator.loadBuildingDeckByEra(4)); + assertThrows(IllegalArgumentException.class, () -> DecksCreator.loadBuildingDeckByEra(-1)); + } + + @Test + void loadBuildingDeckWrongPath() { + assertThrows(RuntimeException.class, () -> DecksCreator.loadBuildingDeck("/Cards/not_found.json")); + } + + @Test + void loadSlotDeck() { + List slots = DecksCreator.loadSlotDeck(); + + assertNotNull(slots); + assertEquals(7, slots.size()); + assertFalse(slots.contains(null)); + } +}