diff options
| -rw-r--r-- | src/main/java/design/model/Golfer.java | 2 | ||||
| -rw-r--r-- | src/test/InviteTest.java | 0 | ||||
| -rw-r--r-- | src/test/java/design/model/GolferTest.java | 11 | ||||
| -rw-r--r-- | src/test/java/design/model/MatchTest.java | 59 | ||||
| -rw-r--r-- | src/test/java/design/model/PlayTest.java (renamed from src/test/java/design/model/TestPlay.java) | 2 | ||||
| -rw-r--r-- | src/test/java/design/model/TeamTest.java | 42 | ||||
| -rw-r--r-- | test.xml | 127 |
7 files changed, 241 insertions, 2 deletions
diff --git a/src/main/java/design/model/Golfer.java b/src/main/java/design/model/Golfer.java index 870b460..6ea9d32 100644 --- a/src/main/java/design/model/Golfer.java +++ b/src/main/java/design/model/Golfer.java @@ -160,5 +160,5 @@ public class Golfer implements Originator { this.clubs.addAll(gm.clubs); this.nextClubId = gm.nextClubId; - } + } } diff --git a/src/test/InviteTest.java b/src/test/InviteTest.java new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/test/InviteTest.java diff --git a/src/test/java/design/model/GolferTest.java b/src/test/java/design/model/GolferTest.java index 65229f3..5f113ab 100644 --- a/src/test/java/design/model/GolferTest.java +++ b/src/test/java/design/model/GolferTest.java @@ -10,6 +10,7 @@ import org.junit.jupiter.api.Tag; import org.junit.jupiter.api.Test; import design.model.Club.ClubType; +import design.model.undo.Memento; import java.lang.reflect.Constructor; import java.time.LocalDateTime; @@ -137,6 +138,16 @@ public class GolferTest { assertEquals(expectedString, testGolfer.toString()); } + @Test + void testMemento() + { + Golfer testGolfer = new Golfer("John Doe", "jdoesgolf2", "weback4321"); + Memento memento = testGolfer.createMemento(); + testGolfer.setFullName("Joe Doe"); + assertEquals("Joe Doe", testGolfer.getFullName()); + testGolfer.restore(memento); + assertEquals("John Doe", testGolfer.getFullName()); + } } diff --git a/src/test/java/design/model/MatchTest.java b/src/test/java/design/model/MatchTest.java new file mode 100644 index 0000000..9058218 --- /dev/null +++ b/src/test/java/design/model/MatchTest.java @@ -0,0 +1,59 @@ +package design.model; + +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 java.util.ArrayList; +import java.util.List; +import java.lang.reflect.Constructor; +import java.lang.reflect.Modifier; +import java.util.Date; +import java.time.LocalDateTime; + +/** Unit Tests for the Match class. + * @author Willem Dalton + **/ +@Tag("Model-tier") +public class MatchTest { + + @Test + void testConstructor() + { + Course testCourse = new Course(0, "Rolling Waves", 67, "Rochester. NY", 9, 30, new ArrayList<Hole>()); + Date testDate = new Date(1234567); + LocalDateTime now = LocalDateTime.now(); + Match testMatch = new Match(testCourse, testDate, now, 9); + assertEquals(testCourse, testMatch.getCourse()); + assertEquals(testDate, testMatch.getDateScheduled()); + assertEquals(now, testMatch.getStart()); + assertEquals(9, testMatch.getHoleCount()); + } + + @Test + void testPrivateConstructor() throws Exception + { + Course testCourse = new Course(0, "Rolling Waves", 67, "Rochester. NY", 9, 30, new ArrayList<Hole>()); + Constructor<Match> constructor = Match.class.getDeclaredConstructor(Course.class, Date.class, LocalDateTime.class, int.class, List.class); + assertTrue(Modifier.isPrivate(constructor.getModifiers())); + constructor.setAccessible(true); + Match testMatch = constructor.newInstance(testCourse, new Date(1234), LocalDateTime.now(), 0, new ArrayList<>()); + assertNotNull(testMatch); + } + + @Test + void testAddRound() + { + Course testCourse = new Course(0, "Rolling Waves", 67, "Rochester. NY", 9, 30, new ArrayList<Hole>()); + Date testDate = new Date(1234567); + LocalDateTime now = LocalDateTime.now(); + Match testMatch = new Match(testCourse, testDate, now, 9); + Round testRound = new Round(testCourse, now, new Hole(0, 5)); + testMatch.addRound(testRound); + assertEquals(testRound, testMatch.getRounds()[0]); + assertEquals(1, testMatch.getRounds().length); + } +} diff --git a/src/test/java/design/model/TestPlay.java b/src/test/java/design/model/PlayTest.java index c3282bf..0a27076 100644 --- a/src/test/java/design/model/TestPlay.java +++ b/src/test/java/design/model/PlayTest.java @@ -13,7 +13,7 @@ import java.util.ArrayList; * @author Willem Dalton **/ @Tag("Model-tier") -public class TestPlay { +public class PlayTest { @Test void testConstructor() { diff --git a/src/test/java/design/model/TeamTest.java b/src/test/java/design/model/TeamTest.java new file mode 100644 index 0000000..c81aa1e --- /dev/null +++ b/src/test/java/design/model/TeamTest.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; + +/** Unit Tests for the Team Class. + * @author Willem Dalton + **/ +@Tag("Model-tier") +public class TeamTest { + @Test + void testConstructor() + { + Golfer testGolfer = new Golfer("John Doe", "j_doe_golfs", "ilovegolf123"); + Team testTeam = new Team("A Team", testGolfer); + assertEquals("A Team", testTeam.getName()); + assertEquals(testGolfer, testTeam.getOwner()); + } + + @Test + void testSetName() + { + Golfer testGolfer = new Golfer("John Doe", "j_doe_golfs", "ilovegolf123"); + Team testTeam = new Team("A Team", testGolfer); + testTeam.setName("B Team"); + assertEquals("B Team", testTeam.getName()); + } + + @Test + void testRemoveMember() + { + Golfer testGolfer = new Golfer("John Doe", "j_doe_golfs", "ilovegolf123"); + Golfer newGolfer = new Golfer("Jane Doe", "j_doe_golfs2", "ilovegolf321"); + Team testTeam = new Team("A Team", testGolfer); + testTeam.addMember(newGolfer); + assertEquals(1, testTeam.getMembers().length); + testTeam.removeMember(newGolfer); + assertEquals(0, testTeam.getMembers().length); + } +} diff --git a/test.xml b/test.xml new file mode 100644 index 0000000..6a85537 --- /dev/null +++ b/test.xml @@ -0,0 +1,127 @@ +<export> + <items> + <nextClubId>1</nextClubId> + <username>test</username> + <passwordHash>3556498</passwordHash> + <fullName>test</fullName> + </items> + <items> + <nextClubId>1</nextClubId> + <username>GUYHERE</username> + <passwordHash>3556498</passwordHash> + <fullName>GUYHERE</fullName> + </items> + <items> + <clubs> + <id>1</id> + <manufacture>Bobby</manufacture> + <nickname>swen 261</nickname> + <clubType>DRIVER</clubType> + </clubs> + <clubs> + <id>2</id> + <manufacture>Bobby</manufacture> + <nickname>swen 262</nickname> + <clubType>PUTTER</clubType> + </clubs> + <clubs> + <id>3</id> + <manufacture>sowclub</manufacture> + <nickname>man</nickname> + <clubType>WOOD</clubType> + </clubs> + <nextClubId>4</nextClubId> + <username>john_doe</username> + <passwordHash>46792755</passwordHash> + <fullName>John Doe</fullName> + <courses>2</courses> + <courses>1</courses> + <rounds> + <course>1</course> + <dateTime>2025</dateTime> + <dateTime>10</dateTime> + <dateTime>7</dateTime> + <dateTime>13</dateTime> + <dateTime>54</dateTime> + <dateTime>37</dateTime> + <dateTime>429963500</dateTime> + <startingHole> + <number>1</number> + <par>5</par> + </startingHole> + <plays> + <holeNumber>1</holeNumber> + <swings> + <distance>100</distance> + <clubUsed>1</clubUsed> + </swings> + <swings> + <distance>5</distance> + <clubUsed>2</clubUsed> + </swings> + <swings> + <distance>1</distance> + <clubUsed>2</clubUsed> + </swings> + <swingCount>3</swingCount> + <distance>106</distance> + </plays> + <plays> + <holeNumber>2</holeNumber> + <swings> + <distance>1000</distance> + <clubUsed>1</clubUsed> + </swings> + <swings> + <distance>2</distance> + <clubUsed>1</clubUsed> + </swings> + <swingCount>2</swingCount> + <distance>1002</distance> + </plays> + <currentHoleIndex>2</currentHoleIndex> + <totalDistance>1108.0</totalDistance> + <currentHole> + <number>3</number> + <par>4</par> + </currentHole> + <totalSwings>5</totalSwings> + </rounds> + <rounds> + <course>1</course> + <dateTime>2025</dateTime> + <dateTime>10</dateTime> + <dateTime>8</dateTime> + <dateTime>20</dateTime> + <dateTime>19</dateTime> + <dateTime>38</dateTime> + <dateTime>968996400</dateTime> + <startingHole> + <number>9</number> + <par>3</par> + </startingHole> + <plays> + <holeNumber>9</holeNumber> + <swings> + <distance>204</distance> + <clubUsed>1</clubUsed> + </swings> + <swingCount>1</swingCount> + <distance>204</distance> + </plays> + <currentHoleIndex>9</currentHoleIndex> + <totalDistance>204.0</totalDistance> + <currentHole> + <number>10</number> + <par>3</par> + </currentHole> + <totalSwings>1</totalSwings> + </rounds> + </items> + <items> + <nextClubId>1</nextClubId> + <username>sowgro</username> + <passwordHash>-896456343</passwordHash> + <fullName>sowgro</fullName> + </items> +</export> |
