aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/yson/node/node_ut.cpp
diff options
context:
space:
mode:
authorilnurkh <ilnurkh@yandex-team.com>2023-07-27 13:41:56 +0300
committerilnurkh <ilnurkh@yandex-team.com>2023-07-27 13:41:56 +0300
commit1761cf17008788a7ec126e953ffe46c41721d168 (patch)
treedecb73843d5195cce15a243badf6614f1bf04909 /library/cpp/yson/node/node_ut.cpp
parent114da2ea902184524cac007509fbe899d8154b05 (diff)
downloadydb-1761cf17008788a7ec126e953ffe46c41721d168.tar.gz
add TryNodeFromJsonString: ability to parse object and check errors without try-catch
Diffstat (limited to 'library/cpp/yson/node/node_ut.cpp')
-rw-r--r--library/cpp/yson/node/node_ut.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/library/cpp/yson/node/node_ut.cpp b/library/cpp/yson/node/node_ut.cpp
index 448e99f575..728a926283 100644
--- a/library/cpp/yson/node/node_ut.cpp
+++ b/library/cpp/yson/node/node_ut.cpp
@@ -482,3 +482,16 @@ Y_UNIT_TEST_SUITE(YtNodeTest) {
UNIT_ASSERT_VALUES_EQUAL(node.ChildAs<TString>(0), "yaddayadda");
}
}
+
+
+Y_UNIT_TEST_SUITE(YtNodeIoTest) {
+ Y_UNIT_TEST(FromJson) {
+ NYT::TNode node;
+ node = NYT::NodeFromJsonString("1");
+ UNIT_ASSERT_VALUES_EQUAL(node.ConvertTo<int>(), 1);
+ UNIT_ASSERT(!NYT::TryNodeFromJsonString("", node));
+ UNIT_ASSERT_VALUES_EQUAL(node.ConvertTo<int>(), 1);
+ UNIT_ASSERT_EXCEPTION(NYT::NodeFromJsonString(""), yexception);
+ UNIT_ASSERT_VALUES_EQUAL(node.ConvertTo<int>(), 1);
+ }
+}