From adce1166037961ef1d22d892800e0055de324fb6 Mon Sep 17 00:00:00 2001 From: Fredrik Marjoni Date: Wed, 4 Mar 2026 12:39:57 +0100 Subject: [PATCH] fix: fix Organizational classes by fixing constructor and JUnit tests --- .../organization/OrganizationRepository.java | 3 ++ .../OrganizationRepositoryTest.java | 54 ++++++++++++++----- .../model/organization/OrganizationTest.java | 2 +- 3 files changed, 44 insertions(+), 15 deletions(-) diff --git a/src/main/java/edu/group5/app/model/organization/OrganizationRepository.java b/src/main/java/edu/group5/app/model/organization/OrganizationRepository.java index e48be9e..4ba589e 100644 --- a/src/main/java/edu/group5/app/model/organization/OrganizationRepository.java +++ b/src/main/java/edu/group5/app/model/organization/OrganizationRepository.java @@ -14,6 +14,9 @@ public class OrganizationRepository extends Repository { private final HashMap grandMap; public OrganizationRepository(Object[] input) { + if (input == null) { + throw new IllegalArgumentException("The input cannot be null"); + } grandMap = new HashMap<>(); ObjectMapper mapper = new ObjectMapper(); diff --git a/src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java b/src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java index 3a3392e..184b5e7 100644 --- a/src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java +++ b/src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java @@ -3,7 +3,8 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import java.util.HashMap; +import edu.group5.app.model.user.Customer; + import java.util.Map; import static org.junit.jupiter.api.Assertions.*; @@ -14,24 +15,49 @@ class OrganizationRepositoryTest { @BeforeEach void setUp() { - Map content = new HashMap<>(); - - Organization trustedOrganization1 = new Organization(1, "Trusted Org1", true, "org.com", true, "description"); - Organization trustedOrganization2 = new Organization(2, "Trusted Org2", true, "org.com", true, "description"); - Organization untrustedOrganization1 = new Organization(3, "Untrusted Org1", false, "org.com", true, "description"); - Organization untrustedOrganization2 = new Organization(4, "Untrusted Org2", false, "org.com", true, "description"); - - content.put(1, trustedOrganization1); - content.put(2, trustedOrganization2); - content.put(3, untrustedOrganization1); - content.put(4, untrustedOrganization2); - + Object[] content = new Object[] { + Map.of( + "org_number", "1", + "name", "Trusted Org1", + "status", "approved", + "url", "org.com", + "is_pre_approved", true + ), + Map.of( + "org_number", "2", + "name", "Trusted Org2", + "status", "approved", + "url", "org.com", + "is_pre_approved", true + ), + Map.of( + "org_number", "3", + "name", "Untrusted Org1", + "status", "pending", + "url", "org.com", + "is_pre_approved", true + ), + Map.of( + "org_number", "4", + "name", "Untrusted Org2", + "status", "pending", + "url", "org.com", + "is_pre_approved", true + ) + }; repository = new OrganizationRepository(content); } + private void constructorTest(Object[] input, String expectedMessage) { + IllegalArgumentException exception = assertThrows( + IllegalArgumentException.class, + () -> new OrganizationRepository(input) + ); + assertEquals(expectedMessage, exception.getMessage()); + } @Test void constructor_ThrowsWhenContentIsNull() { - assertThrows(NullPointerException.class, () -> new OrganizationRepository(null)); + constructorTest(null, "The input cannot be null"); } @Test diff --git a/src/test/java/edu/group5/app/model/organization/OrganizationTest.java b/src/test/java/edu/group5/app/model/organization/OrganizationTest.java index 3e3f338..7f1b898 100644 --- a/src/test/java/edu/group5/app/model/organization/OrganizationTest.java +++ b/src/test/java/edu/group5/app/model/organization/OrganizationTest.java @@ -20,7 +20,7 @@ void constructor_CreatesAnOrganizationWhenInputIsValid() { assertAll( () -> assertEquals(1, org.orgNumber()), () -> assertEquals("Org", org.name()), - () -> assertTrue(org.status()), + () -> assertTrue(org.trusted()), () -> assertEquals("org.com", org.websiteURL()), () -> assertTrue(org.isPreApproved()), () -> assertEquals("Org description", org.description())