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

@@ -59,5 +59,11 @@
<version>2.0.17</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>

View File

@@ -1,11 +0,0 @@
package cz.jzitnik.common.socket.messages;
import cz.jzitnik.common.socket.SocketMessage;
/**
* Test message for socket communication.
*
* @author Jakub Žitník (jzitnik)
*/
public class Test implements SocketMessage {
}

View File

@@ -0,0 +1,76 @@
package cz.jzitnik.common.models.coordinates;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
import static org.junit.jupiter.api.Assertions.*;
class RoomCordsTest {
@Test
void testConstructor() {
RoomCords cords = new RoomCords(10, 20);
assertEquals(10, cords.getX());
assertEquals(20, cords.getY());
}
@Test
void testUpdateCordsWithInts() {
RoomCords cords = new RoomCords(0, 0);
cords.updateCords(5, 10);
assertEquals(5, cords.getX());
assertEquals(10, cords.getY());
}
@Test
void testUpdateCordsWithRoomCords() {
RoomCords cords = new RoomCords(0, 0);
RoomCords newCords = new RoomCords(15, 25);
cords.updateCords(newCords);
assertEquals(15, cords.getX());
assertEquals(25, cords.getY());
}
@Test
void testCalculateDistance() {
RoomCords cords1 = new RoomCords(0, 0);
RoomCords cords2 = new RoomCords(3, 4);
double distance = cords1.calculateDistance(cords2);
assertEquals(5.0, distance, 0.0001);
}
@Test
void testCalculateDistanceToSelf() {
RoomCords cords = new RoomCords(5, 5);
double distance = cords.calculateDistance(cords);
assertEquals(0.0, distance, 0.0001);
}
@Test
void testCalculateDistanceThrowsOnNull() {
RoomCords cords = new RoomCords(0, 0);
assertThrows(IllegalArgumentException.class, () -> cords.calculateDistance(null));
}
@Test
void testClone() {
RoomCords original = new RoomCords(7, 8);
RoomCords cloned = original.clone();
assertEquals(original.getX(), cloned.getX());
assertEquals(original.getY(), cloned.getY());
assertNotSame(original, cloned);
}
@ParameterizedTest
@CsvSource({
"0, 0, 10, 10",
"5, 5, 15, 15",
"-5, -5, 0, 0"
})
void testUpdateCordsWithValues(int x, int y, int expectedX, int expectedY) {
RoomCords cords = new RoomCords(x, y);
assertEquals(x, cords.getX());
assertEquals(y, cords.getY());
}
}

View File

@@ -0,0 +1,73 @@
package cz.jzitnik.common.models.coordinates;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class RoomPartTest {
@Test
void testConstructor() {
RoomCords start = new RoomCords(0, 0);
RoomCords end = new RoomCords(10, 10);
RoomPart roomPart = new RoomPart(start, end);
assertEquals(start, roomPart.getStart());
assertEquals(end, roomPart.getEnd());
}
@Test
void testIsWithinReturnsTrueForPointInside() {
RoomPart roomPart = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
assertTrue(roomPart.isWithin(new RoomCords(5, 5)));
}
@Test
void testIsWithinReturnsTrueForPointOnEdge() {
RoomPart roomPart = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
assertTrue(roomPart.isWithin(new RoomCords(0, 0)));
assertTrue(roomPart.isWithin(new RoomCords(10, 10)));
}
@Test
void testIsWithinReturnsFalseForPointOutside() {
RoomPart roomPart = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
assertFalse(roomPart.isWithin(new RoomCords(15, 5)));
assertFalse(roomPart.isWithin(new RoomCords(5, 15)));
assertFalse(roomPart.isWithin(new RoomCords(-1, 5)));
}
@Test
void testIsOverlappingReturnsTrueForOverlappingParts() {
RoomPart part1 = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
RoomPart part2 = new RoomPart(new RoomCords(5, 5), new RoomCords(15, 15));
assertTrue(part1.isOverlapping(part2));
}
@Test
void testIsOverlappingReturnsTrueForIdenticalParts() {
RoomPart part1 = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
RoomPart part2 = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
assertTrue(part1.isOverlapping(part2));
}
@Test
void testIsOverlappingReturnsFalseForNonOverlappingParts() {
RoomPart part1 = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
RoomPart part2 = new RoomPart(new RoomCords(20, 20), new RoomCords(30, 30));
assertFalse(part1.isOverlapping(part2));
}
@Test
void testIsOverlappingReturnsTrueForAdjacentParts() {
RoomPart part1 = new RoomPart(new RoomCords(0, 0), new RoomCords(10, 10));
RoomPart part2 = new RoomPart(new RoomCords(10, 0), new RoomCords(20, 10));
assertTrue(part1.isOverlapping(part2));
}
@Test
void testIsOverlappingWithOnePartInsideAnother() {
RoomPart part1 = new RoomPart(new RoomCords(0, 0), new RoomCords(20, 20));
RoomPart part2 = new RoomPart(new RoomCords(5, 5), new RoomCords(15, 15));
assertTrue(part1.isOverlapping(part2));
}
}