aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorRaven Szewczyk <git@eigenraven.me>2024-05-23 17:40:22 +0100
committerRaven Szewczyk <git@eigenraven.me>2024-05-23 17:40:22 +0100
commit0cce27d780a9fa7afc2e7673c5ba590eaa27ead9 (patch)
treee442a5ba5e623aa8f002045b3556bdc75f3c707b /src/test/java
parent8f3f5f67388cf3319da2a7e31e1c47b0c654d81b (diff)
downloadGT5-Unofficial-0cce27d780a9fa7afc2e7673c5ba590eaa27ead9.tar.gz
GT5-Unofficial-0cce27d780a9fa7afc2e7673c5ba590eaa27ead9.tar.bz2
GT5-Unofficial-0cce27d780a9fa7afc2e7673c5ba590eaa27ead9.zip
GigaGramFab relocation
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/net/glease/ggfab/util/OverclockHelperTest.java47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/test/java/net/glease/ggfab/util/OverclockHelperTest.java b/src/test/java/net/glease/ggfab/util/OverclockHelperTest.java
new file mode 100644
index 0000000000..da030dadc8
--- /dev/null
+++ b/src/test/java/net/glease/ggfab/util/OverclockHelperTest.java
@@ -0,0 +1,47 @@
+package net.glease.ggfab.util;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+
+import org.junit.jupiter.api.Test;
+
+class OverclockHelperTest {
+
+ @Test
+ void normalOverclockImperfect() {
+ // fails recipe
+ assertNull(OverclockHelper.normalOverclock(10000, 10000, 1, false));
+ // no overclock
+ assertEquals(new OverclockHelper.OverclockOutput(30, 64), OverclockHelper.normalOverclock(30, 64, 32, false));
+ // imperfect overclock
+ assertEquals(new OverclockHelper.OverclockOutput(120, 32), OverclockHelper.normalOverclock(30, 64, 128, false));
+ // lots of overclock
+ assertEquals(
+ new OverclockHelper.OverclockOutput(30720, 2),
+ OverclockHelper.normalOverclock(30, 64, 32768, false));
+ // do not overclock beyond useful
+ assertEquals(
+ new OverclockHelper.OverclockOutput(122880, 1),
+ OverclockHelper.normalOverclock(30, 64, 524288, false));
+ }
+
+ @Test
+ void laserOverclock() {
+ // fails recipe
+ assertNull(OverclockHelper.laserOverclock(10000, 10000, 1, 5));
+ // no overclock
+ assertEquals(new OverclockHelper.OverclockOutput(30, 64), OverclockHelper.laserOverclock(30, 64, 32, 0.5f));
+ // 0.3 amp overclock. 0.25 amp would be not in current tier so no point in testing that
+ assertEquals(new OverclockHelper.OverclockOutput(10, 64), OverclockHelper.laserOverclock(10, 64, 32, 0.5f));
+ // laser overclock
+ assertEquals(
+ new OverclockHelper.OverclockOutput(135, 32),
+ OverclockHelper.laserOverclock(30, 64, 32 * 16, 0.5f));
+ // lots of overclock
+ assertEquals(
+ new OverclockHelper.OverclockOutput(22272, 4),
+ OverclockHelper.laserOverclock(30, 64, 32 * 1024, 0.5f));
+ // do not overclock beyond useful
+ assertEquals(new OverclockHelper.OverclockOutput(135, 1), OverclockHelper.laserOverclock(30, 2, 32 * 16, 0.5f));
+ }
+}