From b7179fc815170e67da36605cb167e2749dc37af5 Mon Sep 17 00:00:00 2001 From: Mark Meredith Date: Mon, 6 Apr 2020 22:16:02 -0400 Subject: [PATCH 1/2] Accept tabs as whitespace --- .gitlab-ci.yml | 3 +-- src/parser.cpp | 6 +++--- src/tests/parser.t.cpp | 16 ++++++++++++++++ 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c1bfe8e..6203ce2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,7 +14,6 @@ test:all: - cmake --build build --target unit_tests - ./build/src/tests/unit_tests - cmake --build build --target mfix-parser - # - find -name inputs - # - find -name inputs |xargs -l ./build/mfix-parser + - find -name inputs |xargs -l ./build/mfix-parser tags: - mfix-exa diff --git a/src/parser.cpp b/src/parser.cpp index 5d7bcca..7906356 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -51,8 +51,8 @@ struct p : one<'p', 'P'> {}; struct exponent : seq> {}; struct double_ : seq> {}; -struct num_array : list>> {}; -struct str_array : list>> {}; +struct num_array : list> {}; +struct str_array : list> {}; struct value : sor {}; struct comment : if_must, until> {}; @@ -62,7 +62,7 @@ struct value_list : list_must> {}; struct keyval_line : if_must, string<'='>, value_list, sor> {}; struct comment_line : seq, until> {}; -struct blank_line : seq>, until> {}; +struct blank_line : seq, until> {}; struct line : sor {}; struct grammar : until {}; diff --git a/src/tests/parser.t.cpp b/src/tests/parser.t.cpp index cada1ec..1316304 100644 --- a/src/tests/parser.t.cpp +++ b/src/tests/parser.t.cpp @@ -57,6 +57,21 @@ fluid.solve = fluid CHECK(ss[0] == "fluid"); } +TEST_CASE("tabbed array", "[]") { + auto maybe_st = parser::parse_inputs(R"( + amr.avg_vel_p = 0 0 0 +)"); + + REQUIRE(maybe_st.has_value()); + auto info = maybe_st.value(); + auto value = info["amr.avg_vel_p"]; + auto aa = std::get(value); + CHECK(aa.size() == 3); + CHECK(aa[0] == 0.0); + CHECK(aa[1] == 0.0); + CHECK(aa[2] == 0.0); +} + TEST_CASE("double array", "[]") { auto maybe_st = parser::parse_inputs(R"( mfix.gravity = -9.81 0.0 0.0 @@ -71,6 +86,7 @@ TEST_CASE("double array", "[]") { CHECK(aa[1] == 0.0); CHECK(aa[2] == 0.0); } + TEST_CASE("string array", "[]") { auto maybe_st = parser::parse_inputs(R"( mfix.regions = abc ijk xyz -- GitLab From 7ce26c250178d886dcd503601c97880019a0b764 Mon Sep 17 00:00:00 2001 From: Mark Meredith Date: Mon, 6 Apr 2020 22:23:56 -0400 Subject: [PATCH 2/2] disable --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6203ce2..393b2fa 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,6 +14,6 @@ test:all: - cmake --build build --target unit_tests - ./build/src/tests/unit_tests - cmake --build build --target mfix-parser - - find -name inputs |xargs -l ./build/mfix-parser + - find -name inputs |grep -v tutorials/wdf/mueller | xargs -l ./build/mfix-parser # FIXME: correct syntax error (= =) in file tags: - mfix-exa -- GitLab