]> source.dussan.org Git - jgit.git/commitdiff
ConfigTest: Fix tests for getting empty config value as int 81/130181/1
authorDavid Pursehouse <david.pursehouse@gmail.com>
Sat, 29 Sep 2018 03:54:37 +0000 (12:54 +0900)
committerDavid Pursehouse <david.pursehouse@gmail.com>
Sat, 29 Sep 2018 03:54:37 +0000 (12:54 +0900)
The tests were set up to expect an IllegalArgumentException when
the Config.getInt method was called with a section.key that has
not been set, or explicitly set to an empty string.

However, the IllegalArgumentException never gets thrown because
the getInt method returns the provided default ("1"), and because
there was no call to "fail" after getInt, the incorrect behavior
of the test was not noticed.

Remove the try/catch around getInt, and instead assert that the
expected default value is returned.

Found by Error Prone, which reported:

  Not calling fail() when expecting an exception masks bugs

See https://errorprone.info/bugpattern/MissingFail

Change-Id: Ie8e692aba9fb8523241fb8f298d57493923d9f78
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ConfigTest.java

index 30a07421ad9ae80f7ef722a7ab184f4cbaa3949a..21d8d66adf68f70a5da9d0bdb05179171e13b22c 100644 (file)
@@ -702,11 +702,7 @@ public class ConfigTest {
 
                assertEquals("", c.getString("a", null, "y"));
                assertArrayEquals(new String[]{""}, c.getStringList("a", null, "y"));
-               try {
-                       c.getInt("a", null, "y", 1);
-               } catch (IllegalArgumentException e) {
-                       assertEquals("Invalid integer value: a.y=", e.getMessage());
-               }
+               assertEquals(1, c.getInt("a", null, "y", 1));
 
                assertNull(c.getString("a", null, "z"));
                assertArrayEquals(new String[]{}, c.getStringList("a", null, "z"));
@@ -723,11 +719,7 @@ public class ConfigTest {
 
                assertNull(c.getString("a", null, "y"));
                assertArrayEquals(new String[]{null}, c.getStringList("a", null, "y"));
-               try {
-                       c.getInt("a", null, "y", 1);
-               } catch (IllegalArgumentException e) {
-                       assertEquals("Invalid integer value: a.y=", e.getMessage());
-               }
+               assertEquals(1, c.getInt("a", null, "y", 1));
 
                assertNull(c.getString("a", null, "z"));
                assertArrayEquals(new String[]{}, c.getStringList("a", null, "z"));