summaryrefslogtreecommitdiff
path: root/test/test_metric_histogram.cpp
diff options
context:
space:
mode:
authorchenzizhan <[email protected]>2023-09-27 17:45:22 +0800
committerchenzizhan <[email protected]>2023-09-27 17:45:22 +0800
commit4119061929db2eda0ad4c6233b97e8e46819a1ad (patch)
treecf04822d3cc17a5807668c8b5de0ccf0f5f89374 /test/test_metric_histogram.cpp
parent40c57ecb4b8489d82f667d9909ce095aa131a103 (diff)
more tests
Diffstat (limited to 'test/test_metric_histogram.cpp')
-rw-r--r--test/test_metric_histogram.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/test_metric_histogram.cpp b/test/test_metric_histogram.cpp
index 81e1e50..6983d02 100644
--- a/test/test_metric_histogram.cpp
+++ b/test/test_metric_histogram.cpp
@@ -159,6 +159,24 @@ TEST(metric_test_histogram, encode_decode_b64)
hdr_close(h2);
}
+TEST(metric_test_histogram, can_add_0value) // histogram only allow min_val > 0, but it can accept value == 0
+{
+ struct fieldstat *instance = fieldstat_new();
+ int cube_id = fieldstat_create_cube(instance, &TEST_TAG_INT_collided, 1, SAMPLING_MODE_COMPREHENSIVE, 10);
+ int metric_id = fieldstat_register_hist(instance, "czz_test", 1, 600000, 3);
+
+ int ret = fieldstat_hist_record(instance, cube_id, metric_id, &TEST_TAG_INT, 1, 0);
+ EXPECT_EQ(ret, 0);
+ ret = fieldstat_hist_record(instance, cube_id, metric_id, &TEST_TAG_INT, 1, 0);
+ EXPECT_EQ(ret, 0);
+ ret = fieldstat_hist_record(instance, cube_id, metric_id, &TEST_TAG_INT, 1, 500);
+
+ EXPECT_EQ(fieldstat_hist_value_at_percentile(instance, cube_id, metric_id, &TEST_TAG_LIST_INT, 60.0), 0);
+
+ fieldstat_free(instance);
+}
+
+
int main(int argc, char *argv[])
{
testing::InitGoogleTest(&argc, argv);