This is an automated email from the ASF dual-hosted git repository.

huixxi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/brpc.git


The following commit(s) were added to refs/heads/master by this push:
     new 22f10765 bvar add is_hidden
     new 61c5e38c Merge pull request #2205 from serverglen/bvar-is-hidden
22f10765 is described below

commit 22f107655ad6632d44bb1574da007ecf15d5f0d6
Author: serverglen <[email protected]>
AuthorDate: Wed Apr 12 21:26:03 2023 +0800

    bvar add is_hidden
---
 src/bvar/variable.cpp           | 4 ++++
 src/bvar/variable.h             | 3 +++
 test/bvar_variable_unittest.cpp | 5 +++++
 3 files changed, 12 insertions(+)

diff --git a/src/bvar/variable.cpp b/src/bvar/variable.cpp
index 630d2af2..9e623179 100644
--- a/src/bvar/variable.cpp
+++ b/src/bvar/variable.cpp
@@ -183,6 +183,10 @@ int Variable::expose_impl(const butil::StringPiece& prefix,
     return -1;
 }
 
+bool Variable::is_hidden() const {
+    return _name.empty();
+}
+
 bool Variable::hide() {
     if (_name.empty()) {
         return false;
diff --git a/src/bvar/variable.h b/src/bvar/variable.h
index 482f3b19..ce6ff4ac 100644
--- a/src/bvar/variable.h
+++ b/src/bvar/variable.h
@@ -162,6 +162,9 @@ public:
     // a variable that is just destructing.
     bool hide();
 
+    // Check if this variable is is_hidden.
+    bool is_hidden() const;
+
     // Get exposed name. If this variable is not exposed, the name is empty.
     const std::string& name() const { return _name; }
 
diff --git a/test/bvar_variable_unittest.cpp b/test/bvar_variable_unittest.cpp
index 0cdc32ec..263a1ede 100644
--- a/test/bvar_variable_unittest.cpp
+++ b/test/bvar_variable_unittest.cpp
@@ -64,12 +64,14 @@ protected:
 TEST_F(VariableTest, status) {
     bvar::Status<int> st1;
     st1.set_value(9);
+    ASSERT_TRUE(st1.is_hidden());
 #ifdef BAIDU_INTERNAL
     boost::any v1;
     st1.get_value(&v1);
     ASSERT_EQ(9, boost::any_cast<int>(v1));
 #endif
     ASSERT_EQ(0, st1.expose("var1"));
+    ASSERT_FALSE(st1.is_hidden());
     ASSERT_EQ("9", bvar::Variable::describe_exposed("var1"));
     std::vector<std::string> vars;
     bvar::Variable::list_exposed(&vars);
@@ -79,13 +81,16 @@ TEST_F(VariableTest, status) {
 
     bvar::Status<int> st2;
     st2.set_value(10);
+    ASSERT_TRUE(st2.is_hidden());
     ASSERT_EQ(-1, st2.expose("var1"));
+    ASSERT_TRUE(st2.is_hidden());
     ASSERT_EQ(1UL, bvar::Variable::count_exposed());
     ASSERT_EQ("10", st2.get_description());
     ASSERT_EQ("9", bvar::Variable::describe_exposed("var1"));
     ASSERT_EQ(1UL, bvar::Variable::count_exposed());
 
     ASSERT_TRUE(st1.hide());
+    ASSERT_TRUE(st1.is_hidden());
     ASSERT_EQ(0UL, bvar::Variable::count_exposed());
     ASSERT_EQ("", bvar::Variable::describe_exposed("var1"));
     ASSERT_EQ(0, st1.expose("var1"));


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to