diff --git a/src/test/java/picocli/CommandLineTypeConversionTest.java b/src/test/java/picocli/CommandLineTypeConversionTest.java index 02fe499d8..17e49b93c 100644 --- a/src/test/java/picocli/CommandLineTypeConversionTest.java +++ b/src/test/java/picocli/CommandLineTypeConversionTest.java @@ -64,6 +64,7 @@ static class SupportedTypes { @Option(names = "-Byte") Byte aByteField; @Option(names = "-char") char charField; @Option(names = "-Character") Character aCharacterField; + @Option(names = "-charArray") char[] charArrayField; @Option(names = "-short") short shortField; @Option(names = "-Short") Short aShortField; @Option(names = "-int") int intField; @@ -496,6 +497,16 @@ public void testCharConverterInvalidError() throws ParseException { } } @Test + public void testCharArrayConverter() { + try { + final SupportedTypes cli = new SupportedTypes(); + CommandLine.populateCommand(new SupportedTypes(), "-charArray", "abcd"); + assertEquals(new char[]{'a', 'b', 'c', 'd'}, cli.charArrayField); + } catch (Exception exception) { + fail("Unexpected exception while converting char[] type: " + exception.getMessage()); + } + } + @Test public void testNumberConvertersInvalidError() { parseInvalidValue("-Byte", "aa", "Invalid value for option '-Byte': 'aa' is not a byte"); parseInvalidValue("-byte", "aa", "Invalid value for option '-byte': 'aa' is not a byte");