Skip to content

Commit 70d4a9a

Browse files
committed
Update version number to 3.7.16
1 parent 5092e85 commit 70d4a9a

File tree

6 files changed

+77
-37
lines changed

6 files changed

+77
-37
lines changed

AdvancedCore/pom.xml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<modelVersion>4.0.0</modelVersion>
55
<groupId>com.bencodez</groupId>
66
<artifactId>advancedcore</artifactId>
7-
<version>3.7.16-SNAPSHOT</version>
7+
<version>3.7.16</version>
88
<packaging>jar</packaging>
99
<name>AdvancedCore</name>
1010
<properties>
@@ -184,7 +184,7 @@
184184
<dependency>
185185
<groupId>com.bencodez</groupId>
186186
<artifactId>simpleapi</artifactId>
187-
<version>0.0.6-SNAPSHOT</version>
187+
<version>0.0.7-SNAPSHOT</version>
188188
<scope>compile</scope>
189189
</dependency>
190190
<dependency>
@@ -300,10 +300,9 @@
300300
<dependency>
301301
<groupId>org.mockito</groupId>
302302
<artifactId>mockito-core</artifactId>
303-
<version>5.17.0</version>
303+
<version>5.18.0</version>
304304
<scope>test</scope>
305305
</dependency>
306-
307306
</dependencies>
308307
<profiles>
309308
<profile>

AdvancedCore/src/test/java/com/bencodez/advancedcore/tests/AdvancedCoreUserTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,4 +93,4 @@ void setOfflineRewards_withinLimit() {
9393
user.setOfflineRewards(rewards);
9494
verify(data).setStringList("offlineRewardsPath", rewards);
9595
}
96-
}
96+
}

AdvancedCore/src/test/java/com/bencodez/advancedcore/tests/BackupHandleTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
package com.bencodez.advancedcore.tests;
32

43
import static org.junit.jupiter.api.Assertions.assertFalse;
@@ -104,4 +103,4 @@ public void testCheckOldBackups() throws IOException {
104103
assertFalse(oldBackup.exists(), "Old backup should be deleted");
105104
assertTrue(newBackup.exists(), "New backup should not be deleted");
106105
}
107-
}
106+
}

AdvancedCore/src/test/java/com/bencodez/advancedcore/tests/BaseTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
package com.bencodez.advancedcore.tests;
32

43
import static org.mockito.Mockito.mock;
@@ -49,4 +48,4 @@ public void close() {
4948
advancedCorePluginMockedStatic.close();
5049
}
5150
}
52-
}
51+
}

AdvancedCore/src/test/java/com/bencodez/advancedcore/tests/TimeCheckerTest.java

Lines changed: 70 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,84 +1,127 @@
1-
21
package com.bencodez.advancedcore.tests;
32

43
import static org.junit.jupiter.api.Assertions.assertFalse;
54
import static org.junit.jupiter.api.Assertions.assertTrue;
65
import static org.mockito.ArgumentMatchers.anyInt;
76
import static org.mockito.ArgumentMatchers.anyString;
7+
import static org.mockito.Mockito.mock;
8+
import static org.mockito.Mockito.mockStatic;
9+
import static org.mockito.Mockito.reset;
810
import static org.mockito.Mockito.verify;
911
import static org.mockito.Mockito.when;
1012

1113
import java.time.LocalDateTime;
1214
import java.time.temporal.IsoFields;
1315

16+
import org.junit.jupiter.api.AfterEach;
1417
import org.junit.jupiter.api.BeforeEach;
1518
import org.junit.jupiter.api.Test;
19+
import org.mockito.MockedStatic;
1620
import org.mockito.Mockito;
1721

22+
import com.bencodez.advancedcore.AdvancedCorePlugin;
1823
import com.bencodez.advancedcore.api.time.TimeChecker;
24+
import com.bencodez.advancedcore.data.ServerData;
25+
import com.bencodez.advancedcore.AdvancedCoreConfigOptions;
1926

