From d6bd1db6bc01ff8045c682073e9cb0dddccb6cf5 Mon Sep 17 00:00:00 2001 From: trochas Date: Fri, 5 Dec 2025 09:55:50 +0100 Subject: [PATCH] ex 1 et 3 en cours (todo ex 2) --- .gitignore | 1 + .../main/java/fr/istic/vv/StringUtils.java | 10 +++++++ .../java/fr/istic/vv/StringUtilsTest.java | 8 ++++++ exercises/assertions.md | 28 +++++++++++++++++++ 4 files changed, 47 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2f7896d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +target/ diff --git a/code/tp3-balanced-strings/src/main/java/fr/istic/vv/StringUtils.java b/code/tp3-balanced-strings/src/main/java/fr/istic/vv/StringUtils.java index 8e1358c..07c52e6 100644 --- a/code/tp3-balanced-strings/src/main/java/fr/istic/vv/StringUtils.java +++ b/code/tp3-balanced-strings/src/main/java/fr/istic/vv/StringUtils.java @@ -5,7 +5,17 @@ public class StringUtils { private StringUtils() {} public static boolean isBalanced(String str) { + return false; } + + public static String reqIsBalanced(String str){ + String all = "[\\[\\(\\{\\]\\)\\}\"]"; + String openRegex = "[\\[\\(\\{\"]"; + String closeRegex = "[\\]\\)\\}\"]"; + String regex = "^[^"+all+"]*"+openRegex+"."+closeRegex+"^["+all+"]*"; + + return str; + } } diff --git a/code/tp3-balanced-strings/src/test/java/fr/istic/vv/StringUtilsTest.java b/code/tp3-balanced-strings/src/test/java/fr/istic/vv/StringUtilsTest.java index 314e147..4ca676f 100644 --- a/code/tp3-balanced-strings/src/test/java/fr/istic/vv/StringUtilsTest.java +++ b/code/tp3-balanced-strings/src/test/java/fr/istic/vv/StringUtilsTest.java @@ -8,4 +8,12 @@ import static org.junit.jupiter.api.Assertions.*; class StringUtilsTest { + @Test + public void test2(){ + //assertEquals(num1,num2); + String s = "te"; + String s2 = "test"; + s += "st"; + assertSame(s2,s); + } } \ No newline at end of file diff --git a/exercises/assertions.md b/exercises/assertions.md index 2dba964..d81e554 100644 --- a/exercises/assertions.md +++ b/exercises/assertions.md @@ -11,3 +11,31 @@ Answer the following questions: 4. In JUnit 4, an exception was expected using the `@Test` annotation, while in JUnit 5 there is a special assertion method `assertThrows`. In your opinion, what are the advantages of this new way of checking expected exceptions? ## Answer + +1. +Les flottants sont codés en binaire avec des divisions de 2, certaines valeurs sont donc impossibles à avoir exactement en flottant, comme 1.2 et 0.4 + +2. +assertEquals vérifie si les valeurs des objets sont identiques alors que assertSame vérifie si l'objet est identique. +Par exemple +```java +String s = "test"; +assertSame(s,s); +assertEquals(s,s); +``` +revoient true +alors que +```java +String s = "te"; +String s2 = "test"; + s += "st"; //sinon l'optimisation du compilateur Java met le même objet sur s et s2 +assertSame("test",str+"st"); +assertEquals("test",str+"st"); +``` +assertSame renvoit false, alors que assertEquals renvoit true + +3. + + +4. +Cela permet de rendre les test plus uniforme, dans junit 5 on comprend mieux où exactement on attend l'exception.