Merge pull request #236 from simoleo89/fix/wired-string-parsing

fix(wired): bound reward amounts
This commit is contained in:
DuckieTM
2026-06-18 12:31:59 +02:00
committed by GitHub
5 changed files with 78 additions and 9 deletions
@@ -0,0 +1,28 @@
package com.eu.habbo.habbohotel.items.interactions.wired;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
class WiredNumericInputGuardTest {
@Test
void rejectsInvalidOrNonPositiveAmounts() {
assertEquals(0, WiredNumericInputGuard.parsePositiveAmount(null, 100));
assertEquals(0, WiredNumericInputGuard.parsePositiveAmount("nope", 100));
assertEquals(0, WiredNumericInputGuard.parsePositiveAmount("0", 100));
assertEquals(0, WiredNumericInputGuard.parsePositiveAmount("-5", 100));
}
@Test
void clampsAmountsToConfiguredMaximum() {
assertEquals(50, WiredNumericInputGuard.parsePositiveAmount("50", 100));
assertEquals(100, WiredNumericInputGuard.parsePositiveAmount("500", 100));
}
@Test
void appliesAbsoluteMaximumEvenWhenConfiguredTooHigh() {
assertEquals(WiredNumericInputGuard.MAX_ABSOLUTE_AMOUNT,
WiredNumericInputGuard.parsePositiveAmount("999999999", Integer.MAX_VALUE));
}
}