From: wangsongbo Date: Thu, 5 May 2016 16:05:35 +0000 (+0800) Subject: test: add perf-reset test in test/perf_counters.cc X-Git-Tag: v11.1.0~209^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=15a345b1424b10498904760088ac1a7b39324773;p=ceph.git test: add perf-reset test in test/perf_counters.cc Signed-off-by: wangsongbo --- diff --git a/src/test/perf_counters.cc b/src/test/perf_counters.cc index a916cf08da3..5b74c35132c 100644 --- a/src/test/perf_counters.cc +++ b/src/test/perf_counters.cc @@ -200,3 +200,22 @@ TEST(PerfCounters, CephContextPerfCounters) { // Restore to avoid impact to other test cases g_ceph_context->disable_perf_counter(); } + +TEST(PerfCounters, ResetPerfCounters) { + AdminSocketClient client(get_rand_socket_path()); + std::string msg; + PerfCountersCollection *coll = g_ceph_context->get_perfcounters_collection(); + coll->clear(); + PerfCounters* fake_pf1 = setup_test_perfcounters1(g_ceph_context); + coll->add(fake_pf1); + + ASSERT_EQ("", client.do_request("{ \"prefix\": \"perf reset\", \"var\": \"all\", \"format\": \"json\" }", &msg)); + ASSERT_EQ(sd("{\"success\":\"perf reset all\"}"), msg); + + ASSERT_EQ("", client.do_request("{ \"prefix\": \"perf reset\", \"var\": \"test_perfcounter_1\", \"format\": \"json\" }", &msg)); + ASSERT_EQ(sd("{\"success\":\"perf reset test_perfcounter_1\"}"), msg); + + coll->clear(); + ASSERT_EQ("", client.do_request("{ \"prefix\": \"perf reset\", \"var\": \"test_perfcounter_1\", \"format\": \"json\" }", &msg)); + ASSERT_EQ(sd("{\"error\":\"Not find: test_perfcounter_1\"}"), msg); +}