test: Added some random test

And did some other minor changes
This commit is contained in:
2026-03-01 15:46:44 +01:00
parent 1c96f99f95
commit 89d81c63ad
21 changed files with 458 additions and 63 deletions

View File

@@ -0,0 +1,72 @@
package cz.jzitnik.server.game;
import cz.jzitnik.common.socket.messages.items.ItemTookFromChest;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import java.util.ArrayList;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
class GameTest {
private Game game;
private static final String PASSWORD = "test123";
@BeforeEach
void setUp() {
game = new Game(PASSWORD, new ArrayList<>());
}
@Test
void testConstructor() {
assertEquals(PASSWORD, game.getPassword());
assertNotNull(game.getPlayers());
assertTrue(game.getPlayers().isEmpty());
}
@Test
void testGetItemModifiers() {
assertNotNull(game.getItemModifiers());
assertTrue(game.getItemModifiers().isEmpty());
}
@Test
void testItemModifiersAreIndependent() {
Game game1 = new Game("pass", new ArrayList<>());
Game game2 = new Game("pass", new ArrayList<>());
game1.getItemModifiers().add(new ItemTookFromChest("room1", 1));
assertTrue(game2.getItemModifiers().isEmpty());
}
@Test
void testPasswordIsStored() {
String customPassword = "secret";
Game customGame = new Game(customPassword, new ArrayList<>());
assertEquals(customPassword, customGame.getPassword());
}
@Test
void testEmptyPassword() {
Game emptyPasswordGame = new Game("", new ArrayList<>());
assertEquals("", emptyPasswordGame.getPassword());
}
@Test
void testNullPassword() {
Game nullPasswordGame = new Game(null, new ArrayList<>());
assertNull(nullPasswordGame.getPassword());
}
@Test
void testPlayersListCanBeModifiedExternally() {
List<Client> players = new ArrayList<>();
Game game = new Game("pass", players);
assertDoesNotThrow(() -> players.add(new Client(null, null, null)));
assertEquals(1, game.getPlayers().size());
}
}

View File

@@ -0,0 +1,87 @@
package cz.jzitnik.server.game;
import cz.jzitnik.common.models.coordinates.RoomCords;
import cz.jzitnik.common.models.coordinates.RoomPart;
import cz.jzitnik.common.models.player.PlayerCreation;
import cz.jzitnik.common.socket.messages.player.PlayerRotation;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class PlayerTest {
private PlayerCreation playerCreation;
private RoomCords cords;
private RoomPart collider;
@BeforeEach
void setUp() {
cords = new RoomCords(100, 200);
collider = new RoomPart(new RoomCords(95, 195), new RoomCords(105, 205));
playerCreation = new PlayerCreation(cords, collider);
}
@Test
void testConstructor() {
Player player = new Player(playerCreation);
assertEquals(playerCreation.getId(), player.getId());
}
@Test
void testGetCords() {
Player player = new Player(playerCreation);
assertNotNull(player.getCords());
assertEquals(cords.getX(), player.getCords().getX());
assertEquals(cords.getY(), player.getCords().getY());
}
@Test
void testDefaultRotation() {
Player player = new Player(playerCreation);
assertEquals(PlayerRotation.FRONT, player.getPlayerRotation());
}
@Test
void testSetPlayerRotation() {
Player player = new Player(playerCreation);
player.setPlayerRotation(PlayerRotation.LEFT);
assertEquals(PlayerRotation.LEFT, player.getPlayerRotation());
player.setPlayerRotation(PlayerRotation.RIGHT);
assertEquals(PlayerRotation.RIGHT, player.getPlayerRotation());
player.setPlayerRotation(PlayerRotation.BACK);
assertEquals(PlayerRotation.BACK, player.getPlayerRotation());
}
@Test
void testSetCurrentRoom() {
Player player = new Player(playerCreation);
player.setCurrentRoom("room1");
assertEquals("room1", player.getCurrentRoom());
player.setCurrentRoom("room2");
assertEquals("room2", player.getCurrentRoom());
}
@Test
void testToPlayerCreation() {
Player player = new Player(playerCreation);
PlayerCreation result = player.toPlayerCreation();
assertNotNull(result);
assertEquals(player.getCords().getX(), result.getPlayerCords().getX());
assertEquals(player.getCords().getY(), result.getPlayerCords().getY());
}
@Test
void testIdIsFinal() {
Player player = new Player(playerCreation);
int originalId = player.getId();
playerCreation.setId(999);
assertEquals(originalId, player.getId());
}
}