diff --git a/src/TriangleChecker.java b/src/TriangleChecker.java index 14f4841..f2fec71 100644 --- a/src/TriangleChecker.java +++ b/src/TriangleChecker.java @@ -47,8 +47,20 @@ public class TriangleChecker { // Analyse der Dreiecksart public static TriangleType checkTriangle(float a, float b, float c) { + if (checkTriangleType(a,b,c) ){ + if(a==b && a==c){return TriangleType.EQUILATERAL;} + if(a==b||b==c||a==c){return TriangleType.ISOSCELES;} + + return TriangleType.NORMAL; + } return TriangleType.NONE; } + public static boolean checkTriangleType(float a, float b, float c) { + if (a <= 0 || b <= 0 || c <= 0) { + return false; + } + return (a + b > c && b + c > a && a + c > b); + } } \ No newline at end of file diff --git a/test/TriangleCheckerTest.java b/test/TriangleCheckerTest.java index 5c9ff57..73e54cd 100644 --- a/test/TriangleCheckerTest.java +++ b/test/TriangleCheckerTest.java @@ -10,12 +10,22 @@ public class TriangleCheckerTest { float a = 2; float b = 3; float c = 4; + float d = 12; + float e = 32; + float f = 7; + float h = 11; + float g = 41; + float i = 4; - // Act - TriangleChecker.TriangleType type = TriangleChecker.checkTriangle(a, b, c); // Assert - assertEquals(TriangleChecker.TriangleType.NORMAL, type); + assertTrue(TriangleChecker.checkTriangleType(a, b, c)); + assertFalse(TriangleChecker.checkTriangleType(a, d, c)); + assertTrue(TriangleChecker.checkTriangleType(e, d, e)); + assertFalse(TriangleChecker.checkTriangleType(a, f, h)); + assertFalse(TriangleChecker.checkTriangleType(i, c, d)); + assertFalse(TriangleChecker.checkTriangleType(g, i, d)); + }