From dc48558e844b4460c364ce2707f6f8fa690a5e86 Mon Sep 17 00:00:00 2001
From: noapo <noa.pozzodiborgo@gmail.com>
Date: Tue, 31 Jan 2023 14:51:10 +0100
Subject: [PATCH] couvertur des tests

---
 README.md                                     |  3 +
 .../java/fr/nancy/iut/CalcEngineTester.java   | 74 -------------------
 src/main/java/fr/nancy/iut/Calculator.java    | 11 +++
 src/main/java/fr/nancy/iut/UserInterface.java | 22 ++++++
 .../java/fr/nancy/iut/CalcEngineTest.java     | 18 ++---
 5 files changed, 45 insertions(+), 83 deletions(-)
 delete mode 100755 src/main/java/fr/nancy/iut/CalcEngineTester.java

diff --git a/README.md b/README.md
index 71a3e93..cdc0227 100755
--- a/README.md
+++ b/README.md
@@ -202,6 +202,9 @@ Pour vérifier que votre programme respecte les conventions de codage vous pouve
 
 Pour la partie **test** du programme c'est moins réjouissant, en effet Hacker a créé une classe de test de son cru, plutôt que d'utiliser le *framework* `Junit`, cela peut être une bonne idée dans certains cas notamment pour les tests d'*intégration* (quand on regroupe plusieurs classes ensemble), mais les tests de Hacker laissent faussement penser que le programme fonctionne. Pour apercevoir les dysfonctionnements il suffit pour d'exécuter les méthodes `testPlus` et `testMinus` deux fois de suite.
 
+Vérifiez la couverture de code : `mvn jacoco:prepare-agent install jacoco:report`
+
+Puis visualisez le résultat : `open target/site/jacoco/index.html`
 
 ## Débogage
 
diff --git a/src/main/java/fr/nancy/iut/CalcEngineTester.java b/src/main/java/fr/nancy/iut/CalcEngineTester.java
deleted file mode 100755
index dc31dd9..0000000
--- a/src/main/java/fr/nancy/iut/CalcEngineTester.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package fr.nancy.iut;
-
-/**
- * Test the CalcEngine class.
- * 
- * @author Hacker T. Largebrain 
- * @version 1.0
- */
-// package calculator;
-
-public class CalcEngineTester
-{
-    // The engine to be tested.
-    private CalcEngine engine;
-
-    /**
-     * Constructor for objects of class CalcEngineTester
-     */
-    public CalcEngineTester()
-    {
-        engine = new CalcEngine();
-    }
-    
-    /**
-     * Test everything.
-     */
-    public void testAll()
-    {
-        System.out.println("Testing the addition operation.");
-        System.out.println("The result is: " + testPlus());
-        System.out.println("Testing the subtraction operation.");
-        System.out.println("The result is: " + testMinus());
-        System.out.println("All tests passed.");
-    }
-
-    /**
-     * Test the plus operation of the engine.
-     * @return the result of calculating 3+4.
-     */
-    public int testPlus()
-    {
-        // Make sure the engine is in a valid starting state.
-        engine.clear();
-        // Simulate the key presses: 3 + 4 =
-        engine.numberPressed(3);
-        engine.plus();
-        engine.numberPressed(4);
-        engine.equals();
-        // Return the result, which should be 7.
-        return engine.getDisplayValue();
-    }
-
-    /**
-     * Test the minus operation of the engine.
-     * @return the result of calculating 9 - 4.
-     */
-    public int testMinus()
-    {
-        // Make sure the engine is in a valid starting state.
-        engine.clear();
-        // Simulate the presses: 9 - 4 =
-        engine.numberPressed(9);
-        engine.minus();
-        engine.numberPressed(4);
-        engine.equals();
-        // Return the result, which should be 5.
-        return engine.getDisplayValue();
-    }
-
-    public static void main(String[] args) {
-        CalcEngineTester tester =  new CalcEngineTester();
-        tester.testAll();
-    }
-}
diff --git a/src/main/java/fr/nancy/iut/Calculator.java b/src/main/java/fr/nancy/iut/Calculator.java
index 31d3c3f..4209ddf 100755
--- a/src/main/java/fr/nancy/iut/Calculator.java
+++ b/src/main/java/fr/nancy/iut/Calculator.java
@@ -37,4 +37,15 @@ public class Calculator
     public static void main(String[] args) {
         (new Calculator()).show();
     }