2027
public class TimeCheckerTest {
2128

29+
private AdvancedCorePlugin plugin;
30+
private AdvancedCoreConfigOptions options;
31+
private ServerData serverDataFile;
32+
private MockedStatic<AdvancedCorePlugin> pluginStatic;
2233
private BaseTest baseTest;
2334

2435
@BeforeEach
2536
public void setUp() {
37+
// 1) create mocks
38+
plugin = mock(AdvancedCorePlugin.class);
39+
options = mock(AdvancedCoreConfigOptions.class);
40+
serverDataFile = mock(ServerData.class);
41+
42+
// 3) stub plugin getters
43+
when(plugin.getOptions()).thenReturn(options);
44+
when(plugin.getServerDataFile()).thenReturn(serverDataFile);
45+
46+
// 4) default option values used in tests
47+
when(options.getTimeZone()).thenReturn("UTC");
48+
when(options.getTimeHourOffSet()).thenReturn(2);
49+
2650
baseTest = BaseTest.getInstance();
27-
when(baseTest.options.getTimeZone()).thenReturn("UTC");
28-
when(baseTest.options.getTimeHourOffSet()).thenReturn(2);
51+
}
52+
53+
@AfterEach
54+
public void tearDown() {
55+
2956
}
3057

3158
@Test
3259
public void testDayWeekMonthChanges() {
33-
when(baseTest.serverDataFile.getPrevDay()).thenReturn(31);
34-
when(baseTest.serverDataFile.getPrevWeekDay()).thenReturn(52);
35-
when(baseTest.serverDataFile.getPrevMonth()).thenReturn("DECEMBER");
60+
// initial “previous” values
61+
when(serverDataFile.getPrevDay()).thenReturn(31);
62+
when(serverDataFile.getPrevWeekDay()).thenReturn(52);
63+
when(serverDataFile.getPrevMonth()).thenReturn("DECEMBER");
3664

37-
// Mock the set methods
38-
Mockito.doNothing().when(baseTest.serverDataFile).setPrevDay(anyInt());
39-
Mockito.doNothing().when(baseTest.serverDataFile).setPrevWeekDay(anyInt());
40-
Mockito.doNothing().when(baseTest.serverDataFile).setPrevMonth(anyString());
65+
// stub the setters as no-ops
66+
Mockito.doNothing().when(serverDataFile).setPrevDay(anyInt());
67+
Mockito.doNothing().when(serverDataFile).setPrevWeekDay(anyInt());
68+
Mockito.doNothing().when(serverDataFile).setPrevMonth(anyString());
4169

42-
TimeChecker timeChecker = Mockito.spy(new TimeChecker(baseTest.plugin));
70+
// spy a fresh TimeChecker
71+
TimeChecker timeChecker = Mockito.spy(new TimeChecker(plugin));
4372

44-
// Simulate each day of the year
4573
for (int month = 1; month <= 12; month++) {
46-
int daysInMonth = LocalDateTime.of(2023, month, 1, 0, 0).getMonth().length(false);
74+
int daysInMonth = LocalDateTime
75+
.of(2023, month, 1, 0, 0)
76+
.getMonth()
77+
.length(false);
78+
4779
for (int day = 1; day <= daysInMonth; day++) {
4880
LocalDateTime mockedTime = LocalDateTime.of(2023, month, day, 12, 0);
4981
Mockito.doReturn(mockedTime).when(timeChecker).getTime();
5082

51-
boolean dayChanged = timeChecker.hasDayChanged(true);
52-
boolean weekChanged = timeChecker.hasWeekChanged(true);
83+
boolean dayChanged = timeChecker.hasDayChanged(true);
84+
boolean weekChanged = timeChecker.hasWeekChanged(true);
5385
boolean monthChanged = timeChecker.hasMonthChanged(true);
5486

87+
// day should always change
5588
assertTrue(dayChanged);
5689

90+
// month only changes on the 1st
5791
if (day == 1) {
5892
assertTrue(monthChanged);
5993
} else {
6094
assertFalse(monthChanged);
6195
}
6296

63-
verify(baseTest.serverDataFile).setPrevDay(day);
97+
// verify we recorded the new day
98+
verify(serverDataFile).setPrevDay(day);
99+
100+
// compute this day's week and check if it rolled over
64101
int weekOfYear = mockedTime.get(IsoFields.WEEK_OF_WEEK_BASED_YEAR);
65-
if (weekOfYear != mockedTime.minusDays(1).get(IsoFields.WEEK_OF_WEEK_BASED_YEAR)) {
102+
int prevWeekOfYear = mockedTime.minusDays(1)
103+
.get(IsoFields.WEEK_OF_WEEK_BASED_YEAR);
104+
105+
if (weekOfYear != prevWeekOfYear) {
66106
assertTrue(weekChanged);
67-
verify(baseTest.serverDataFile).setPrevWeekDay(weekOfYear);
107+
verify(serverDataFile).setPrevWeekDay(weekOfYear);
68108
}
109+
110+
// verify month setter on the 1st
69111
if (day == 1) {
70-
verify(baseTest.serverDataFile).setPrevMonth(mockedTime.getMonth().toString());
112+
verify(serverDataFile).setPrevMonth(mockedTime.getMonth().toString());
71113
}
72114

73-
when(baseTest.serverDataFile.getPrevDay()).thenReturn(day);
74-
when(baseTest.serverDataFile.getPrevWeekDay()).thenReturn(weekOfYear);
75-
when(baseTest.serverDataFile.getPrevMonth()).thenReturn(mockedTime.getMonth().toString());
115+
// prepare for next iteration: update “previous” getters
116+
when(serverDataFile.getPrevDay()).thenReturn(day);
117+
when(serverDataFile.getPrevWeekDay()).thenReturn(weekOfYear);
118+
when(serverDataFile.getPrevMonth()).thenReturn(mockedTime.getMonth().toString());
76119

77-
// Reset the mock's invocation count
78-
Mockito.reset(baseTest.serverDataFile);
79-
when(baseTest.serverDataFile.getPrevDay()).thenReturn(day);
80-
when(baseTest.serverDataFile.getPrevWeekDay()).thenReturn(weekOfYear);
81-
when(baseTest.serverDataFile.getPrevMonth()).thenReturn(mockedTime.getMonth().toString());
120+
// reset invocation counts so verifies start fresh each loop
121+
reset(serverDataFile);
122+
when(serverDataFile.getPrevDay()).thenReturn(day);
123+
when(serverDataFile.getPrevWeekDay()).thenReturn(weekOfYear);
124+
when(serverDataFile.getPrevMonth()).thenReturn(mockedTime.getMonth().toString());
82125
}
83126
}
84127
}

AdvancedCore/src/test/java/com/bencodez/advancedcore/tests/ZipCreatorTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,4 +66,4 @@ public void testCreate() throws IOException {
6666
assertTrue(zipFile.exists(), "Zip file should be created");
6767
assertTrue(zipFile.length() > 0, "Zip file should not be empty");
6868
}
69-
}
69+
}

0 commit comments

Comments
 (0)