You've already forked Arcturus-Morningstar-Extended
mirror of
https://github.com/duckietm/Arcturus-Morningstar-Extended.git
synced 2026-06-20 07:26:18 +00:00
fix(rcon): constrain setrank requests
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
package com.eu.habbo.messages.rcon;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
|
||||
class SetRankRequestGuardTest {
|
||||
@Test
|
||||
void acceptsKnownRanksWithinTheRconCeiling() {
|
||||
assertNull(SetRankRequestGuard.validate(1, 5, 12, rankId -> rankId == 5));
|
||||
}
|
||||
|
||||
@Test
|
||||
void rejectsInvalidUsersRanksAndUnknownRanks() {
|
||||
assertEquals("invalid user", SetRankRequestGuard.validate(0, 5, 12, rankId -> true));
|
||||
assertEquals("invalid rank", SetRankRequestGuard.validate(1, 0, 12, rankId -> true));
|
||||
assertEquals("invalid rank", SetRankRequestGuard.validate(1, 5, 12, rankId -> false));
|
||||
}
|
||||
|
||||
@Test
|
||||
void rejectsRanksAboveConfiguredCeiling() {
|
||||
assertEquals("rank exceeds rcon ceiling", SetRankRequestGuard.validate(1, 13, 12, rankId -> true));
|
||||
}
|
||||
|
||||
@Test
|
||||
void parsesInvalidMaxRankAsDefaultCeiling() {
|
||||
assertEquals(SetRankRequestGuard.DEFAULT_MAX_RANK, SetRankRequestGuard.parseMaxRank(null));
|
||||
assertEquals(SetRankRequestGuard.DEFAULT_MAX_RANK, SetRankRequestGuard.parseMaxRank("0"));
|
||||
assertEquals(7, SetRankRequestGuard.parseMaxRank("7"));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user