diff --git a/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java b/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java index 7a2de08..3bb0a15 100644 --- a/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java +++ b/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java @@ -270,17 +270,12 @@ public final class UrlEncoder { * @since 1.1 */ public static void main(String[] arguments) { - try { - var result = processMain(arguments); - if (result.status == 0) { - System.out.println(result.output); - } else { - System.err.println(result.output); - } - System.exit(result.status); - } catch(IllegalArgumentException e) { - System.err.println(UrlEncoder.class.getSimpleName() + ": " + e.getMessage()); - System.exit(1); + var result = processMain(arguments); + if (result.status == 0) { + System.out.println(result.output); + } else { + System.err.println(result.output); } + System.exit(result.status); } } diff --git a/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java b/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java index ecf6624..2fec84f 100644 --- a/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java +++ b/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java @@ -37,6 +37,12 @@ class UrlEncoderTest { ); } + @ParameterizedTest(name = "decode({0}) should be {1}") + @MethodSource("validMap") + void testDecodeUrl(String expected, String source) { + assertEquals(expected, UrlEncoder.decode(source)); + } + @Test void testDecodeNotNeeded() { assertSame(same, UrlEncoder.decode(same)); @@ -44,12 +50,6 @@ class UrlEncoderTest { assertEquals(" ", UrlEncoder.decode(" "), "decode(' ')"); } - @ParameterizedTest(name = "decode({0}) should be {1}") - @MethodSource("validMap") - void testDecodeUrl(String expected, String source) { - assertEquals(expected, UrlEncoder.decode(source)); - } - @ParameterizedTest(name = "decode({0})") @MethodSource("invalid") void testDecodeWithException(String source) { @@ -61,12 +61,6 @@ class UrlEncoderTest { assertNull(UrlEncoder.decode(null), "decode(null)"); } - @ParameterizedTest(name = "encode({0}) should be {1}") - @MethodSource("validMap") - void testEncodeUrl(String source, String expected) { - assertEquals(expected, UrlEncoder.encode(source)); - } - @Test void testEncodeWhenNoneNeeded() { assertSame(same, UrlEncoder.encode(same)); @@ -88,6 +82,12 @@ class UrlEncoderTest { assertEquals("%20", UrlEncoder.encode(" "), "encode('')"); } + @ParameterizedTest(name = "encode({0}) should be {1}") + @MethodSource("validMap") + void testEncodeUrl(String source, String expected) { + assertEquals(expected, UrlEncoder.encode(source)); + } + @Test void testEncodeWithNulls() { assertNull(UrlEncoder.encode(null), "encode(null)"); @@ -147,10 +147,4 @@ class UrlEncoderTest { assertEquals(expected, result.output); assertEquals(0, result.status, "processMain(-e " + source + ").status"); } - - @Test - void testMainWithUnknownOptions() { - assertTrue(UrlEncoder.processMain(new String[]{"-p"}).output.contains("Usage :"), "processMain(-p)"); - assertTrue(UrlEncoder.processMain(new String[]{"-"}).output.contains("Usage :"), "processMain(-)"); - } } \ No newline at end of file