aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/ryml/test/test_explicit_key.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/ryml/test/test_explicit_key.cpp')
-rw-r--r--thirdparty/ryml/test/test_explicit_key.cpp419
1 files changed, 0 insertions, 419 deletions
diff --git a/thirdparty/ryml/test/test_explicit_key.cpp b/thirdparty/ryml/test/test_explicit_key.cpp
deleted file mode 100644
index a9aefd59e..000000000
--- a/thirdparty/ryml/test/test_explicit_key.cpp
+++ /dev/null
@@ -1,419 +0,0 @@
-#include "./test_group.hpp"
-
-namespace c4 {
-namespace yml {
-
-
-TEST(explicit_key, test_suite_5WE3)
-{
- csubstr yaml = R"(
-? explicit key # Empty value
-? |
- block key
-: - one # Explicit compact
- - two # block value
-)";
- test_check_emit_check(yaml, [](Tree const &t){
- ASSERT_TRUE(t.rootref().is_map());
- ASSERT_NE(t.find_child(t.root_id(), "explicit key"), (size_t)NONE);
- ASSERT_NE(t.find_child(t.root_id(), "block key\n"), (size_t)NONE);
- EXPECT_EQ(t["explicit key"].val(), csubstr{});
- EXPECT_TRUE(t["block key\n"].is_seq());
- EXPECT_EQ(t["block key\n"][0], csubstr("one"));
- EXPECT_EQ(t["block key\n"][1], csubstr("two"));
- });
-}
-
-
-TEST(explicit_key, test_suite_DFF7_v1)
-{
- csubstr yaml = R"(
-{
-? explicit: entry,
-implicit: entry,
-?
-}
-)";
- test_check_emit_check(yaml, [](Tree const &t){
- ASSERT_TRUE(t.rootref().is_map());
- ASSERT_EQ(t.rootref().num_children(), 3u);
- ASSERT_TRUE(t.rootref().has_child("explicit"));
- EXPECT_EQ(t["explicit"].val(), csubstr("entry"));
- ASSERT_TRUE(t.rootref().has_child("implicit"));
- EXPECT_EQ(t["explicit"].val(), csubstr("entry"));
- ASSERT_TRUE(t.rootref().has_child(csubstr{}));
- EXPECT_EQ(t[csubstr{}].val(), csubstr{});
- });
-}
-
-TEST(explicit_key, test_suite_DFF7_v2)
-{
- csubstr yaml = R"(
-{
-?
- key on next line
-:
- val on next line
-,
-?
- # no key
-:
- val on next line
-}
-)";
- test_check_emit_check(yaml, [](Tree const &t){
- ASSERT_TRUE(t.rootref().is_map());
- ASSERT_EQ(t.rootref().num_children(), 2u);
- ASSERT_TRUE(t.rootref().has_child("key on next line"));
- EXPECT_EQ(t[0].key(), "key on next line");
- EXPECT_EQ(t[0].val(), "val on next line");
- EXPECT_EQ(t[1].key(), csubstr{});
- EXPECT_EQ(t[1].val(), "val on next line");
- });
-}
-
-
-TEST(explicit_key, test_suite_FRK4)
-{
- csubstr yaml = R"(
-{
- ? foo :,
- : bar,
-}
-)";
- test_check_emit_check(yaml, [](Tree const &t){
- ASSERT_TRUE(t.rootref().is_map());
- ASSERT_TRUE(t.rootref().has_child("foo"));
- EXPECT_EQ(t["foo"].val(), csubstr{});
- ASSERT_TRUE(t.rootref().has_child(csubstr{}));
- EXPECT_EQ(t[csubstr{}].val(), csubstr("bar"));
- });
-}
-
-
-TEST(explicit_key, test_suite_M2N8)
-{
- csubstr yaml = R"(
-- ? : x
-- ? :
-- ? :
-)";
- test_check_emit_check(yaml, [](Tree const &t){
- ASSERT_TRUE(t.rootref().is_seq());
- ASSERT_EQ(t.rootref().num_children(), 3u);
- ASSERT_EQ(t[0].num_children(), 1u);
- EXPECT_EQ(t[0][0].key(), csubstr{});
- EXPECT_EQ(t[0][0].val(), "x");
- ASSERT_EQ(t[1].num_children(), 1u);
- EXPECT_EQ(t[1][0].key(), csubstr{});
- EXPECT_EQ(t[1][0].val(), csubstr{});
- ASSERT_EQ(t[2].num_children(), 1u);
- EXPECT_EQ(t[2][0].key(), csubstr{});
- EXPECT_EQ(t[2][0].val(), csubstr{});
- });
-}
-
-
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
-//-----------------------------------------------------------------------------
-
-
-CASE_GROUP(EXPLICIT_KEY)
-{
-//
-ADD_CASE_TO_GROUP("explicit key, last value missing",
-R"(
-? a
-? b
-?
---- !!set # test that we do not add any last item
-? a
-? b
---- !!set # test that we do add the last item
-? a
-? b
-?
-...
-)",
-N(STREAM, L{
- N(DOCMAP, L{
- N(KEYVAL, "a", {}),
- N(KEYVAL, "b", {}),
- N(KEYVAL, "", {})
- }),
- N(DOCMAP, TL("!!set", L{
- N(KEYVAL, "a", {}),
- N(KEYVAL, "b", {}),
- })),
- N(DOCMAP, TL("!!set", L{
- N(KEYVAL, "a", {}),
- N(KEYVAL, "b", {}),
- N(KEYVAL, "", {})
- })),
- })
-);
-
-ADD_CASE_TO_GROUP("explicit key, ambiguity 2EBW",
-R"(
-a!"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~: safe
-?foo: safe question mark
-:foo: safe colon
--foo: safe dash
-this is#not: a comment
-)",
-L{
- N("a!\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~", "safe"),
- N("?foo", "safe question mark"),
- N(":foo", "safe colon"),
- N("-foo", "safe dash"),
- N("this is#not", "a comment"),
-});
-
-ADD_CASE_TO_GROUP("explicit key, ambiguity 2EBW, expl",
-R"({
- a!"#$%&'()*+-./09:;<=>?@AZ[\]^_`az{|~: safe,
- ?foo: safe question mark,
- :foo: safe colon,
- -foo: safe dash,
- this is#not: a comment,
-})",
-L{
- N("a!\"#$%&'()*+-./09:;<=>?@AZ[\\]^_`az{|~", "safe"),
- N("?foo", "safe question mark"),
- N(":foo", "safe colon"),
- N("-foo", "safe dash"),
- N("this is#not", "a comment"),
-});
-
-ADD_CASE_TO_GROUP("explicit key, ambiguity 2EBW, impl seq",
-R"(
-- a!"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~
-- ?foo
-- :foo
-- -foo
-- this is#not:a comment
-)",
-L{
- N("a!\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~"),
- N("?foo"),
- N(":foo"),
- N("-foo"),
- N("this is#not:a comment"),
-});
-
-ADD_CASE_TO_GROUP("explicit key, ambiguity 2EBW, expl seq",
-R"([
- a!"#$%&'()*+-./09:;<=>?@AZ[\^_`az{|}~,
- ?foo,
- :foo,
- -foo,
- this is#not:a comment,
-])",
-L{
- N("a!\"#$%&'()*+-./09:;<=>?@AZ[\\^_`az{|}~"),
- N("?foo"),
- N(":foo"),
- N("-foo"),
- N("this is#not:a comment"),
-});
-
-ADD_CASE_TO_GROUP("explicit key with line break in between",
-R"(
-? an explicit key
-: its value
-)",
- L{N("an explicit key", "its value")}
-);
-
-ADD_CASE_TO_GROUP("explicit key 2nd, inside explicit map",
-R"(
-{
- a simple key: a value,
- ? an explicit key: another value,
-}
-)",
- L{
- N("a simple key", "a value"),
- N("an explicit key", "another value"),
- }
-);
-
-ADD_CASE_TO_GROUP("explicit key 1st, inside explicit map",
-R"(
-{
- ? an explicit key: another value,
- a simple key: a value,
-}
-)",
- L{
- N("an explicit key", "another value"),
- N("a simple key", "a value"),
- }
-);
-
-ADD_CASE_TO_GROUP("explicit key 2nd",
-R"(
-a simple key: a value
-? an explicit key: another value
-)",
- L{
- N("a simple key", "a value"),
- N("an explicit key", "another value"),
- }
-);
-
-ADD_CASE_TO_GROUP("explicit key 1st",
-R"(
-? an explicit key: another value
-a simple key: a value
-)",
- L{
- N("an explicit key", "another value"),
- N("a simple key", "a value"),
- }
-);
-
-ADD_CASE_TO_GROUP("explicit key nested in a map, 1st",
-R"(
-map:
- ? an explicit key: another value
- a simple key: a value
-? an explicit key deindented: its value
-)",
- L{
- N("map", L{
- N("an explicit key", "another value"),
- N("a simple key", "a value"),
- }),
- N("an explicit key deindented", "its value")
- }
-);
-
-ADD_CASE_TO_GROUP("explicit key nested in a seq, 1st",
-R"(
-- ? an explicit key: another value
- a simple key: a value
-- ? another explicit key: its value
-)",
- L{
- N(L{
- N("an explicit key", "another value"),
- N("a simple key", "a value"),
- }),
- N(L{N("another explicit key", "its value")})
- }
-);
-
-ADD_CASE_TO_GROUP("explicit block key, literal, clip",
-R"(? |
- This is a key
- that has multiple lines
-
-: and this is its value
-)",
- L{
- N(QK, "This is a key\nthat has multiple lines\n", "and this is its value")
- }
-);
-
-ADD_CASE_TO_GROUP("explicit block key, literal, keep",
-R"(? |+
- This is a key
- that has multiple lines
-
-: and this is its value
-)",
- L{
- N(QK, "This is a key\nthat has multiple lines\n\n", "and this is its value")
- }
-);
-
-ADD_CASE_TO_GROUP("explicit block key, literal, strip",
-R"(? |-
- This is a key
- that has multiple lines
-
-: and this is its value
-)",
- L{
- N(QK, "This is a key\nthat has multiple lines", "and this is its value")
- }
-);
-
-ADD_CASE_TO_GROUP("explicit block key, folded, clip",
-R"(? >
- This is a key
- that has multiple lines
-
-: and this is its value
-)",
- L{
- N(QK, "This is a key that has multiple lines\n", "and this is its value")
- }
-);
-
-ADD_CASE_TO_GROUP("explicit block key, folded, keep",
-R"(? >+
- This is a key
- that has multiple lines
-
-: and this is its value
-)",
- L{
- N(QK, "This is a key that has multiple lines\n\n", "and this is its value")
- }
-);
-
-ADD_CASE_TO_GROUP("explicit block key, folded, strip",
-R"(? >-
- This is a key
- that has multiple lines
-
-: and this is its value
-)",
- L{
- N(QK, "This is a key that has multiple lines", "and this is its value")
- }
-);
-
-ADD_CASE_TO_GROUP("explicit key, missing val 7W2P",
-R"(
-? a
-? b
-c:
-? d
-e:
-)",
-N(MAP, L{
- N(KEYVAL, "a", {}),
- N(KEYVAL, "b", {}),
- N(KEYVAL, "c", {}),
- N(KEYVAL, "d", {}),
- N(KEYVAL, "e", {}),
- })
-);
-
-ADD_CASE_TO_GROUP("explicit key, missing val ZWK4",
-R"(
-a: 1
-? b
-&anchor c: 3
-? d
-!!str e: 4
-? f
-)",
-N(MAP, L{
- N("a", "1"),
- N(KEYVAL, "b", {}),
- N("c", AR(KEYANCH, "anchor"), "3"),
- N(KEYVAL, "d", {}),
- N(TS("!!str", "e"), "4"),
- N(KEYVAL, "f", {}),
- })
-);
-
-}
-
-} // namespace yml
-} // namespace c4