diff options
Diffstat (limited to 'library/cpp/yaml/fyamlcpp/fyamlcpp_ut.cpp')
-rw-r--r-- | library/cpp/yaml/fyamlcpp/fyamlcpp_ut.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/library/cpp/yaml/fyamlcpp/fyamlcpp_ut.cpp b/library/cpp/yaml/fyamlcpp/fyamlcpp_ut.cpp index 2f6e14138c..67e918a297 100644 --- a/library/cpp/yaml/fyamlcpp/fyamlcpp_ut.cpp +++ b/library/cpp/yaml/fyamlcpp/fyamlcpp_ut.cpp @@ -31,7 +31,7 @@ config: b )"; UNIT_ASSERT_EXCEPTION_CONTAINS( NFyaml::TDocument::Parse(yaml), - yexception, + NFyaml::TFyamlEx, "3:1 duplicate key"); } @@ -42,9 +42,23 @@ anchor: *does_not_exists auto doc = NFyaml::TDocument::Parse(yaml); UNIT_ASSERT_EXCEPTION_CONTAINS( doc.Resolve(), - yexception, + NFyaml::TFyamlEx, "2:10 invalid alias"); } + { + const char *yaml = R"( +a: 1 +a: 2 +a: 3 +)"; + try { + NFyaml::TDocument::Parse(yaml); + UNIT_FAIL("exception must've happend"); + } catch (NFyaml::TFyamlEx e) { + UNIT_ASSERT(TString(e.what()).Contains("3:1 duplicate key")); + UNIT_ASSERT(e.Errors().ysize() == 1); + } + } } Y_UNIT_TEST(Out) { |