diff options
| author | achains <[email protected]> | 2025-09-19 16:38:48 +0300 |
|---|---|---|
| committer | achains <[email protected]> | 2025-09-19 17:55:25 +0300 |
| commit | d5841aaecfd21f305a7aa02367410d9f3a673136 (patch) | |
| tree | 6c5cc394a1703b377cba64669905d32009256396 /yt/cpp/mapreduce/interface/ut/config_ut.cpp | |
| parent | b09133a16e8e579bc531af7083326b1ca5b1f0c0 (diff) | |
YT-26145: TConfig serialization
* Changelog entry
Type: feature
Component: cpp-sdk
Add serialization / deserialization methods for TConfig class
commit_hash:b8dbd0cb04aa88fb629e6f2b855a3e7b1bad0ded
Diffstat (limited to 'yt/cpp/mapreduce/interface/ut/config_ut.cpp')
| -rw-r--r-- | yt/cpp/mapreduce/interface/ut/config_ut.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/yt/cpp/mapreduce/interface/ut/config_ut.cpp b/yt/cpp/mapreduce/interface/ut/config_ut.cpp index 780a57f3f25..816aa767aaa 100644 --- a/yt/cpp/mapreduce/interface/ut/config_ut.cpp +++ b/yt/cpp/mapreduce/interface/ut/config_ut.cpp @@ -1,5 +1,7 @@ #include <library/cpp/testing/gtest/gtest.h> +#include <library/cpp/yson/node/node_io.h> + #include <yt/cpp/mapreduce/interface/config.h> using namespace NYT; @@ -15,3 +17,26 @@ TEST(TConfigTest, Reset) { TConfig::Get()->Reset(); EXPECT_EQ(origConfig.Hosts, TConfig::Get()->Hosts); } + +TEST(TConfigTest, ConfigToString) { + const auto& config = *TConfig::Get(); + + auto configString = ConfigToYsonString(config); + + // Some checks for config parameters with different types + EXPECT_TRUE(configString.Contains("log_exclude_categories")); + EXPECT_TRUE(configString.Contains("accept_encoding")); + EXPECT_TRUE(configString.Contains("wait_lock_poll_interval")); +} + +TEST(TConfigTest, ConfigFromString) { + const auto& origConfig = *TConfig::Get(); + + auto configString = ConfigToYsonString(origConfig); + + auto config = ConfigFromYsonString(configString); + + EXPECT_EQ(origConfig.LogExcludeCategories, config.LogExcludeCategories); + EXPECT_EQ(origConfig.AcceptEncoding, config.AcceptEncoding); + EXPECT_EQ(origConfig.WaitLockPollInterval, config.WaitLockPollInterval); +} |
