From 1da6f53677108558ca1403dbb82f4adc0a84797e Mon Sep 17 00:00:00 2001 From: WillemDalton Date: Sat, 15 Nov 2025 12:47:37 -0500 Subject: finished testing for persistence --- .../design/persistence/CSVMasterDatabaseTest.java | 43 ++++++++++++++++++++++ .../design/persistence/JSONLeagueDatabaseTest.java | 28 +++++++++----- 2 files changed, 61 insertions(+), 10 deletions(-) create mode 100644 src/test/java/design/persistence/CSVMasterDatabaseTest.java (limited to 'src/test/java/design/persistence') diff --git a/src/test/java/design/persistence/CSVMasterDatabaseTest.java b/src/test/java/design/persistence/CSVMasterDatabaseTest.java new file mode 100644 index 0000000..853d51c --- /dev/null +++ b/src/test/java/design/persistence/CSVMasterDatabaseTest.java @@ -0,0 +1,43 @@ +package design.persistence; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; + +import design.model.Club.ClubType; + +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; + +/** Unit Tests for the CSV Master Database Singleton class. + * @author Willem Dalton + **/ +@Tag("Model-tier") +public class CSVMasterDatabaseTest { + + @Test + void testInstance() + { + CSVMasterDatabase instance = CSVMasterDatabase.instance(); + assertNotNull(instance); + CSVMasterDatabase instance2 = CSVMasterDatabase.instance(); + assertNotNull(instance2); + } + + @Test + void testGetCourses() + { + CSVMasterDatabase instance = CSVMasterDatabase.instance(); + String expectedResult = "Mountain View Links (Mobile, AL) | Holes: 18 | Total Par: 70 | Difficulty: 73.0"; + assertEquals(1000, instance.getCourses().length); + assertNotNull(instance.getCourseList()); + assertEquals(expectedResult, instance.getCourse(0).toString()); + } + +} diff --git a/src/test/java/design/persistence/JSONLeagueDatabaseTest.java b/src/test/java/design/persistence/JSONLeagueDatabaseTest.java index 1dcdbb1..b27555c 100644 --- a/src/test/java/design/persistence/JSONLeagueDatabaseTest.java +++ b/src/test/java/design/persistence/JSONLeagueDatabaseTest.java @@ -5,6 +5,8 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; +import java.time.LocalDateTime; +import java.util.ArrayList; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -15,7 +17,10 @@ import org.junit.jupiter.api.Test; import design.model.League; import design.model.StrokeLeague; +import design.model.Course; import design.model.Golfer; +import design.model.Hole; +import design.model.Match; /** Unit Tests for the JSON Personal Database Singleton * @author Willem Dalton @@ -54,14 +59,17 @@ public class JSONLeagueDatabaseTest { assertEquals(0, instance.getLeagues().length); } - // @Test - // void testUpdateGolfer() throws IOException - // { - // JSONLeagueDatabase instance = JSONLeagueDatabase.testInstance(tempDB.toString()); // makes new instance - // Golfer testGolfer = new Golfer("Jamie Doe", "joe_cool", "12345"); - // instance.addGolfer(testGolfer); - // testGolfer.setUsername("joe_super_cool"); - // instance.updateGolfer(testGolfer); - // assertEquals(testGolfer, instance.getGolfer("joe_super_cool")); - // } + @Test + void testUpdateGolfer() throws IOException + { + JSONLeagueDatabase instance = JSONLeagueDatabase.testInstance(tempDB.toString()); // makes new instance + Golfer testOwner = new Golfer("Jamie Doe", "joe_cool", "12345"); + League testLeague = new StrokeLeague("The A Team", new Date(1234), new Date(123), new Date(12345), testOwner); + instance.addLeague(testLeague); + Course testCourse = new Course(0, "Rolling Waves", 62, "Rochester, NY", 9, 20, new ArrayList()); + Match testMatch = new Match(testCourse, new Date(123), LocalDateTime.now(), 3); + testLeague.addMatchToSchedule(testMatch); + instance.updateLeague(testLeague); + assertEquals(testLeague, instance.getLeague(testLeague.getId())); + } } -- cgit v1.2.3