MCPcopy Create free account
hub / github.com/apache/brpc / TEST_F

Function TEST_F

test/bvar_mvariable_unittest.cpp:56–118  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

54}
55
56TEST_F(MVariableTest, expose) {
57 std::vector<std::string> list_exposed_vars;
58 std::list<std::string> labels_value1 {"bj", "get", "200"};
59 bvar::MultiDimension<bvar::Adder<int> > my_madder1(labels);
60 ASSERT_EQ(0UL, bvar::MVariableBase::count_exposed());
61 my_madder1.expose("request_count_madder");
62 ASSERT_EQ(1UL, bvar::MVariableBase::count_exposed());
63 bvar::Adder<int>* my_adder1 = my_madder1.get_stats(labels_value1);
64 ASSERT_TRUE(my_adder1);
65 ASSERT_STREQ("request_count_madder", my_madder1.name().c_str());
66
67 ASSERT_EQ(0, my_madder1.expose("request_count_madder_another"));
68 ASSERT_STREQ("request_count_madder_another", my_madder1.name().c_str());
69
70 ASSERT_EQ(0, my_madder1.expose("request-count::madder"));
71 ASSERT_STREQ("request_count_madder", my_madder1.name().c_str());
72
73 ASSERT_EQ(0, my_madder1.expose("request.count-madder::BaNaNa"));
74 ASSERT_STREQ("request_count_madder_ba_na_na", my_madder1.name().c_str());
75
76 ASSERT_EQ(0, my_madder1.expose_as("foo::bar::Apple", "request"));
77 ASSERT_STREQ("foo_bar_apple_request", my_madder1.name().c_str());
78
79 ASSERT_EQ(0, my_madder1.expose_as("foo.bar::BaNaNa", "request"));
80 ASSERT_STREQ("foo_bar_ba_na_na_request", my_madder1.name().c_str());
81
82 ASSERT_EQ(0, my_madder1.expose_as("foo::bar.Car_Rot", "request"));
83 ASSERT_STREQ("foo_bar_car_rot_request", my_madder1.name().c_str());
84
85 ASSERT_EQ(0, my_madder1.expose_as("foo-bar-RPCTest", "request"));
86 ASSERT_STREQ("foo_bar_rpctest_request", my_madder1.name().c_str());
87
88 ASSERT_EQ(0, my_madder1.expose_as("foo-bar-HELLO", "request"));
89 ASSERT_STREQ("foo_bar_hello_request", my_madder1.name().c_str());
90
91 my_madder1.expose("request_count_madder");
92 ASSERT_STREQ("request_count_madder", my_madder1.name().c_str());
93 list_exposed_vars.push_back("request_count_madder");
94
95 ASSERT_EQ(1UL, my_madder1.count_stats());
96 ASSERT_EQ(1UL, bvar::MVariableBase::count_exposed());
97
98 std::list<std::string> labels2 {"user", "url", "cost"};
99 bvar::MultiDimension<bvar::Adder<int> > my_madder2("client_url", labels2);
100 ASSERT_EQ(2UL, bvar::MVariableBase::count_exposed());
101 list_exposed_vars.push_back("client_url");
102
103 std::list<std::string> labels3 {"product", "system", "module"};
104 bvar::MultiDimension<bvar::Adder<int> > my_madder3("request_from", labels3);
105 list_exposed_vars.push_back("request_from");
106 ASSERT_EQ(3UL, bvar::MVariableBase::count_exposed());
107
108 std::vector<std::string> exposed_vars;
109 bvar::MVariableBase::list_exposed(&exposed_vars);
110 ASSERT_EQ(3, exposed_vars.size());
111
112 my_madder3.hide();
113 ASSERT_EQ(2UL, bvar::MVariableBase::count_exposed());

Callers

nothing calls this directly

Calls 11

get_statsMethod · 0.80
count_statsMethod · 0.80
exposeMethod · 0.45
c_strMethod · 0.45
nameMethod · 0.45
expose_asMethod · 0.45
push_backMethod · 0.45
sizeMethod · 0.45
hideMethod · 0.45
pop_backMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected