utPLSQL / utPLSQL-cli

Command line client for invoking utPLSQL
Apache License 2.0
40 stars 15 forks source link

"-type_mapping" not recognized in 3.1.6 #143

Closed felipebz closed 5 years ago

felipebz commented 5 years ago

Hi everyone.

I updated the utPLSQL-cli from 3.1.2 to 3.1.6 and the option "-type_mapping" isn't recognized anymore, for example:

utplsql-cli run (database) -p=(schema) -f=ut_sonar_test_reporter -o=tests.xml -source_path=src -test_path=test -type_mapping="sql=PACKAGE BODY"

If I use utplsql-cli 3.1.2 then the file "tests.xml" is generated correctly, but if I try to use the version 3.1.6 I get this error:

Unknown option: -type_mapping
run tests
Usage: (...)

Is this expected?

pesse commented 5 years ago

No, thanks for finding! Time to create an integration test for this behaviour, too.

pesse commented 5 years ago

The issue is actually caused by a bug in JCommander, which uses startsWith at several places to match VariableArity parameters. This is a problem because our new -t, --timeout matches anything which starts with -t...

After investigation, I fear fixing the bug in JCommander might have unwanted side-effects, therefore I think about switching to a different CLI library like https://github.com/remkop/picocli/