diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/java/design/model/CourseTest.java | 36 | ||||
| -rw-r--r-- | src/test/java/design/model/GolferTest.java | 17 | ||||
| -rw-r--r-- | src/test/java/design/model/RoundTest.java | 42 | ||||
| -rw-r--r-- | src/test/java/design/model/coursesearch/CourseListTest.java | 27 | ||||
| -rw-r--r-- | src/test/java/design/model/coursesearch/sortStrategyTest.java | 88 |
5 files changed, 204 insertions, 6 deletions
diff --git a/src/test/java/design/model/CourseTest.java b/src/test/java/design/model/CourseTest.java new file mode 100644 index 0000000..b6dd4a5 --- /dev/null +++ b/src/test/java/design/model/CourseTest.java @@ -0,0 +1,36 @@ +package design.model; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; + +import java.util.ArrayList; + + +/** Unit Tests for the Course class. + * @author Willem Dalton + **/ +@Tag("Model-tier") +public class CourseTest{ + + @Test + void testConstructor() + { + Course testCourse = new Course(0, "Rolling Waves", 62, "Rochester, NY", 9, 20, new ArrayList<Hole>()); + assertEquals(0, testCourse.getId()); + assertEquals("Rolling Waves", testCourse.getName()); + assertEquals(62, testCourse.getDifficultyRating()); + assertEquals("Rochester, NY", testCourse.getLocation()); + assertEquals(9, testCourse.getHoleCount()); + assertEquals(20, testCourse.getTotalPar()); + assertEquals(0, testCourse.getHoles().size()); + } + + @Test + void testToString() + { + Course testCourse = new Course(0, "Rolling Waves", 62, "Rochester, NY", 9, 20, new ArrayList<Hole>()); + assertEquals("Rolling Waves (Rochester, NY) | Holes: 9 | Total Par: 20 | Difficulty: 62.0", testCourse.toString()); + } +} diff --git a/src/test/java/design/model/GolferTest.java b/src/test/java/design/model/GolferTest.java index 3a79070..65229f3 100644 --- a/src/test/java/design/model/GolferTest.java +++ b/src/test/java/design/model/GolferTest.java @@ -4,6 +4,7 @@ package design.model; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; import org.junit.jupiter.api.Tag; import org.junit.jupiter.api.Test; @@ -13,6 +14,7 @@ import design.model.Club.ClubType; import java.lang.reflect.Constructor; import java.time.LocalDateTime; import java.util.ArrayList; +import java.util.List; import java.lang.reflect.Modifier; /** Unit Tests for the Club class. @@ -30,12 +32,15 @@ public class GolferTest { assertTrue(testGolfer.checkPassword("weback4321")); } - // @Test - // void testPrivateConstructor() throws Exception - // { - // Constructor<Golfer> constructor = Golfer.class.getDeclaredConstructor(); - // assertTrue(Modifier.isPrivate(constructor.getModifiers())); - // } + @Test + void testPrivateConstructor() throws Exception + { + Constructor<Golfer> constructor = Golfer.class.getDeclaredConstructor(String.class, int.class, String.class, List.class, List.class, List.class); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + Golfer testGolfer = constructor.newInstance("testUser", 12345, "Test Golfer", new ArrayList<>(), new ArrayList<>(), new ArrayList<>()); + assertNotNull(testGolfer); + } @Test void testSetUserName() diff --git a/src/test/java/design/model/RoundTest.java b/src/test/java/design/model/RoundTest.java new file mode 100644 index 0000000..d472f5b --- /dev/null +++ b/src/test/java/design/model/RoundTest.java @@ -0,0 +1,42 @@ +package design.model; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; + +import java.time.LocalDateTime; +import java.util.ArrayList; + +/** Unit Tests for the Round class. + * @author Willem Dalton + **/ +@Tag("Model-tier") +public class RoundTest { + + @Test + void testConstructor() + { + Course testCourse = new Course(0, "Rolling Waves", 62, "Rochester, NY", 9, 20, new ArrayList<Hole>()); + LocalDateTime testTime = LocalDateTime.now(); + Hole testHole = new Hole(0,3); + Round testRound = new Round(testCourse, testTime, testHole); + assertEquals(testCourse, testRound.getCourse()); + assertEquals(testTime, testRound.getDateTime()); + assertEquals(testHole, testRound.getStartingHole()); + } + + @Test + void testHolePlay() + { + Course testCourse = new Course(0, "Rolling Waves", 62, "Rochester, NY", 9, 20, new ArrayList<Hole>()); + LocalDateTime testTime = LocalDateTime.now(); + Hole testHole = new Hole(0,3); + Round testRound = new Round(testCourse, testTime, testHole); + Play testPlay = new Play(0); + + testRound.addPlay(testPlay); + assertEquals(1, testRound.getPlays().length); + assertEquals(testPlay, testRound.getPlays()[0]); + } +} diff --git a/src/test/java/design/model/coursesearch/CourseListTest.java b/src/test/java/design/model/coursesearch/CourseListTest.java new file mode 100644 index 0000000..7538ba5 --- /dev/null +++ b/src/test/java/design/model/coursesearch/CourseListTest.java @@ -0,0 +1,27 @@ +package design.model.coursesearch; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.assertFalse; + +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; +import java.util.ArrayList; + +import design.model.course_search.*; +import design.model.Course; + + +/** Unit Tests for the Club class. + * @author Willem Dalton + **/ +@Tag("Model-tier") +public class CourseListTest { + + @Test + void testConstructor() + { + CourseList testList = new CourseList(); + + } +} diff --git a/src/test/java/design/model/coursesearch/sortStrategyTest.java b/src/test/java/design/model/coursesearch/sortStrategyTest.java new file mode 100644 index 0000000..aecbeff --- /dev/null +++ b/src/test/java/design/model/coursesearch/sortStrategyTest.java @@ -0,0 +1,88 @@ +package design.model.coursesearch; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.assertFalse; + +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; +import java.util.ArrayList; + +import design.model.course_search.*; +import design.model.Course; + +/** Unit Tests for the Difficulty Sorter class + * @author Willem Dalton + **/ +public class sortStrategyTest { + + Course test1 = new Course(0, "Rolling Waves", 67, "Rochester, NY", 9, 30, null); + Course test2 = new Course(1, "Balls in the Rough", 60, "Buffalo, NY", 18, 60, null); + Course test3 = new Course(2, "The Last Green Valley", 67, "Rome, NY", 9, 47, null); + Course test4 = new Course(2, "Rolling Waves", 67, "Rome, NY", 9, 30, null); + + @Test + void testDifficultySort() + { + SortByDifficulty sorter = new SortByDifficulty(); + ArrayList<ICourse> courses = new ArrayList(); + courses.add(test1); + courses.add(test2); + sorter.sortCourses(courses); + assertTrue(sorter.isEqual(test1, test3)); + assertFalse(sorter.isEqual(test1, test2)); + assertEquals("Difficulty", sorter.toString()); + } + + @Test + void testNameSort() + { + SortByName sorter = new SortByName(); + ArrayList<ICourse> courses = new ArrayList(); + courses.add(test1); + courses.add(test4); + sorter.sortCourses(courses); + assertTrue(sorter.isEqual(test1, test4)); + assertFalse(sorter.isEqual(test1, test2)); + assertEquals("Name", sorter.toString()); + } + + @Test + void testLocationSort() + { + SortByLocation sorter = new SortByLocation(); + ArrayList<ICourse> courses = new ArrayList(); + courses.add(test1); + courses.add(test4); + sorter.sortCourses(courses); + assertTrue(sorter.isEqual(test3, test4)); + assertFalse(sorter.isEqual(test1, test2)); + assertEquals("Location", sorter.toString()); + } + + @Test + void testParSort() + { + SortByPar sorter = new SortByPar(); + ArrayList<ICourse> courses = new ArrayList(); + courses.add(test1); + courses.add(test4); + sorter.sortCourses(courses); + assertTrue(sorter.isEqual(test1, test4)); + assertFalse(sorter.isEqual(test1, test2)); + assertEquals("Total Par", sorter.toString()); + } + + @Test + void testHoleSort() + { + SortByHoles sorter = new SortByHoles(); + ArrayList<ICourse> courses = new ArrayList(); + courses.add(test1); + courses.add(test4); + sorter.sortCourses(courses); + assertTrue(sorter.isEqual(test1, test4)); + assertFalse(sorter.isEqual(test1, test2)); + assertEquals("Hole Count", sorter.toString()); + } +} |
