Files
new-shapes/src/test/java/ovh/gasser/newshapes/shapes/STriangleTest.java
Thibaud 211f15658b test: add core unit tests
- Add JUnit 5 Jupiter dependencies to pom.xml
- Add maven-surefire-plugin for test execution
- Add AbstractShapeTest for base class methods
- Add SCircleTest, SRectangleTest, STriangleTest, STextTest

Tests cover: creation, bounds, clone, resize (AbstractShape)
2026-03-27 14:24:25 +01:00

38 lines
1.2 KiB
Java

package ovh.gasser.newshapes.shapes;
import org.junit.jupiter.api.Test;
import java.awt.Color;
import java.awt.Rectangle;
import static org.junit.jupiter.api.Assertions.*;
class STriangleTest {
@Test
void testCreate() {
STriangle triangle = STriangle.create(10, 20, 50, Color.RED, Color.BLACK);
assertNotNull(triangle);
assertEquals(50, triangle.getBounds().width);
assertEquals(50, triangle.getBounds().height);
}
@Test
void testCloneCreatesIndependentCopy() {
STriangle original = STriangle.create(0, 0, 30, Color.BLUE, Color.BLACK);
Object cloneObj = original.clone();
assertNotSame(original, cloneObj);
assertTrue(cloneObj instanceof STriangle);
STriangle clone = (STriangle) cloneObj;
assertEquals(original.getBounds(), clone.getBounds());
}
@Test
void testBoundsAreSetCorrectly() {
STriangle triangle = STriangle.create(5, 10, 25, Color.GREEN, Color.BLACK);
Rectangle bounds = triangle.getBounds();
assertEquals(5, bounds.x);
assertEquals(10, bounds.y);
assertEquals(25, bounds.width);
assertEquals(25, bounds.height);
}
}