From a6053dabb956d93841860ddc427d310cf187388e Mon Sep 17 00:00:00 2001 From: Remko Popma Date: Sun, 14 Apr 2024 12:00:17 +0900 Subject: [PATCH] [#2228] update test with prints --- src/test/java/picocli/Issue2228.java | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/src/test/java/picocli/Issue2228.java b/src/test/java/picocli/Issue2228.java index c94e7df0c..65ce0936e 100644 --- a/src/test/java/picocli/Issue2228.java +++ b/src/test/java/picocli/Issue2228.java @@ -23,23 +23,31 @@ public void run() { @Test public void testParseResult() { final CommandLine commandLine = new CommandLine(new Issue2228.TestCommand()); - final ParseResult[] caughtParseResult = new ParseResult[1]; + final boolean[] handled = new boolean[] {false}; commandLine.setExecutionExceptionHandler(new CommandLine.IExecutionExceptionHandler() { public int handleExecutionException(Exception ex, CommandLine exCmdLine, ParseResult parseResult) throws Exception { + handled[0] = true; assertSame(commandLine, exCmdLine); + + ParseResult after = commandLine.getParseResult(); + printParseResult(after, "commandLine.getParseResult()"); + assertFalse(after.matchedArgs().isEmpty()); + assertFalse(after.matchedOptions().isEmpty()); + + printParseResult(parseResult, "ExecutionExceptionHandler method arg"); assertNotNull(parseResult); - caughtParseResult[0] = parseResult; + assertFalse(parseResult.matchedArgs().isEmpty()); + assertFalse(parseResult.matchedOptions().isEmpty()); return 0; } }); commandLine.execute("-x"); - assertNotNull(caughtParseResult[0]); - - ParseResult after = commandLine.getParseResult(); - assertFalse(after.matchedArgs().isEmpty()); - assertFalse(after.matchedOptions().isEmpty()); + assertTrue("ExecutionExceptionHandler tests were executed", handled[0]); + } - assertFalse(caughtParseResult[0].matchedArgs().isEmpty()); - assertFalse(caughtParseResult[0].matchedOptions().isEmpty()); + private static void printParseResult(ParseResult parseResult, String origin) { + System.out.println("\tParseResult from " + origin + ": " + parseResult); + System.out.println("\t\tmatchedArgs(): " + parseResult.matchedArgs()); + System.out.println("\t\tmatchedOptions(): " + parseResult.matchedOptions()); } }