aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src/vcpkg-test/manifests.cpp
diff options
context:
space:
mode:
authorras0219 <533828+ras0219@users.noreply.github.com>2020-10-12 10:22:47 -0700
committerGitHub <noreply@github.com>2020-10-12 10:22:47 -0700
commitd1ba685e975db41d767af5676ca2669a5e7e6ad9 (patch)
treee6dcb36f131e638fd5307a304a8fb5f2ce072758 /toolsrc/src/vcpkg-test/manifests.cpp
parentd6b5fbfef10e9476cdb8d1a90503f4f6504e63d9 (diff)
downloadvcpkg-d1ba685e975db41d767af5676ca2669a5e7e6ad9.tar.gz
vcpkg-d1ba685e975db41d767af5676ca2669a5e7e6ad9.zip
[vcpkg] Further JSON error improvements (#13399)
* [vcpkg] Split vcpkg/base/json.h into vcpkg/base/jsonreader.h * [vcpkg] Extract definitions of Configuration-Deserializer (& friends) These types are only used by VcpkgPaths during the initial parse. * [vcpkg] Introduce levenshtein-distance suggestions for json errors * [vcpkg] Fix regression in supports handling * [vcpkg] Fix signed/unsigned mismatch * [vcpkg] Address CR comments * [vcpkg] Address CR comments * Fix compiler error from merge conflict. * [vcpkg] Change parameters of Reader::check_for_unexpected_fields to better match declaration * [vcpkg] Improve errors from features set * [vcpkg] Fix includes * [vcpkg] Reuse code * [vcpkg] Check the "name" field always to maximize error information * [docs] Improve english phrasing in manifests.md * [vcpkg] Correct docs link for manifests Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
Diffstat (limited to 'toolsrc/src/vcpkg-test/manifests.cpp')
-rw-r--r--toolsrc/src/vcpkg-test/manifests.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/toolsrc/src/vcpkg-test/manifests.cpp b/toolsrc/src/vcpkg-test/manifests.cpp
index 0d5c9782a..77f4eb440 100644
--- a/toolsrc/src/vcpkg-test/manifests.cpp
+++ b/toolsrc/src/vcpkg-test/manifests.cpp
@@ -248,6 +248,17 @@ TEST_CASE ("SourceParagraph manifest empty supports", "[manifests]")
REQUIRE_FALSE(m_pgh.has_value());
}
+TEST_CASE ("SourceParagraph manifest non-string supports", "[manifests]")
+{
+ auto m_pgh = test_parse_manifest(R"json({
+ "name": "a",
+ "version-string": "1.0",
+ "supports": true
+ })json",
+ true);
+ REQUIRE_FALSE(m_pgh.has_value());
+}
+
TEST_CASE ("Serialize all the ports", "[manifests]")
{
std::vector<std::string> args_list = {"format-manifest"};