blob: 7163d62251f34cf5a0f5570080ee3ac28a1633f5 [file] [log] [blame]
Manojkiran Eda17a897d2020-09-12 15:31:58 +05301#include <boost/algorithm/string.hpp>
2#include <boost/container/flat_set.hpp>
3#include <dbus_singleton.hpp>
4#include <dbus_utility.hpp>
5
6#include "gmock/gmock.h"
7
Nan Zhou5b28cdf2022-06-21 17:46:26 +00008namespace dbus::utility
9{
10namespace
11{
12
Manojkiran Eda17a897d2020-09-12 15:31:58 +053013TEST(DbusUtility, getNthStringFromPathGoodTest)
14{
15 std::string path("/0th/1st/2nd/3rd");
16 std::string result;
Nan Zhou5b28cdf2022-06-21 17:46:26 +000017 EXPECT_TRUE(getNthStringFromPath(path, 0, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053018 EXPECT_EQ(result, "0th");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000019 EXPECT_TRUE(getNthStringFromPath(path, 1, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053020 EXPECT_EQ(result, "1st");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000021 EXPECT_TRUE(getNthStringFromPath(path, 2, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053022 EXPECT_EQ(result, "2nd");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000023 EXPECT_TRUE(getNthStringFromPath(path, 3, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053024 EXPECT_EQ(result, "3rd");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000025 EXPECT_FALSE(getNthStringFromPath(path, 4, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053026}
27
28TEST(DbusUtility, getNthStringFromPathBadTest)
29{
30 std::string path("////0th///1st//\2nd///3rd?/");
31 std::string result;
Nan Zhou5b28cdf2022-06-21 17:46:26 +000032 EXPECT_TRUE(getNthStringFromPath(path, 0, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053033 EXPECT_EQ(result, "0th");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000034 EXPECT_TRUE(getNthStringFromPath(path, 1, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053035 EXPECT_EQ(result, "1st");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000036 EXPECT_TRUE(getNthStringFromPath(path, 2, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053037 EXPECT_EQ(result, "\2nd");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000038 EXPECT_TRUE(getNthStringFromPath(path, 3, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053039 EXPECT_EQ(result, "3rd?");
Nan Zhou5b28cdf2022-06-21 17:46:26 +000040 EXPECT_FALSE(getNthStringFromPath(path, -1, result));
Manojkiran Eda17a897d2020-09-12 15:31:58 +053041}
Nan Zhou5b28cdf2022-06-21 17:46:26 +000042} // namespace
43} // namespace dbus::utility