diff --git a/pom.xml b/pom.xml index 4da718b..f2a4d7d 100644 --- a/pom.xml +++ b/pom.xml @@ -43,32 +43,32 @@ javax.xml.bind jaxb-api - 2.3.0 + 2.3.1 ch.qos.logback logback-classic - 1.2.3 + 1.2.11 info.picocli picocli - 4.0.0-beta-1b + 4.6.3 - com.oracle.ojdbc + com.oracle.database.jdbc ojdbc8 ${oracle.jdbc.version} compile - com.oracle.ojdbc + com.oracle.database.jdbc ucp - com.oracle.ojdbc + com.oracle.database.nls orai18n ${oracle.jdbc.version} compile diff --git a/src/main/java/org/utplsql/cli/Cli.java b/src/main/java/org/utplsql/cli/Cli.java index e330818..4f711b6 100644 --- a/src/main/java/org/utplsql/cli/Cli.java +++ b/src/main/java/org/utplsql/cli/Cli.java @@ -1,11 +1,15 @@ package org.utplsql.cli; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import picocli.CommandLine; import java.util.List; public class Cli { + private static final Logger logger = LoggerFactory.getLogger(Cli.class); + static final int DEFAULT_ERROR_CODE = 1; public static void main(String[] args) { @@ -17,6 +21,8 @@ public static void main(String[] args) { static int runPicocliWithExitCode(String[] args) { + logger.debug("Args: "+String.join(", ", args)); + CommandLine commandLine = new CommandLine(UtplsqlPicocliCommand.class); commandLine.setTrimQuotes(true); diff --git a/src/main/java/org/utplsql/cli/RunPicocliCommand.java b/src/main/java/org/utplsql/cli/RunPicocliCommand.java index 0bdf33c..2908cf2 100644 --- a/src/main/java/org/utplsql/cli/RunPicocliCommand.java +++ b/src/main/java/org/utplsql/cli/RunPicocliCommand.java @@ -104,7 +104,7 @@ public class RunPicocliCommand implements IRunCommand { private List reporters = new ArrayList<>(); static class Format { - @Option(names = {"-f", "--format"}, required = true, description = "Enables specified format reporting") + @Option(names = {"-f", "--format"}, description = "Enables specified format reporting") String format; @Option(names = {"-o"}, description = "Outputs format to file") String outputFile; diff --git a/src/main/java/org/utplsql/cli/datasource/TestedDataSourceProvider.java b/src/main/java/org/utplsql/cli/datasource/TestedDataSourceProvider.java index 8ecfeca..8f99cf3 100644 --- a/src/main/java/org/utplsql/cli/datasource/TestedDataSourceProvider.java +++ b/src/main/java/org/utplsql/cli/datasource/TestedDataSourceProvider.java @@ -54,11 +54,12 @@ private void setThickOrThinJdbcUrl(OracleDataSource ds) throws SQLException { ds.setPassword(config.getPassword()); for (ConnectStringPossibility possibility : possibilities) { + logger.debug("Try connecting {}", possibility.getMaskedConnectString(config)); ds.setURL(possibility.getConnectString(config)); try (Connection ignored = ds.getConnection()) { logger.info("Use connection string {}", possibility.getMaskedConnectString(config)); return; - } catch (UnsatisfiedLinkError | Exception e) { + } catch (Error | Exception e) { errors.add(possibility.getMaskedConnectString(config) + ": " + e.getMessage()); lastException = e; } diff --git a/src/test/java/org/utplsql/cli/PicocliRunCommandTest.java b/src/test/java/org/utplsql/cli/PicocliRunCommandTest.java index a7b4eb5..475ca82 100644 --- a/src/test/java/org/utplsql/cli/PicocliRunCommandTest.java +++ b/src/test/java/org/utplsql/cli/PicocliRunCommandTest.java @@ -240,4 +240,13 @@ void testFileMappingWithoutDetails() throws Exception { assertNull( testMapperConfig.getTypeSubexpression()); assertNull( testMapperConfig.getNameSubexpression()); } + + @Test + void negatedTag() throws Exception { + RunCommandConfig config = parseForConfig("run", + TestHelper.getConnectionString(), + "--tags=\"-dontwantit\""); + + assertThat(config.getTags(), hasItemInArray("-dontwantit") ); + } }