blob: f15970dcb235ab6fd01e09eb5992a9bf3a0d2f7d (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
#include <library/cpp/testing/gtest/gtest.h>
#include <library/cpp/yt/logging/structured_payload.h>
#include <library/cpp/yt/yson_string/string.h>
namespace NYT::NLogging {
namespace {
using namespace NYson;
////////////////////////////////////////////////////////////////////////////////
TYsonString MakeMapFragment(TStringBuf yson)
{
return TYsonString(yson, EYsonType::MapFragment);
}
TEST(TStructuredPayloadTest, RoundTrip)
{
auto payload = MakeStructuredPayloadFromYson(MakeMapFragment("\"key\"=\"value\""));
auto view = GetYsonFromStructuredPayload(payload);
EXPECT_EQ(view.GetType(), EYsonType::MapFragment);
EXPECT_EQ(view.AsStringBuf(), "\"key\"=\"value\"");
}
TEST(TStructuredPayloadTest, EmptyFragment)
{
auto payload = MakeStructuredPayloadFromYson(MakeMapFragment(""));
EXPECT_EQ(GetYsonFromStructuredPayload(payload).AsStringBuf(), "");
}
////////////////////////////////////////////////////////////////////////////////
} // namespace
} // namespace NYT::NLogging
|