| //===-- NameMatchesTest.cpp -------------------------------------*- C++ -*-===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #include "lldb/Utility/NameMatches.h" |
| #include "gtest/gtest.h" |
| |
| using namespace lldb_private; |
| |
| TEST(NameMatchesTest, Ignore) { |
| EXPECT_TRUE(NameMatches("foo", NameMatch::Ignore, "bar")); |
| } |
| |
| TEST(NameMatchesTest, Equals) { |
| EXPECT_TRUE(NameMatches("foo", NameMatch::Equals, "foo")); |
| EXPECT_FALSE(NameMatches("foo", NameMatch::Equals, "bar")); |
| } |
| |
| TEST(NameMatchesTest, Contains) { |
| EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "foo")); |
| EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "oob")); |
| EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "bar")); |
| EXPECT_TRUE(NameMatches("foobar", NameMatch::Contains, "foobar")); |
| EXPECT_TRUE(NameMatches("", NameMatch::Contains, "")); |
| EXPECT_FALSE(NameMatches("", NameMatch::Contains, "foo")); |
| EXPECT_FALSE(NameMatches("foobar", NameMatch::Contains, "baz")); |
| } |
| |
| TEST(NameMatchesTest, StartsWith) { |
| EXPECT_TRUE(NameMatches("foo", NameMatch::StartsWith, "f")); |
| EXPECT_TRUE(NameMatches("foo", NameMatch::StartsWith, "")); |
| EXPECT_TRUE(NameMatches("", NameMatch::StartsWith, "")); |
| EXPECT_FALSE(NameMatches("foo", NameMatch::StartsWith, "b")); |
| EXPECT_FALSE(NameMatches("", NameMatch::StartsWith, "b")); |
| } |
| |
| TEST(NameMatchesTest, EndsWith) { |
| EXPECT_TRUE(NameMatches("foo", NameMatch::EndsWith, "o")); |
| EXPECT_TRUE(NameMatches("foo", NameMatch::EndsWith, "")); |
| EXPECT_TRUE(NameMatches("", NameMatch::EndsWith, "")); |
| EXPECT_FALSE(NameMatches("foo", NameMatch::EndsWith, "b")); |
| EXPECT_FALSE(NameMatches("", NameMatch::EndsWith, "b")); |
| } |
| |
| TEST(NameMatchesTest, RegularExpression) { |
| EXPECT_TRUE(NameMatches("foobar", NameMatch::RegularExpression, "foo")); |
| EXPECT_TRUE(NameMatches("foobar", NameMatch::RegularExpression, "f[oa]o")); |
| EXPECT_TRUE(NameMatches("foo", NameMatch::RegularExpression, "")); |
| EXPECT_TRUE(NameMatches("", NameMatch::RegularExpression, "")); |
| EXPECT_FALSE(NameMatches("foo", NameMatch::RegularExpression, "b")); |
| EXPECT_FALSE(NameMatches("", NameMatch::RegularExpression, "b")); |
| EXPECT_FALSE(NameMatches("^a", NameMatch::RegularExpression, "^a")); |
| } |