| 62 | }; |
| 63 | |
| 64 | TEST_F(VariableTest, status) { |
| 65 | bvar::Status<int> st1; |
| 66 | st1.set_value(9); |
| 67 | ASSERT_TRUE(st1.is_hidden()); |
| 68 | #ifdef BAIDU_INTERNAL |
| 69 | boost::any v1; |
| 70 | st1.get_value(&v1); |
| 71 | ASSERT_EQ(9, boost::any_cast<int>(v1)); |
| 72 | #endif |
| 73 | ASSERT_EQ(0, st1.expose("var1")); |
| 74 | ASSERT_FALSE(st1.is_hidden()); |
| 75 | ASSERT_EQ("9", bvar::Variable::describe_exposed("var1")); |
| 76 | std::vector<std::string> vars; |
| 77 | bvar::Variable::list_exposed(&vars); |
| 78 | ASSERT_EQ(1UL, vars.size()); |
| 79 | ASSERT_EQ("var1", vars[0]); |
| 80 | ASSERT_EQ(1UL, bvar::Variable::count_exposed()); |
| 81 | |
| 82 | bvar::Status<int> st2; |
| 83 | st2.set_value(10); |
| 84 | ASSERT_TRUE(st2.is_hidden()); |
| 85 | ASSERT_EQ(-1, st2.expose("var1")); |
| 86 | ASSERT_TRUE(st2.is_hidden()); |
| 87 | ASSERT_EQ(1UL, bvar::Variable::count_exposed()); |
| 88 | ASSERT_EQ("10", st2.get_description()); |
| 89 | ASSERT_EQ("9", bvar::Variable::describe_exposed("var1")); |
| 90 | ASSERT_EQ(1UL, bvar::Variable::count_exposed()); |
| 91 | |
| 92 | ASSERT_TRUE(st1.hide()); |
| 93 | ASSERT_TRUE(st1.is_hidden()); |
| 94 | ASSERT_EQ(0UL, bvar::Variable::count_exposed()); |
| 95 | ASSERT_EQ("", bvar::Variable::describe_exposed("var1")); |
| 96 | ASSERT_EQ(0, st1.expose("var1")); |
| 97 | ASSERT_EQ(1UL, bvar::Variable::count_exposed()); |
| 98 | ASSERT_EQ("9", bvar::Variable::describe_exposed("var1")); |
| 99 | |
| 100 | ASSERT_EQ(0, st2.expose("var2")); |
| 101 | ASSERT_EQ(2UL, bvar::Variable::count_exposed()); |
| 102 | ASSERT_EQ("9", bvar::Variable::describe_exposed("var1")); |
| 103 | ASSERT_EQ("10", bvar::Variable::describe_exposed("var2")); |
| 104 | bvar::Variable::list_exposed(&vars); |
| 105 | ASSERT_EQ(2UL, vars.size()); |
| 106 | ASSERT_EQ("var1", vars[0]); |
| 107 | ASSERT_EQ("var2", vars[1]); |
| 108 | |
| 109 | ASSERT_TRUE(st2.hide()); |
| 110 | ASSERT_EQ(1UL, bvar::Variable::count_exposed()); |
| 111 | ASSERT_EQ("", bvar::Variable::describe_exposed("var2")); |
| 112 | bvar::Variable::list_exposed(&vars); |
| 113 | ASSERT_EQ(1UL, vars.size()); |
| 114 | ASSERT_EQ("var1", vars[0]); |
| 115 | |
| 116 | ASSERT_EQ(0, st2.expose("Var2 Again")); |
| 117 | ASSERT_EQ("", bvar::Variable::describe_exposed("Var2 Again")); |
| 118 | ASSERT_EQ("10", bvar::Variable::describe_exposed("var2_again")); |
| 119 | bvar::Variable::list_exposed(&vars); |
| 120 | ASSERT_EQ(2UL, vars.size()); |
| 121 | ASSERT_EQ("var1", vars[0]); |
nothing calls this directly
no test coverage detected