]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#891,!592] updated unit tests
authorRazvan Becheriu <razvan@isc.org>
Fri, 15 Nov 2019 19:59:01 +0000 (21:59 +0200)
committerRazvan Becheriu <razvan@isc.org>
Wed, 5 Feb 2020 19:57:37 +0000 (21:57 +0200)
src/lib/stats/context.cc
src/lib/stats/context.h
src/lib/stats/stats_mgr.cc
src/lib/stats/tests/context_unittest.cc

index 1a56292564b9dba3b0ef2f3cc579b656b9ac8e3f..ba1e4773e7d2c2f9e30f4859aab2a8191edd258a 100644 (file)
@@ -65,7 +65,7 @@ void StatContext::clear() {
     MultiThreadingMgr::call(mutex_, [&]() {stats_.clear();});
 }
 
-void StatContext::reset() {
+void StatContext::resetAll() {
     auto lambda = [&]() {
         // Let's iterate over all stored statistics...
         for (auto s : stats_) {
@@ -91,24 +91,24 @@ StatContext::getAll() const {
 }
 
 void
-StatContext::setMaxSampleAgeAll(const StatsDuration& duration) {
+StatContext::setMaxSampleCountAll(uint32_t max_samples) {
     auto lambda = [&]() {
         // Let's iterate over all stored statistics...
         for (auto s : stats_) {
-            // ... and set duration limit for each statistic.
-            s.second->setMaxSampleAge(duration);
+            // ... and set count limit for each statistic.
+            s.second->setMaxSampleCount(max_samples);
         }
     };
     MultiThreadingMgr::call(mutex_, lambda);
 }
 
 void
-StatContext::setMaxSampleCountAll(uint32_t max_samples) {
+StatContext::setMaxSampleAgeAll(const StatsDuration& duration) {
     auto lambda = [&]() {
         // Let's iterate over all stored statistics...
         for (auto s : stats_) {
-            // ... and set count limit for each statistic.
-            s.second->setMaxSampleCount(max_samples);
+            // ... and set duration limit for each statistic.
+            s.second->setMaxSampleAge(duration);
         }
     };
     MultiThreadingMgr::call(mutex_, lambda);
index 85de3e783fbae2375f98e15b08a955b6e47a13a8..d9704ba7f5d7fc665809c9654eeb1c1570ebf6f7 100644 (file)
@@ -54,7 +54,7 @@ public:
     void clear();
 
     /// @brief Resets all observations
-    void reset();
+    void resetAll();
 
     /// @brief Sets max sample count for all observations
     /// @param max_samples value to be set for all observations
index 0eccf4cd1679897b864652801985d376cc5494e9..0efb6f89622fcd53be295480fe6d6338452a213a 100644 (file)
@@ -198,7 +198,7 @@ StatsMgr::getAll() const {
 
 void
 StatsMgr::resetAll() {
-    MultiThreadingMgr::call(mutex_, [&]() {global_->reset();});
+    MultiThreadingMgr::call(mutex_, [&]() {global_->resetAll();});
 }
 
 size_t
index 938b5b58c890eec0eaa0c2c70ed3521026aa435c..897f8e356f35caf63e85de7ddfb3b528e14a378b 100644 (file)
@@ -8,10 +8,12 @@
 
 #include <stats/context.h>
 #include <gtest/gtest.h>
+#include <util/boost_time_utils.h>
 #include <string>
 
 using namespace isc::data;
 using namespace isc::stats;
+using namespace boost::posix_time;
 using namespace std;
 
 // Basic test that checks get, add, del methods
@@ -83,7 +85,7 @@ TEST(ContextTest, basic) {
     EXPECT_EQ(result->str(), expected_result->str());
 
     // Reset all statistics.
-    EXPECT_NO_THROW(ctx.reset());
+    EXPECT_NO_THROW(ctx.resetAll());
 
     EXPECT_NO_THROW(from_ctx = ctx.get("alpha"));
     ASSERT_TRUE(from_ctx);
@@ -95,6 +97,28 @@ TEST(ContextTest, basic) {
     EXPECT_NE(expected_c, from_ctx->getJSON()->str());
     EXPECT_EQ(0.0, c->getFloat().first);
 
+    // Set sample count for all statistics
+    EXPECT_NO_THROW(ctx.setMaxSampleCountAll(50));
+
+    EXPECT_NO_THROW(from_ctx = ctx.get("alpha"));
+    ASSERT_TRUE(from_ctx);
+    EXPECT_EQ(from_ctx->getMaxSampleCount().second, 50);
+
+    EXPECT_NO_THROW(from_ctx = ctx.get("gamma"));
+    ASSERT_TRUE(from_ctx);
+    EXPECT_EQ(from_ctx->getMaxSampleCount().second, 50);
+
+    // Set sample age for all statistics
+    EXPECT_NO_THROW(ctx.setMaxSampleAgeAll(millisec::time_duration(0, 4, 5, 3)));
+
+    EXPECT_NO_THROW(from_ctx = ctx.get("alpha"));
+    ASSERT_TRUE(from_ctx);
+    EXPECT_EQ(from_ctx->getMaxSampleAge().second, millisec::time_duration(0, 4, 5, 3));
+
+    EXPECT_NO_THROW(from_ctx = ctx.get("gamma"));
+    ASSERT_TRUE(from_ctx);
+    EXPECT_EQ(from_ctx->getMaxSampleAge().second, millisec::time_duration(0, 4, 5, 3));
+
     // Clear all statistics.
     EXPECT_NO_THROW(ctx.clear());
     EXPECT_EQ(0, ctx.size());