diff options
| author | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2025-02-14 21:12:32 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-02-15 10:12:32 +0800 |
| commit | 285085d01f1fa5ffe55d88975f6155a486118aed (patch) | |
| tree | 861e74f11277fa15d85e756ff6fd0749cbeeded2 /src/test/java | |
| parent | 2270b4925aa1f7c4e64371c85e8354bb2f3fdb55 (diff) | |
| download | Skyblocker-285085d01f1fa5ffe55d88975f6155a486118aed.tar.gz Skyblocker-285085d01f1fa5ffe55d88975f6155a486118aed.tar.bz2 Skyblocker-285085d01f1fa5ffe55d88975f6155a486118aed.zip | |
Formatters (#1151)
* Formatters
* java yap
---------
Co-authored-by: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com>
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/de/hysky/skyblocker/utils/FormattersTest.java | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/test/java/de/hysky/skyblocker/utils/FormattersTest.java b/src/test/java/de/hysky/skyblocker/utils/FormattersTest.java new file mode 100644 index 00000000..a564eb06 --- /dev/null +++ b/src/test/java/de/hysky/skyblocker/utils/FormattersTest.java @@ -0,0 +1,61 @@ +package de.hysky.skyblocker.utils; + +import java.time.Instant; +import java.util.TimeZone; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + +public class FormattersTest { + + @BeforeAll + public static void setupEnvironment() { + TimeZone.setDefault(TimeZone.getTimeZone("UTC")); + } + + @Test + void testIntegerNumbers() { + Assertions.assertEquals("100,000,000", Formatters.INTEGER_NUMBERS.format(100_000_000)); + Assertions.assertEquals("99,999,999", Formatters.INTEGER_NUMBERS.format(99_999_999.4)); + Assertions.assertEquals("88,888,888", Formatters.INTEGER_NUMBERS.format(88_888_888.5)); //Half even rounding + Assertions.assertEquals("77,777,777", Formatters.INTEGER_NUMBERS.format(77_777_776.7)); + } + + @Test + void testDoubleNumbers() { + Assertions.assertEquals("100,000,000.15", Formatters.DOUBLE_NUMBERS.format(100_000_000.152341)); + Assertions.assertEquals("99,999,999.98", Formatters.DOUBLE_NUMBERS.format(99_999_999.978)); + } + + @Test + void testFloatNumbers() { + Assertions.assertEquals("100,000,000.8", Formatters.FLOAT_NUMBERS.format(100_000_000.7834)); + Assertions.assertEquals("99,999,999.8", Formatters.FLOAT_NUMBERS.format(99_999_999.84243)); + } + + @Test + void testShortIntegerNumbers() { + Assertions.assertEquals("16B", Formatters.SHORT_INTEGER_NUMBERS.format(15_500_000_000L)); + Assertions.assertEquals("10M", Formatters.SHORT_INTEGER_NUMBERS.format(10_200_000)); + Assertions.assertEquals("5K", Formatters.SHORT_INTEGER_NUMBERS.format(5_000)); + } + + @Test + void testShortFloatNumbers() { + Assertions.assertEquals("14.5B", Formatters.SHORT_FLOAT_NUMBERS.format(14_500_000_000L)); + Assertions.assertEquals("8.3M", Formatters.SHORT_FLOAT_NUMBERS.format(8_300_000)); + Assertions.assertEquals("24.7K", Formatters.SHORT_FLOAT_NUMBERS.format(24_740)); + } + + @Test + void testDates() { + long Thu_Jan_30th_2025_at_4_10_00_PM = 1738253400000L; + long Fri_Jan_31st_2025_at_11_11_00_AM = 1738321860000L; + long Sat_Feb_1st_2025_at_12_00_01_AM = 1738368001000L; + + Assertions.assertEquals("Thu Jan 30 2025 4:10:00 PM", Formatters.DATE_FORMATTER.format(Instant.ofEpochMilli(Thu_Jan_30th_2025_at_4_10_00_PM))); + Assertions.assertEquals("Fri Jan 31 2025 11:11:00 AM", Formatters.DATE_FORMATTER.format(Instant.ofEpochMilli(Fri_Jan_31st_2025_at_11_11_00_AM))); + Assertions.assertEquals("Sat Feb 1 2025 12:00:01 AM", Formatters.DATE_FORMATTER.format(Instant.ofEpochMilli(Sat_Feb_1st_2025_at_12_00_01_AM))); + } +} |
