diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2020-02-07 11:24:35 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-02-07 11:24:35 -0800 |
| commit | 8db6db5dac70c25b04cd4dd84392484dee822fbe (patch) | |
| tree | 4734de271f966ff4b9a913b15c1b7b537ecd1a8d /toolsrc/src/vcpkg-test/paragraph.cpp | |
| parent | 2873f07823df192ba55693d200850669eabe332c (diff) | |
| download | vcpkg-8db6db5dac70c25b04cd4dd84392484dee822fbe.tar.gz vcpkg-8db6db5dac70c25b04cd4dd84392484dee822fbe.zip | |
[vcpkg] Further parser improvements (#9895)
* [vcpkg] Consolidate several internal parsers together (packagespecs + logicexpression + control) and enhance error messages
* [vcpkg] Migrate Build-Depends parsing to new framework
* [vcpkg] Fix tests. Re-enable underscores in feature names due to libwebp[vwebp_sdl] -- todo: rename this feature and remove underscores.
Diffstat (limited to 'toolsrc/src/vcpkg-test/paragraph.cpp')
| -rw-r--r-- | toolsrc/src/vcpkg-test/paragraph.cpp | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/toolsrc/src/vcpkg-test/paragraph.cpp b/toolsrc/src/vcpkg-test/paragraph.cpp index 2ee4efe2f..21da80c5b 100644 --- a/toolsrc/src/vcpkg-test/paragraph.cpp +++ b/toolsrc/src/vcpkg-test/paragraph.cpp @@ -46,7 +46,7 @@ TEST_CASE ("SourceParagraph construct maximum", "[paragraph]") REQUIRE(pgh.core_paragraph->maintainer == "m"); REQUIRE(pgh.core_paragraph->description == "d"); REQUIRE(pgh.core_paragraph->depends.size() == 1); - REQUIRE(pgh.core_paragraph->depends[0].name() == "bd"); + REQUIRE(pgh.core_paragraph->depends[0].depend.name == "bd"); REQUIRE(pgh.core_paragraph->default_features.size() == 1); REQUIRE(pgh.core_paragraph->default_features[0] == "df"); } @@ -64,8 +64,8 @@ TEST_CASE ("SourceParagraph two depends", "[paragraph]") auto& pgh = **m_pgh.get(); REQUIRE(pgh.core_paragraph->depends.size() == 2); - REQUIRE(pgh.core_paragraph->depends[0].name() == "z"); - REQUIRE(pgh.core_paragraph->depends[1].name() == "openssl"); + REQUIRE(pgh.core_paragraph->depends[0].depend.name == "z"); + REQUIRE(pgh.core_paragraph->depends[1].depend.name == "openssl"); } TEST_CASE ("SourceParagraph three depends", "[paragraph]") @@ -81,9 +81,9 @@ TEST_CASE ("SourceParagraph three depends", "[paragraph]") auto& pgh = **m_pgh.get(); REQUIRE(pgh.core_paragraph->depends.size() == 3); - REQUIRE(pgh.core_paragraph->depends[0].name() == "z"); - REQUIRE(pgh.core_paragraph->depends[1].name() == "openssl"); - REQUIRE(pgh.core_paragraph->depends[2].name() == "xyz"); + REQUIRE(pgh.core_paragraph->depends[0].depend.name == "z"); + REQUIRE(pgh.core_paragraph->depends[1].depend.name == "openssl"); + REQUIRE(pgh.core_paragraph->depends[2].depend.name == "xyz"); } TEST_CASE ("SourceParagraph construct qualified depends", "[paragraph]") @@ -93,7 +93,7 @@ TEST_CASE ("SourceParagraph construct qualified depends", "[paragraph]") std::vector<std::unordered_map<std::string, std::string>>{{ {"Source", "zlib"}, {"Version", "1.2.8"}, - {"Build-Depends", "libA (windows), libB (uwp)"}, + {"Build-Depends", "liba (windows), libb (uwp)"}, }}); REQUIRE(m_pgh.has_value()); auto& pgh = **m_pgh.get(); @@ -103,9 +103,9 @@ TEST_CASE ("SourceParagraph construct qualified depends", "[paragraph]") REQUIRE(pgh.core_paragraph->maintainer == ""); REQUIRE(pgh.core_paragraph->description == ""); REQUIRE(pgh.core_paragraph->depends.size() == 2); - REQUIRE(pgh.core_paragraph->depends[0].name() == "libA"); + REQUIRE(pgh.core_paragraph->depends[0].depend.name == "liba"); REQUIRE(pgh.core_paragraph->depends[0].qualifier == "windows"); - REQUIRE(pgh.core_paragraph->depends[1].name() == "libB"); + REQUIRE(pgh.core_paragraph->depends[1].depend.name == "libb"); REQUIRE(pgh.core_paragraph->depends[1].qualifier == "uwp"); } @@ -210,14 +210,14 @@ TEST_CASE ("BinaryParagraph default features", "[paragraph]") TEST_CASE ("parse paragraphs empty", "[paragraph]") { const char* str = ""; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.empty()); } TEST_CASE ("parse paragraphs one field", "[paragraph]") { const char* str = "f1: v1"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0].size() == 1); REQUIRE(pghs[0]["f1"] == "v1"); @@ -227,7 +227,7 @@ TEST_CASE ("parse paragraphs one pgh", "[paragraph]") { const char* str = "f1: v1\n" "f2: v2"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0].size() == 2); REQUIRE(pghs[0]["f1"] == "v1"); @@ -241,7 +241,7 @@ TEST_CASE ("parse paragraphs two pgh", "[paragraph]") "\n" "f3: v3\n" "f4: v4"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 2); REQUIRE(pghs[0].size() == 2); @@ -259,7 +259,7 @@ TEST_CASE ("parse paragraphs field names", "[paragraph]") "F:\n" "0:\n" "F-2:\n"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0].size() == 5); @@ -273,7 +273,7 @@ TEST_CASE ("parse paragraphs multiple blank lines", "[paragraph]") "\n" "f3: v3\n" "f4: v4"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 2); } @@ -282,7 +282,7 @@ TEST_CASE ("parse paragraphs empty fields", "[paragraph]") { const char* str = "f1:\n" "f2: "; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0].size() == 2); @@ -298,7 +298,7 @@ TEST_CASE ("parse paragraphs multiline fields", "[paragraph]") "f2:\r\n" " f2\r\n" " continue\r\n"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0]["f1"] == "simple\n f1"); @@ -312,7 +312,7 @@ TEST_CASE ("parse paragraphs crlfs", "[paragraph]") "\r\n" "f3: v3\r\n" "f4: v4"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 2); REQUIRE(pghs[0].size() == 2); @@ -334,7 +334,7 @@ TEST_CASE ("parse paragraphs comment", "[paragraph]") "f3: v3\r\n" "#comment\r\n" "f4: v4"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 2); REQUIRE(pghs[0].size() == 2); @@ -349,7 +349,7 @@ TEST_CASE ("parse comment before single line feed", "[paragraph]") { const char* str = "f1: v1\r\n" "#comment\n"; - auto pghs = vcpkg::Paragraphs::parse_paragraphs(str).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(str, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs[0].size() == 1); REQUIRE(pghs[0]["f1"] == "v1"); } @@ -363,7 +363,7 @@ TEST_CASE ("BinaryParagraph serialize min", "[paragraph]") {"Multi-Arch", "same"}, }); std::string ss = Strings::serialize(pgh); - auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0].size() == 5); @@ -386,7 +386,7 @@ TEST_CASE ("BinaryParagraph serialize max", "[paragraph]") {"Multi-Arch", "same"}, }); std::string ss = Strings::serialize(pgh); - auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0].size() == 8); @@ -409,7 +409,7 @@ TEST_CASE ("BinaryParagraph serialize multiple deps", "[paragraph]") {"Depends", "a, b, c"}, }); std::string ss = Strings::serialize(pgh); - auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0]["Depends"] == "a, b, c"); @@ -426,7 +426,7 @@ TEST_CASE ("BinaryParagraph serialize abi", "[paragraph]") {"Abi", "123abc"}, }); std::string ss = Strings::serialize(pgh); - auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss).value_or_exit(VCPKG_LINE_INFO); + auto pghs = vcpkg::Paragraphs::parse_paragraphs(ss, "").value_or_exit(VCPKG_LINE_INFO); REQUIRE(pghs.size() == 1); REQUIRE(pghs[0]["Abi"] == "123abc"); |
