]>
git.proxmox.com Git - ceph.git/blob - ceph/src/jaegertracing/opentelemetry-cpp/sdk/test/metrics/observer_result_test.cc
1 // Copyright The OpenTelemetry Authors
2 // SPDX-License-Identifier: Apache-2.0
4 #ifndef ENABLE_METRICS_PREVIEW
5 # include "opentelemetry/sdk/metrics/observer_result.h"
6 # include "opentelemetry/sdk/metrics/view/attributes_processor.h"
8 # include <gtest/gtest.h>
10 using namespace opentelemetry::sdk::metrics
;
11 TEST(ObserverResult
, BasicTests
)
13 const AttributesProcessor
*attributes_processor
= new DefaultAttributesProcessor();
15 ObserverResult
<long> observer_result(attributes_processor
);
17 observer_result
.Observe(10l);
18 observer_result
.Observe(20l);
19 EXPECT_EQ(observer_result
.GetMeasurements().size(), 1);
21 std::map
<std::string
, int64_t> m1
= {{"k2", 12}};
22 observer_result
.Observe(
23 30l, opentelemetry::common::KeyValueIterableView
<std::map
<std::string
, int64_t>>(m1
));
24 EXPECT_EQ(observer_result
.GetMeasurements().size(), 2);
26 observer_result
.Observe(
27 40l, opentelemetry::common::KeyValueIterableView
<std::map
<std::string
, int64_t>>(m1
));
28 EXPECT_EQ(observer_result
.GetMeasurements().size(), 2);
30 std::map
<std::string
, int64_t> m2
= {{"k2", 12}, {"k4", 12}};
31 observer_result
.Observe(
32 40l, opentelemetry::common::KeyValueIterableView
<std::map
<std::string
, int64_t>>(m2
));
33 EXPECT_EQ(observer_result
.GetMeasurements().size(), 3);
35 delete attributes_processor
;