Skip to content

Commit 52cc75d

Browse files
committed
Add QueryCommand back to command handler
1 parent cd19acc commit 52cc75d

File tree

2 files changed

+49
-49
lines changed
  • metaschema-cli/src
    • main/java/gov/nist/secauto/metaschema/cli
    • test/java/gov/nist/secauto/metaschema/cli

2 files changed

+49
-49
lines changed

metaschema-cli/src/main/java/gov/nist/secauto/metaschema/cli/CLI.java

+2
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
package gov.nist.secauto.metaschema.cli;
2828

2929
import gov.nist.secauto.metaschema.cli.commands.GenerateSchemaCommand;
30+
import gov.nist.secauto.metaschema.cli.commands.QueryCommand;
3031
import gov.nist.secauto.metaschema.cli.commands.ValidateContentUsingModuleCommand;
3132
import gov.nist.secauto.metaschema.cli.commands.ValidateModuleCommand;
3233
import gov.nist.secauto.metaschema.cli.processor.CLIProcessor;
@@ -59,6 +60,7 @@ public static ExitStatus runCli(String... args) {
5960
processor.addCommandHandler(new ValidateModuleCommand());
6061
processor.addCommandHandler(new GenerateSchemaCommand());
6162
processor.addCommandHandler(new ValidateContentUsingModuleCommand());
63+
processor.addCommandHandler(new QueryCommand());
6264

6365
CommandService.getInstance().getCommands().stream().forEach(command -> {
6466
assert command != null;

metaschema-cli/src/test/java/gov/nist/secauto/metaschema/cli/CLITest.java

+47-49
Original file line numberDiff line numberDiff line change
@@ -32,19 +32,13 @@
3232

3333
import gov.nist.secauto.metaschema.cli.processor.ExitCode;
3434
import gov.nist.secauto.metaschema.cli.processor.ExitStatus;
35-
import gov.nist.secauto.metaschema.cli.CLI;
3635

37-
import org.junit.jupiter.api.Test;
3836
import org.junit.jupiter.params.ParameterizedTest;
3937
import org.junit.jupiter.params.provider.Arguments;
4038
import org.junit.jupiter.params.provider.MethodSource;
4139

42-
import java.nio.file.Path;
43-
import java.nio.file.Paths;
4440
import java.util.ArrayList;
45-
import java.util.Arrays;
4641
import java.util.List;
47-
import java.util.Map;
4842
import java.util.stream.Stream;
4943

5044
import edu.umd.cs.findbugs.annotations.NonNull;
@@ -53,50 +47,54 @@
5347
* Unit test for simple CLI.
5448
*/
5549
public class CLITest {
56-
void evaluateResult(@NonNull ExitStatus status, @NonNull ExitCode expectedCode) {
57-
status.generateMessage(true);
58-
assertAll(() -> assertEquals(expectedCode, status.getExitCode(), "exit code mismatch"),
59-
() -> assertNull(status.getThrowable(), "expected null Throwable"));
60-
}
50+
void evaluateResult(@NonNull ExitStatus status, @NonNull ExitCode expectedCode) {
51+
status.generateMessage(true);
52+
assertAll(() -> assertEquals(expectedCode, status.getExitCode(), "exit code mismatch"),
53+
() -> assertNull(status.getThrowable(), "expected null Throwable"));
54+
}
6155

62-
void evaluateResult(@NonNull ExitStatus status, @NonNull ExitCode expectedCode,
63-
@NonNull Class<? extends Throwable> thrownClass) {
64-
status.generateMessage(true);
65-
Throwable thrown = status.getThrowable();
66-
assert thrown != null;
67-
assertAll(() -> assertEquals(expectedCode, status.getExitCode(), "exit code mismatch"),
68-
() -> assertEquals(thrownClass, thrown.getClass(), "expected Throwable mismatch"));
69-
}
56+
void evaluateResult(@NonNull ExitStatus status, @NonNull ExitCode expectedCode,
57+
@NonNull Class<? extends Throwable> thrownClass) {
58+
status.generateMessage(true);
59+
Throwable thrown = status.getThrowable();
60+
assert thrown != null;
61+
assertAll(() -> assertEquals(expectedCode, status.getExitCode(), "exit code mismatch"),
62+
() -> assertEquals(thrownClass, thrown.getClass(), "expected Throwable mismatch"));
63+
}
7064

71-
private static Stream<Arguments> providesValues() {
72-
ExitCode noExpectedExceptionClass = null;
73-
List<Arguments> values = new ArrayList<>();
74-
values.add(Arguments.of(new String[] {}, ExitCode.INVALID_COMMAND, noExpectedExceptionClass));
75-
values.add(Arguments.of(new String[] { "-h" }, ExitCode.OK, noExpectedExceptionClass));
76-
values.add(Arguments.of(new String[] { "generate-schema", "--help" }, ExitCode.INVALID_COMMAND,
77-
noExpectedExceptionClass));
78-
values.add(Arguments.of(new String[] { "validate", "--help" }, ExitCode.OK, noExpectedExceptionClass));
79-
values.add(Arguments.of(new String[] { "validate-content", "--help" }, ExitCode.INVALID_COMMAND,
80-
noExpectedExceptionClass));
81-
values.add(Arguments.of(
82-
new String[] { "validate",
83-
"../databind/src/test/resources/metaschema/fields_with_flags/metaschema.xml" },
84-
ExitCode.OK, noExpectedExceptionClass));
85-
values.add(Arguments.of(new String[] { "generate-schema", "--overwrite", "--as", "JSON",
86-
"../databind/src/test/resources/metaschema/fields_with_flags/metaschema.xml",
87-
"target/schema-test.json" }, ExitCode.OK, noExpectedExceptionClass));
88-
values.add(Arguments.of(new String[] { "query", "-m", "module.xml", "-i", "content-instance.xml", "\"2 + 2\""}, ExitCode.INVALID_COMMAND, noExpectedExceptionClass));
89-
return values.stream();
90-
}
65+
private static Stream<Arguments> providesValues() {
66+
ExitCode noExpectedExceptionClass = null;
67+
List<Arguments> values = new ArrayList<>();
68+
values.add(Arguments.of(new String[] {}, ExitCode.INVALID_COMMAND, noExpectedExceptionClass));
69+
values.add(Arguments.of(new String[] { "-h" }, ExitCode.OK, noExpectedExceptionClass));
70+
values.add(Arguments.of(new String[] { "generate-schema", "--help" }, ExitCode.INVALID_COMMAND,
71+
noExpectedExceptionClass));
72+
values.add(Arguments.of(new String[] { "validate", "--help" }, ExitCode.OK, noExpectedExceptionClass));
73+
values.add(Arguments.of(new String[] { "validate-content", "--help" }, ExitCode.INVALID_COMMAND,
74+
noExpectedExceptionClass));
75+
values.add(Arguments.of(
76+
new String[] { "validate",
77+
"../databind/src/test/resources/metaschema/fields_with_flags/metaschema.xml" },
78+
ExitCode.OK, noExpectedExceptionClass));
79+
values.add(Arguments.of(new String[] { "generate-schema", "--overwrite", "--as", "JSON",
80+
"../databind/src/test/resources/metaschema/fields_with_flags/metaschema.xml",
81+
"target/schema-test.json" }, ExitCode.OK, noExpectedExceptionClass));
82+
values.add(Arguments.of(
83+
new String[] { "query", "-m", "../databind/src/test/resources/metaschema/fields_with_flags/metaschema.xml",
84+
"-i",
85+
"../databind/src/test/resources/metaschema/fields_with_flags/example.json", "2 + 2" },
86+
ExitCode.OK, noExpectedExceptionClass));
87+
return values.stream();
88+
}
9189

92-
@ParameterizedTest
93-
@MethodSource("providesValues")
94-
void testAllCommands(@NonNull String[] args, @NonNull ExitCode expectedExitCode,
95-
Class<? extends Throwable> expectedThrownClass) {
96-
if (expectedThrownClass == null) {
97-
evaluateResult(CLI.runCli(args), expectedExitCode);
98-
} else {
99-
evaluateResult(CLI.runCli(args), expectedExitCode, expectedThrownClass);
100-
}
101-
}
90+
@ParameterizedTest
91+
@MethodSource("providesValues")
92+
void testAllCommands(@NonNull String[] args, @NonNull ExitCode expectedExitCode,
93+
Class<? extends Throwable> expectedThrownClass) {
94+
if (expectedThrownClass == null) {
95+
evaluateResult(CLI.runCli(args), expectedExitCode);
96+
} else {
97+
evaluateResult(CLI.runCli(args), expectedExitCode, expectedThrownClass);
98+
}
99+
}
102100
}

0 commit comments

Comments
 (0)