Skip to content

Commit ffab2ee

Browse files
committed
Replace parameterized test with standard one
1 parent 0b0ef58 commit ffab2ee

File tree

1 file changed

+53
-63
lines changed

1 file changed

+53
-63
lines changed

api/test/trace/propagation/detail/string_test.cc

Lines changed: 53 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -7,70 +7,60 @@
77

88
#include "opentelemetry/nostd/string_view.h"
99

10-
struct SplitStringTestData
11-
{
12-
opentelemetry::nostd::string_view input;
13-
char separator;
14-
size_t max_count;
15-
std::vector<opentelemetry::nostd::string_view> splits;
16-
size_t expected_number_strings;
17-
18-
// When googletest registers parameterized tests, it uses this method to format the parameters.
19-
// The default implementation prints hex dump of all bytes in the object. If there is any padding
20-
// in these bytes, valgrind reports this as a warning - "Use of uninitialized bytes".
21-
// See https://github.com/google/googletest/issues/3805.
22-
friend void PrintTo(const SplitStringTestData& data, std::ostream* os) {
23-
std::stringstream ss;
24-
for (auto it = data.splits.begin(); it != data.splits.end(); it++) {
25-
if (it != data.splits.begin()) {
26-
ss << ",";
27-
}
28-
ss << *it;
29-
}
30-
*os << "(" << data.input << "," << data.separator << "," << data.max_count << "," << ss.str() << "," << data.expected_number_strings << ")";
31-
}
32-
};
33-
34-
const SplitStringTestData split_string_test_cases[] = {
35-
{"foo,bar,baz", ',', 4, std::vector<opentelemetry::nostd::string_view>{"foo", "bar", "baz"}, 3},
36-
{"foo,bar,baz,foobar", ',', 4,
37-
std::vector<opentelemetry::nostd::string_view>{"foo", "bar", "baz", "foobar"}, 4},
38-
{"foo,bar,baz,foobar", '.', 4,
39-
std::vector<opentelemetry::nostd::string_view>{"foo,bar,baz,foobar"}, 1},
40-
{"foo,bar,baz,", ',', 4,
41-
std::vector<opentelemetry::nostd::string_view>{"foo", "bar", "baz", ""}, 4},
42-
{"foo,bar,baz,", ',', 2, std::vector<opentelemetry::nostd::string_view>{"foo", "bar"}, 2},
43-
{"foo ,bar, baz ", ',', 4,
44-
std::vector<opentelemetry::nostd::string_view>{"foo ", "bar", " baz "}, 3},
45-
{"foo ,bar, baz ", ',', 4,
46-
std::vector<opentelemetry::nostd::string_view>{"foo ", "bar", " baz "}, 3},
47-
{"00-0af7651916cd43dd8448eb211c80319c-00f067aa0ba902b7-01", '-', 4,
48-
std::vector<opentelemetry::nostd::string_view>{"00", "0af7651916cd43dd8448eb211c80319c",
49-
"00f067aa0ba902b7", "01"},
50-
4},
51-
};
10+
using namespace opentelemetry;
5211

53-
// Test fixture
54-
class SplitStringTestFixture : public ::testing::TestWithParam<SplitStringTestData>
55-
{};
12+
// struct SplitStringTestData
13+
//{
14+
// opentelemetry::nostd::string_view input;
15+
// char separator;
16+
// size_t max_count;
17+
// std::vector<opentelemetry::nostd::string_view> splits;
18+
// size_t expected_number_strings;
19+
// };
20+
//
21+
// const SplitStringTestData split_string_test_cases[] = {
22+
// {"foo,bar,baz", ',', 4, std::vector<opentelemetry::nostd::string_view>{"foo", "bar", "baz"},
23+
// 3},
24+
// {"foo,bar,baz,foobar", ',', 4,
25+
// std::vector<opentelemetry::nostd::string_view>{"foo", "bar", "baz", "foobar"}, 4},
26+
// {"foo,bar,baz,foobar", '.', 4,
27+
// std::vector<opentelemetry::nostd::string_view>{"foo,bar,baz,foobar"}, 1},
28+
// {"foo,bar,baz,", ',', 4,
29+
// std::vector<opentelemetry::nostd::string_view>{"foo", "bar", "baz", ""}, 4},
30+
// {"foo,bar,baz,", ',', 2, std::vector<opentelemetry::nostd::string_view>{"foo", "bar"}, 2},
31+
// {"foo ,bar, baz ", ',', 4,
32+
// std::vector<opentelemetry::nostd::string_view>{"foo ", "bar", " baz "}, 3},
33+
// {"foo ,bar, baz ", ',', 4,
34+
// std::vector<opentelemetry::nostd::string_view>{"foo ", "bar", " baz "}, 3},
35+
// {"00-0af7651916cd43dd8448eb211c80319c-00f067aa0ba902b7-01", '-', 4,
36+
// std::vector<opentelemetry::nostd::string_view>{"00", "0af7651916cd43dd8448eb211c80319c",
37+
// "00f067aa0ba902b7", "01"},
38+
// 4},
39+
// };
40+
//
41+
//
42+
// TEST(StringTest, SplitStringTest)
43+
//{
44+
// for (auto &test_param : split_string_test_cases) {
45+
// std::vector<opentelemetry::nostd::string_view> fields{};
46+
// fields.reserve(test_param.expected_number_strings);
47+
// size_t got_splits_num = opentelemetry::trace::propagation::detail::SplitString(
48+
// test_param.input, test_param.separator, fields.data(), test_param.max_count);
49+
//
50+
// // Assert on the output
51+
// EXPECT_EQ(got_splits_num, test_param.expected_number_strings);
52+
// for (size_t i = 0; i < got_splits_num; i++)
53+
// {
54+
// // Checks for resulting strings in-order
55+
// EXPECT_EQ(fields[i], test_param.splits[i]);
56+
// }
57+
// }
58+
// }
5659

57-
TEST_P(SplitStringTestFixture, SplitsAsExpected)
60+
TEST(StringTest, SimpleTest)
5861
{
59-
SplitStringTestData test_param = GetParam();
60-
std::vector<opentelemetry::nostd::string_view> fields{};
61-
fields.reserve(test_param.expected_number_strings);
62-
size_t got_splits_num = opentelemetry::trace::propagation::detail::SplitString(
63-
test_param.input, test_param.separator, fields.data(), test_param.max_count);
64-
65-
// Assert on the output
66-
EXPECT_EQ(got_splits_num, test_param.expected_number_strings);
67-
for (size_t i = 0; i < got_splits_num; i++)
68-
{
69-
// Checks for resulting strings in-order
70-
EXPECT_EQ(fields[i], test_param.splits[i]);
71-
}
62+
nostd::string_view input = "foo,bar,baz";
63+
std::array<nostd::string_view, 4> fields{};
64+
size_t got_splits = ::trace::propagation::detail::SplitString(input, ',', fields.data(), 4);
65+
EXPECT_EQ(3, got_splits);
7266
}
73-
74-
INSTANTIATE_TEST_SUITE_P(SplitStringTestCases,
75-
SplitStringTestFixture,
76-
::testing::ValuesIn(split_string_test_cases));

0 commit comments

Comments
 (0)