Change test cases

This commit is contained in:
Stephan van Veen 2019-05-18 14:04:57 +02:00
parent ecf8e4fd5b
commit 36bdfe4a55
2 changed files with 2 additions and 31 deletions

View File

@ -77,30 +77,7 @@ TEST_CASE("Parse compound toggle arguments with implicit values and nargs and ot
program.add_argument("--input_files") program.add_argument("--input_files")
.nargs(3); .nargs(3);
program.parse_args({ "./test.exe", "1", "-abc", "3.14", "2.718", "2", "--input_files", REQUIRE_THROWS(program.parse_args({ "./test.exe", "1", "-abc", "3.14", "2.718", "2", "--input_files", "a.txt", "b.txt", "c.txt", "3" }));
"a.txt", "b.txt", "c.txt", "3" });
REQUIRE(program.get<bool>("-a") == true);
REQUIRE(program.get<bool>("-b") == true);
auto c = program.get<std::vector<float>>("-c");
REQUIRE(c.size() == 2);
REQUIRE(c[0] == 3.14f);
REQUIRE(c[1] == 2.718f);
auto input_files = program.get<std::vector<std::string>>("--input_files");
REQUIRE(input_files.size() == 3);
REQUIRE(input_files[0] == "a.txt");
REQUIRE(input_files[1] == "b.txt");
REQUIRE(input_files[2] == "c.txt");
auto numbers = program.get<std::vector<int>>("numbers");
REQUIRE(numbers.size() == 3);
REQUIRE(numbers[0] == 1);
REQUIRE(numbers[1] == 2);
REQUIRE(numbers[2] == 3);
auto numbers_list = program.get<std::list<int>>("numbers");
REQUIRE(numbers.size() == 3);
REQUIRE(testutility::get_from_list(numbers_list, 0) == 1);
REQUIRE(testutility::get_from_list(numbers_list, 1) == 2);
REQUIRE(testutility::get_from_list(numbers_list, 2) == 3);
} }
TEST_CASE("Parse out-of-order compound arguments", "[compound_arguments]") { TEST_CASE("Parse out-of-order compound arguments", "[compound_arguments]") {

View File

@ -44,13 +44,7 @@ TEST_CASE("Parse positional arguments with optional arguments in the middle", "[
program.add_argument("output").nargs(2); program.add_argument("output").nargs(2);
program.add_argument("--num_iterations") program.add_argument("--num_iterations")
.action([](const std::string& value) { return std::stoi(value); }); .action([](const std::string& value) { return std::stoi(value); });
program.parse_args({ "test", "rocket.mesh", "thrust_profile.csv", "--num_iterations", "15", "output.mesh" }); REQUIRE_THROWS(program.parse_args({ "test", "rocket.mesh", "thrust_profile.csv", "--num_iterations", "15", "output.mesh" }));
REQUIRE(program.get<int>("--num_iterations") == 15);
REQUIRE(program.get("input") == "rocket.mesh");
auto outputs = program.get<std::vector<std::string>>("output");
REQUIRE(outputs.size() == 2);
REQUIRE(outputs[0] == "thrust_profile.csv");
REQUIRE(outputs[1] == "output.mesh");
} }
TEST_CASE("Square a number", "[positional_arguments]") { TEST_CASE("Square a number", "[positional_arguments]") {