aboutsummaryrefslogtreecommitdiff
path: root/src/test/kotlin
diff options
context:
space:
mode:
authorhannibal2 <24389977+hannibal002@users.noreply.github.com>2023-02-22 18:33:20 +0100
committerGitHub <noreply@github.com>2023-02-22 18:33:20 +0100
commitcf3f08e4fd340ab331a4b61c1159fb527027ade7 (patch)
treef0fa524ef72817eeab73bdacc6df0f360b646060 /src/test/kotlin
parent30bd46e46aab73e2927fa5631c49ace84708e590 (diff)
downloadNotEnoughUpdates-cf3f08e4fd340ab331a4b61c1159fb527027ade7.tar.gz
NotEnoughUpdates-cf3f08e4fd340ab331a4b61c1159fb527027ade7.tar.bz2
NotEnoughUpdates-cf3f08e4fd340ab331a4b61c1159fb527027ade7.zip
Added Sky Mall to Dwarven Overlay (#604)
* Added Sky Mall to Dwarven Overlay. * Made SkyBlockTime a data object. * Added color to names and display item per different perk variant. * Added daySuffix support for days greater 10. * Data classes have a copy method already. * Green color does not work. * Fixed a bug in monthName. * Add Unit Tests and make use of Instant * Fixed Sky Mall overlay showing in crystal hollows. * 11st 12nd 13rd --------- Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com> Co-authored-by: nea <nea@nea.moe> Co-authored-by: nopo <nopotheemail@gmail.com>
Diffstat (limited to 'src/test/kotlin')
-rw-r--r--src/test/kotlin/io/github/moulberry/notenoughupdates/util/SkyBlockTimeTest.kt66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/test/kotlin/io/github/moulberry/notenoughupdates/util/SkyBlockTimeTest.kt b/src/test/kotlin/io/github/moulberry/notenoughupdates/util/SkyBlockTimeTest.kt
new file mode 100644
index 00000000..8d762460
--- /dev/null
+++ b/src/test/kotlin/io/github/moulberry/notenoughupdates/util/SkyBlockTimeTest.kt
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2023 NotEnoughUpdates contributors
+ *
+ * This file is part of NotEnoughUpdates.
+ *
+ * NotEnoughUpdates is free software: you can redistribute it
+ * and/or modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation, either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * NotEnoughUpdates is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with NotEnoughUpdates. If not, see <https://www.gnu.org/licenses/>.
+ */
+
+package io.github.moulberry.notenoughupdates.util
+
+import org.junit.jupiter.api.Assertions.assertEquals
+import org.junit.jupiter.api.Test
+import java.time.Instant
+
+class SkyBlockTimeTest {
+ @Test
+ fun someRandomTimestamp() {
+ val sbt = SkyBlockTime.fromInstant(Instant.ofEpochSecond(1676236163L))
+ assertEquals(SkyBlockTime(260, 10, 7, 17, 15, 38), sbt)
+ assertEquals("Early Winter", sbt.monthName)
+ }
+
+ @Test
+ fun isReversibleEquivalent() {
+ val ts = 167623132230L
+ val someTimeStamp = Instant.ofEpochSecond(ts)
+ assertEquals(someTimeStamp.toEpochMilli(), SkyBlockTime.fromInstant(someTimeStamp).toMillis())
+ }
+
+ @Test
+ fun monthNames() {
+ assertEquals(
+ listOf(
+ "Early Spring",
+ "Spring",
+ "Late Spring",
+ "Early Summer",
+ "Summer",
+ "Late Summer",
+ "Early Autumn",
+ "Autumn",
+ "Late Autumn",
+ "Early Winter",
+ "Winter",
+ "Late Winter"
+ ), (1..12).map { SkyBlockTime.monthName(it) })
+ }
+
+ @Test
+ fun theOriginOfTime() {
+ assertEquals(SkyBlockTime(year = 0), SkyBlockTime.fromInstant(Instant.ofEpochMilli(1559829300000L)))
+ }
+
+
+}