]>
git.proxmox.com Git - ceph.git/blob - ceph/src/jaegertracing/opentelemetry-cpp/api/test/trace/span_id_test.cc
1 // Copyright The OpenTelemetry Authors
2 // SPDX-License-Identifier: Apache-2.0
4 #include "opentelemetry/trace/span_id.h"
9 #include <gtest/gtest.h>
14 using opentelemetry::trace::SpanId
;
16 std::string
Hex(const opentelemetry::trace::SpanId
&span
)
19 span
.ToLowerBase16(buf
);
20 return std::string(buf
, sizeof(buf
));
23 TEST(SpanIdTest
, DefaultConstruction
)
26 EXPECT_FALSE(id
.IsValid());
27 EXPECT_EQ("0000000000000000", Hex(id
));
30 TEST(SpanIdTest
, ValidId
)
32 constexpr uint8_t buf
[] = {1, 2, 3, 4, 5, 6, 7, 8};
34 EXPECT_TRUE(id
.IsValid());
35 EXPECT_EQ("0102030405060708", Hex(id
));
36 EXPECT_NE(SpanId(), id
);
37 EXPECT_EQ(SpanId(buf
), id
);
40 TEST(SpanIdTest
, LowercaseBase16
)
42 constexpr uint8_t buf
[] = {1, 2, 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff};
44 EXPECT_TRUE(id
.IsValid());
45 EXPECT_EQ("0102aabbccddeeff", Hex(id
));
46 EXPECT_NE(SpanId(), id
);
47 EXPECT_EQ(SpanId(buf
), id
);
50 TEST(SpanIdTest
, CopyBytesTo
)
52 constexpr uint8_t src
[] = {1, 2, 3, 4, 5, 6, 7, 8};
56 EXPECT_TRUE(memcmp(src
, buf
, 8) == 0);