58 lines · cpp
1//===-- NameMatchesTest.cpp -----------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include "lldb/Utility/NameMatches.h"10#include "gtest/gtest.h"11 12using namespace lldb_private;13 14TEST(NameMatchesTest, Ignore) {15 EXPECT_TRUE(NameMatches("foo", NameMatch::Ignore, "bar"));16}17 18TEST(NameMatchesTest, Equals) {19 EXPECT_TRUE(NameMatches("foo", NameMatch::Equals, "foo"));20 EXPECT_FALSE(NameMatches("foo", NameMatch::Equals, "bar"));21}22 23TEST(NameMatchesTest, Contains) {24 EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "foo"));25 EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "oob"));26 EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "bar"));27 EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "foobar"));28 EXPECT_TRUE(NameMatches("", NameMatch::Contains, ""));29 EXPECT_FALSE(NameMatches("", NameMatch::Contains, "foo"));30 EXPECT_FALSE(NameMatches("foobar", NameMatch::Contains, "baz"));31}32 33TEST(NameMatchesTest, StartsWith) {34 EXPECT_TRUE(NameMatches("foo", NameMatch::StartsWith, "f"));35 EXPECT_TRUE(NameMatches("foo", NameMatch::StartsWith, ""));36 EXPECT_TRUE(NameMatches("", NameMatch::StartsWith, ""));37 EXPECT_FALSE(NameMatches("foo", NameMatch::StartsWith, "b"));38 EXPECT_FALSE(NameMatches("", NameMatch::StartsWith, "b"));39}40 41TEST(NameMatchesTest, EndsWith) {42 EXPECT_TRUE(NameMatches("foo", NameMatch::EndsWith, "o"));43 EXPECT_TRUE(NameMatches("foo", NameMatch::EndsWith, ""));44 EXPECT_TRUE(NameMatches("", NameMatch::EndsWith, ""));45 EXPECT_FALSE(NameMatches("foo", NameMatch::EndsWith, "b"));46 EXPECT_FALSE(NameMatches("", NameMatch::EndsWith, "b"));47}48 49TEST(NameMatchesTest, RegularExpression) {50 EXPECT_TRUE(NameMatches("foobar", NameMatch::RegularExpression, "foo"));51 EXPECT_TRUE(NameMatches("foobar", NameMatch::RegularExpression, "f[oa]o"));52 EXPECT_FALSE(NameMatches("foo", NameMatch::RegularExpression, ""));53 EXPECT_FALSE(NameMatches("", NameMatch::RegularExpression, ""));54 EXPECT_FALSE(NameMatches("foo", NameMatch::RegularExpression, "b"));55 EXPECT_FALSE(NameMatches("", NameMatch::RegularExpression, "b"));56 EXPECT_FALSE(NameMatches("^a", NameMatch::RegularExpression, "^a"));57}58