From b04bb3099a297f2c55157b1d55212a0b753dc910 Mon Sep 17 00:00:00 2001
From: Robert_Carbonnier <carbonnierro87753@th-nuernberg.de>
Date: Tue, 25 Jun 2024 18:54:29 +0200
Subject: [PATCH] Finalisierung Aufgabe 5

---
 Aufgaben.md                                   |  1 +
 src/test/java/Helper/Helper_5                 | 56 +++++++++++++++++++
 .../FinancialCalculatorTest.java"             | 55 ------------------
 3 files changed, 57 insertions(+), 55 deletions(-)
 create mode 100644 src/test/java/Helper/Helper_5

diff --git a/Aufgaben.md b/Aufgaben.md
index 8d668dc..585398d 100644
--- a/Aufgaben.md
+++ b/Aufgaben.md
@@ -97,6 +97,7 @@ PI Test bietet noch weitere Mutations-Operationen an. Diese wollen wir in der fo
 **Ziel**: Dieselben Tests mit verschiedenen, immer größer werdenden Mutations-Operator Gruppen zu analysieren und zu verbessern.
 
 1. Führe für die Klassen im Ordner `Übung_5` eine `pitest:mutationCoverage` durch.
+   - Ignoriere im Verlauf der Aufgabe die Klasse `FinancialSummary` Klasse.
    - Lasse dir dabei eine Timestamped Version des Reports zurückgeben.
 2. Verbessere die Tests so das keine gefundenen Mutanten überleben.
 3. Nun wollen wir dasselbe nochmal mit einer größeren Gruppe durchführen. Konfiguriere dafür deine `pom.xml` Datei oder den Maven-Commandline Aufruf so, dass mit der [STRONGER group](https://pitest.org/quickstart/mutators/) mutiert wird.
diff --git a/src/test/java/Helper/Helper_5 b/src/test/java/Helper/Helper_5
new file mode 100644
index 0000000..905074d
--- /dev/null
+++ b/src/test/java/Helper/Helper_5
@@ -0,0 +1,56 @@
+ // Original test case for revenue >= cost
+    @Test
+    public void testIsProfitableOriginal() {
+
+        boolean result = calculator.isProfitable(10.0, 15.0);
+        assertTrue(result);
+    }
+
+    // Test case for mutant where revenue > cost
+    @Test
+    public void testIsProfitableMutant() {
+
+        boolean result = calculator.isProfitable(10.0, 10.0);
+        assertTrue(result); // According to original behavior, should be true
+    }
+// STRONGER:
+    @Test
+    void testCostEqualsRevenue() {
+        double cost = 100.0;
+        double revenue = 100.0;
+        double result = calculator.BreakEvenCosts(cost, revenue);
+        assertEquals(cost, result, "If cost equals revenue, the result should be cost");
+    }
+
+    @Test
+    void testCostNotEqualsRevenue() {
+        double cost = 100.0;
+        double revenue = 150.0;
+        double result = calculator.BreakEvenCosts(cost, revenue);
+        assertEquals(revenue, result, "If cost does not equal revenue, the result should be revenue");
+    }
+
+        @Test
+        public void testPrintYear() {
+            assertEquals("One Year", calculator.printYear(1));
+            assertEquals("Two Years", calculator.printYear(2));
+            assertEquals("Three Years", calculator.printYear(3));
+            assertEquals("Out of spectrum", calculator.printYear(4));
+        }
+//ALL:
+    @Test
+    public void testFinance() {
+        double principal = 1000;
+        double rate = 5;
+        int years = 2;
+        double cost = 500;
+        double revenue = 700;
+
+        FinancialSummary summary = calculator.finance(principal, rate, years, cost, revenue);
+         assertNotNull(summary, "Expected non-null FinancialSummary");
+        assertEquals(principal, summary.getPrincipal());
+        assertEquals(principal * rate / 100 * years, summary.getInterest());
+        assertEquals(principal + principal * rate / 100 * years, summary.getTotalAmount());
+        assertEquals(cost, summary.getCost());
+        assertEquals(revenue, summary.getRevenue());
+    }
\ No newline at end of file
diff --git "a/src/test/java/\303\234bung_5/FinancialCalculatorTest.java" "b/src/test/java/\303\234bung_5/FinancialCalculatorTest.java"
index 8f17978..9148697 100644
--- "a/src/test/java/\303\234bung_5/FinancialCalculatorTest.java"
+++ "b/src/test/java/\303\234bung_5/FinancialCalculatorTest.java"
@@ -57,60 +57,5 @@ public class FinancialCalculatorTest {
         assertFalse(result);
     }
 
-    // Original test case for revenue >= cost
-    @Test
-    public void testIsProfitableOriginal() {
-
-        boolean result = calculator.isProfitable(10.0, 15.0);
-        assertTrue(result);
-    }
-
-    // Test case for mutant where revenue > cost
-    @Test
-    public void testIsProfitableMutant() {
-
-        boolean result = calculator.isProfitable(10.0, 10.0);
-        assertTrue(result); // According to original behavior, should be true
-    }
-// STRONGER:
-    @Test
-    void testCostEqualsRevenue() {
-        double cost = 100.0;
-        double revenue = 100.0;
-        double result = calculator.BreakEvenCosts(cost, revenue);
-        assertEquals(cost, result, "If cost equals revenue, the result should be cost");
-    }
 
-    @Test
-    void testCostNotEqualsRevenue() {
-        double cost = 100.0;
-        double revenue = 150.0;
-        double result = calculator.BreakEvenCosts(cost, revenue);
-        assertEquals(revenue, result, "If cost does not equal revenue, the result should be revenue");
-    }
-
-        @Test
-        public void testPrintYear() {
-            assertEquals("One Year", calculator.printYear(1));
-            assertEquals("Two Years", calculator.printYear(2));
-            assertEquals("Three Years", calculator.printYear(3));
-            assertEquals("Out of spectrum", calculator.printYear(4));
-        }
-//ALL:
-    @Test
-    public void testFinance() {
-        double principal = 1000;
-        double rate = 5;
-        int years = 2;
-        double cost = 500;
-        double revenue = 700;
-
-        FinancialSummary summary = calculator.finance(principal, rate, years, cost, revenue);
-         assertNotNull(summary, "Expected non-null FinancialSummary");
-        assertEquals(principal, summary.getPrincipal());
-        assertEquals(principal * rate / 100 * years, summary.getInterest());
-        assertEquals(principal + principal * rate / 100 * years, summary.getTotalAmount());
-        assertEquals(cost, summary.getCost());
-        assertEquals(revenue, summary.getRevenue());
-    }
 }
-- 
GitLab