+
+    /**
+     * @return the engine
+     */
+    public CalcEngine getEngine() {return engine;}
+
+    /**
+     * @return the gui
+     */
+    public UserInterface getGui() {return gui;}
+
 }
diff --git a/src/main/java/fr/nancy/iut/UserInterface.java b/src/main/java/fr/nancy/iut/UserInterface.java
index 45c3ae3..453f59e 100755
--- a/src/main/java/fr/nancy/iut/UserInterface.java
+++ b/src/main/java/fr/nancy/iut/UserInterface.java
@@ -163,4 +163,26 @@ public class UserInterface
 
         showingAuthor = !showingAuthor;
     }
+    /**
+     * Getter visible
+     */
+    public boolean getVisible()
+    {
+        return frame.isVisible();
+    }
+
+    /**
+     * getter Display
+     */
+    public JTextField getDisplay()
+    {
+        return display;
+    }
+
+
+    public JLabel getStatus()
+    {
+        return status;
+    }
+
 }
diff --git a/src/test/java/fr/nancy/iut/CalcEngineTest.java b/src/test/java/fr/nancy/iut/CalcEngineTest.java
index 0b38cf4..c66b6d4 100644
--- a/src/test/java/fr/nancy/iut/CalcEngineTest.java
+++ b/src/test/java/fr/nancy/iut/CalcEngineTest.java
@@ -16,7 +16,7 @@ public class CalcEngineTest {
      * @return the number pressed.
      */
     @Test
-    void testClear() {
+    public void testClear() {
         // Je crée une nouvelle calculatrice
         CalcEngine calculette = new CalcEngine();
         // Je lui donne une valeur et je vérifie que la valeur en sortie est bien celle que je lui ai donnée
@@ -33,7 +33,7 @@ public class CalcEngineTest {
      * @return the result of calculating 9-2.
      */
     @Test
-    void testEquals() {
+    public void testEquals() {
         CalcEngine calculette = new CalcEngine();
 
         ////Je fais le teste en faisant la soustraction des 2 chiffres
@@ -56,7 +56,7 @@ public class CalcEngineTest {
      * Test of getAuthor method, of class CalcEngine.
      */
     @Test
-    void testGetAuthor() {
+    public void testGetAuthor() {
         CalcEngine calculette = new CalcEngine();
 
         assertEquals("Hacker T. Largebrain", calculette.getAuthor());
@@ -66,7 +66,7 @@ public class CalcEngineTest {
      * @return the tow number pressed.
      */
     @Test
-    void testGetDisplayValue() {
+    public void testGetDisplayValue() {
         CalcEngine calculette = new CalcEngine();
 
         //Je fais le teste en vérifiant que ce que je rentre est bien égale à ce que m'affiche la calculatrice
@@ -80,7 +80,7 @@ public class CalcEngineTest {
      * Test of getTitle method, of class CalcEngine.
      */
     @Test
-    void testGetTitle() {
+    public void testGetTitle() {
         // //Je fais le teste pour la valeur voulut
         String res = "Super Calculator";
         CalcEngine calculette = new CalcEngine();
@@ -93,7 +93,7 @@ public class CalcEngineTest {
      * Test of getVersion method, of class CalcEngine.
      */
     @Test
-    void testGetVersion() {
+    public void testGetVersion() {
         // //Je fais le teste pour la valeur voulut
         String res = "version 0.2";
         CalcEngine calculette = new CalcEngine();
@@ -107,7 +107,7 @@ public class CalcEngineTest {
      * @return the result of calculating 8-2.
      */
     @Test
-    void testMinus() {
+    public void testMinus() {
         CalcEngine calculette = new CalcEngine();
         //Je fais le teste en faisant la soustraction des 2 chiffres
         calculette.numberPressed(8);
@@ -123,7 +123,7 @@ public class CalcEngineTest {
      * @return the tow number pressed.
      */
     @Test
-    void testNumberPressed() {
+    public void testNumberPressed() {
         CalcEngine calculette = new CalcEngine();
         //Je fais le teste en vérifiant que ce que je rentre est bien égale à ce que m'affiche la calculatrice
         calculette.numberPressed(9);
@@ -138,7 +138,7 @@ public class CalcEngineTest {
      * @return the result of calculating 7+1.
      */
     @Test
-    void testPlus() {
+    public void testPlus() {
         CalcEngine calculette = new CalcEngine();
 
         //Je fais le teste en faisant l'addition des 2 chiffres
-- 
GitLab