1 // Copyright (C) 2018-2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
5 #include <gtest/gtest.h>
6 #include <unordered_map>
7 #include "details/caseless.hpp"
11 using namespace InferenceEngine::details;
13 class CaselessTests : public ::testing::Test {
15 virtual void TearDown() {
18 virtual void SetUp() {
25 TEST_F(CaselessTests, emptyAreEqual) {
26 ASSERT_TRUE(InferenceEngine::details::equal("", ""));
29 TEST_F(CaselessTests, canIgnoreCase) {
30 ASSERT_TRUE(InferenceEngine::details::equal("abc", "ABC"));
33 TEST_F(CaselessTests, emptyIsNotEqualNotEmpty) {
34 ASSERT_FALSE(InferenceEngine::details::equal("", "abc"));
37 TEST_F(CaselessTests, canFindCaslessInMap) {
38 caseless_map<string, int> storage = {
43 ASSERT_EQ(storage["abc"], 1);
44 ASSERT_EQ(storage["ABC"], 1);
45 ASSERT_EQ(storage["BC"], 2);
46 ASSERT_EQ(storage["aBCd"], 3);
47 ASSERT_EQ(storage.find("aBd"), storage.end());
48 ASSERT_EQ(storage.find(""), storage.end());
51 TEST_F(CaselessTests, canFindCaslessInUnordered) {
53 caseless_unordered_map <string, int> storage = {
58 ASSERT_EQ(storage["abc"], 1);
59 ASSERT_EQ(storage["ABC"], 1);
60 ASSERT_EQ(storage["BC"], 2);
61 ASSERT_EQ(storage["aBCd"], 3);
62 ASSERT_EQ(storage.find("aBd"), storage.end());
63 ASSERT_EQ(storage.find(""), storage.end());