From ee4a9cadfc9a94dbf3c3b0c01137aaee2b724560 Mon Sep 17 00:00:00 2001 From: emilfa Date: Sun, 1 Mar 2026 14:42:00 +0100 Subject: [PATCH] test: created tests for the OrganizationRepository --- .../organization/OrganizationRepoTest.java | 4 -- .../OrganizationRepositoryTest.java | 57 +++++++++++++++++++ 2 files changed, 57 insertions(+), 4 deletions(-) delete mode 100644 src/test/java/edu/group5/app/model/organization/OrganizationRepoTest.java create mode 100644 src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java diff --git a/src/test/java/edu/group5/app/model/organization/OrganizationRepoTest.java b/src/test/java/edu/group5/app/model/organization/OrganizationRepoTest.java deleted file mode 100644 index 780bf8e..0000000 --- a/src/test/java/edu/group5/app/model/organization/OrganizationRepoTest.java +++ /dev/null @@ -1,4 +0,0 @@ -import static org.junit.jupiter.api.Assertions.*; -class OrganizationRepoTest { - -} \ No newline at end of file diff --git a/src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java b/src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java new file mode 100644 index 0000000..3249078 --- /dev/null +++ b/src/test/java/edu/group5/app/model/organization/OrganizationRepositoryTest.java @@ -0,0 +1,57 @@ +package edu.group5.app.model.organization; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import java.util.HashMap; +import java.util.Map; + +import static org.junit.jupiter.api.Assertions.*; + +class OrganizationRepositoryTest { + + private Map content; + private Organization trustedOrganization1; + private Organization trustedOrganization2; + private Organization untrustedOrganization1; + private Organization untrustedOrganization2; + private OrganizationRepository repository; + + @BeforeEach + void setUp() { + content = new HashMap<>(); + + trustedOrganization1 = + new Organization(1, "Trusted Org1", true, "org.com", true, "description"); + trustedOrganization2 = + new Organization(2, "Trusted Org2", true, "org.com", true, "description"); + untrustedOrganization1 = + new Organization(3, "Untrusted Org1", false, "org.com", true, "description"); + 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); + + repository = new OrganizationRepository(content); + } + + @Test + void constructor_ThrowsWhenContentIsNull() { + assertThrows(NullPointerException.class, () -> new OrganizationRepository(null)); + } + + @Test + void getTrustedOrganizations_OnlyReturnsTrustedOrganizations() { + Map trusted = repository.getTrustedOrganizations(); + + assertEquals(2, trusted.size()); + assertTrue(trusted.containsKey(1)); + assertTrue(trusted.containsKey(2)); + assertFalse(trusted.containsKey(3)); + assertFalse(trusted.containsKey(4)); + assertTrue(trusted.values().stream().allMatch(Organization::trusted)); + } +} \ No newline at end of file