]> git.proxmox.com Git - ceph.git/blame - ceph/src/jaegertracing/opentelemetry-cpp/api/test/metrics/meter_provider_test.cc
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / api / test / metrics / meter_provider_test.cc
CommitLineData
1e59de90
TL
1// Copyright The OpenTelemetry Authors
2// SPDX-License-Identifier: Apache-2.0
3
4#ifndef ENABLE_METRICS_PREVIEW
5
6# include <gtest/gtest.h>
7# include "opentelemetry/metrics/noop.h"
8# include "opentelemetry/metrics/provider.h"
9# include "opentelemetry/nostd/shared_ptr.h"
10
11using opentelemetry::metrics::Meter;
12using opentelemetry::metrics::MeterProvider;
13using opentelemetry::metrics::NoopMeterProvider;
14using opentelemetry::metrics::Provider;
15
16TEST(Provider, GetMeterProviderDefault)
17{
18 auto tf = Provider::GetMeterProvider();
19 EXPECT_NE(nullptr, tf);
20}
21
22TEST(Provider, SetMeterProvider)
23{
24 auto tf = opentelemetry::nostd::shared_ptr<MeterProvider>(new NoopMeterProvider());
25 Provider::SetMeterProvider(tf);
26 ASSERT_EQ(tf, Provider::GetMeterProvider());
27}
28
29TEST(Provider, MultipleMeterProviders)
30{
31 auto tf = opentelemetry::nostd::shared_ptr<MeterProvider>(new NoopMeterProvider());
32 Provider::SetMeterProvider(tf);
33 auto tf2 = opentelemetry::nostd::shared_ptr<MeterProvider>(new NoopMeterProvider());
34 Provider::SetMeterProvider(tf2);
35
36 ASSERT_NE(Provider::GetMeterProvider(), tf);
37}
38#endif