diff --git a/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java b/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java index a669a78..3fbcfe0 100644 --- a/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java +++ b/lib/src/main/java/com/uwyn/urlencoder/UrlEncoder.java @@ -237,9 +237,9 @@ public final class UrlEncoder { var option = args.remove(0); if (option.equals("-d")) { perform_decode = true; - valid_arguments = true; + valid_arguments = !args.isEmpty(); } else if (option.equals("-e")) { - valid_arguments = true; + valid_arguments = !args.isEmpty(); } else { args.clear(); } diff --git a/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java b/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java index 085b8a3..f0f67a7 100644 --- a/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java +++ b/lib/src/test/java/com/uwyn/urlencoder/UrlEncoderTest.java @@ -59,6 +59,20 @@ class UrlEncoderTest { assertTrue(result.output.contains("Usage :")); } + @Test + void testMainMissingEncodeText() { + var result = UrlEncoder.processMain(new String[] {"-e"}); + assertEquals(1, result.status); + assertTrue(result.output.contains("Usage :")); + } + + @Test + void testMainMissingDecodeText() { + var result = UrlEncoder.processMain(new String[] {"-d"}); + assertEquals(1, result.status); + assertTrue(result.output.contains("Usage :")); + } + @Test void testMainWrongArgs1() { var result = UrlEncoder.processMain(new String[] {"-p"});