Skip to content
Snippets Groups Projects
Commit 60cb6153 authored by Leonard Kupper's avatar Leonard Kupper
Browse files

Update tests to work with required options.

parent 6a52ab9d
No related branches found
No related tags found
1 merge request!39App restructuring
package de.tudresden.inf.mci.brailleplot.commandline;
import org.apache.commons.cli.MissingOptionException;
import org.apache.commons.cli.ParseException;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
......@@ -16,7 +18,7 @@ class CommandLineParserTest {
@Test
void testParseLegalArgs() {
String[] args = {"-h ", "--csv-path", "foobar", "-p", "test", "-t", "title", "-x", "x-axis", "-y", "y-axis", "-d", "BarChart"};
String[] args = {"-h", "--csv-path", "foobar", "-p", "test", "-t", "title", "-x", "x-axis", "-y", "y-axis", "-d", "BarChart"};
Assertions.assertDoesNotThrow(() -> {commandLineParser.parse(args);});
}
......@@ -29,12 +31,13 @@ class CommandLineParserTest {
@Test
void testEmptyArgs() {
String[] args = {""};
Assertions.assertDoesNotThrow(() -> {commandLineParser.parse(args);});
Assertions.assertThrows(ParsingException.class, () -> {commandLineParser.parse(args);});
}
@Test
void testBoolFlagRecognized() {
String[] args = {"-h"};
final String param = "xyz";
String[] args = {"--csv-path", param, "-p", param, "-t", param, "-x", param, "-y", param, "-d", param, "-i"};
SettingsReader settings;
try {
settings = commandLineParser.parse(args);
......@@ -42,14 +45,15 @@ class CommandLineParserTest {
fail();
return; // Never executed, satisfy compiler
}
Optional<Boolean> flag = settings.isTrue(SettingType.DISPLAY_HELP);
Optional<Boolean> flag = settings.isTrue(SettingType.INHIBIT_PRINT);
Assertions.assertTrue(flag.isPresent());
Assertions.assertTrue(flag.get());
}
@Test
void testBoolFlagCorrectlyNotRecognized() {
String[] args = {""};
final String param = "xyz";
String[] args = {"--csv-path", param, "-p", param, "-t", param, "-x", param, "-y", param, "-d", param};
SettingsReader settings;
try {
settings = commandLineParser.parse(args);
......@@ -57,14 +61,14 @@ class CommandLineParserTest {
fail();
return; // Never executed, satisfy compiler
}
Optional<Boolean> flag = settings.isTrue(SettingType.DISPLAY_HELP);
Optional<Boolean> flag = settings.isTrue(SettingType.INHIBIT_PRINT);
Assertions.assertFalse(flag.isPresent());
}
@Test
void testParameterRecognized() {
final String param = "xyz";
String[] args = {"--csv-path", param};
String[] args = {"--csv-path", param, "-p", param, "-t", param, "-x", param, "-y", param, "-d", param};
SettingsReader settings;
try {
settings = commandLineParser.parse(args);
......@@ -72,14 +76,21 @@ class CommandLineParserTest {
fail();
return; // Never executed, satisfy compiler
}
Optional<String> flag = settings.getSetting(SettingType.CSV_LOCATION);
Assertions.assertTrue(flag.isPresent());
Assertions.assertTrue(flag.get().equals(param));
Optional<String> flag;
for (SettingType setting : new SettingType[]{
SettingType.CSV_LOCATION, SettingType.PRINTER_CONFIG_PATH, SettingType.DIAGRAM_TITLE,
SettingType.X_AXIS_LABEL, SettingType.X_AXIS_LABEL, SettingType.DIAGRAM_TYPE}
) {
flag = settings.getSetting(setting);
Assertions.assertTrue(flag.isPresent());
Assertions.assertTrue(flag.get().equals(param));
}
}
@Test
void testParameterCorrectlyNotRecognized() {
String[] args = {""};
final String param = "xyz";
String[] args = {"--csv-path", param, "-p", param, "-t", param, "-x", param, "-y", param, "-d", param};
SettingsReader settings;
try {
settings = commandLineParser.parse(args);
......@@ -87,7 +98,7 @@ class CommandLineParserTest {
fail();
return; // Never executed, satisfy compiler
}
Optional<String> flag = settings.getSetting(SettingType.CSV_LOCATION);
Optional<String> flag = settings.getSetting(SettingType.SVG_EXPORT);
Assertions.assertFalse(flag.isPresent());
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment