r189587 - Fix tests to be more specific.

Samuel Benzaquen sbenza at google.com
Thu Aug 29 08:39:26 PDT 2013


Author: sbenza
Date: Thu Aug 29 10:39:26 2013
New Revision: 189587

URL: http://llvm.org/viewvc/llvm-project?rev=189587&view=rev
Log:
Fix tests to be more specific.
The environments can inject some declaration in every translation unit,
which can match very generic matchers, thus failing the tests.

Summary:
Fix tests to be more specific.
The environments can inject some declaration in every translation unit,
which can match very generic matchers, thus failing the tests.

Reviewers: aaron.ballman

CC: klimek, cfe-commits, revane

Differential Revision: http://llvm-reviews.chandlerc.com/D1541

Modified:
    cfe/trunk/unittests/ASTMatchers/Dynamic/RegistryTest.cpp

Modified: cfe/trunk/unittests/ASTMatchers/Dynamic/RegistryTest.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/ASTMatchers/Dynamic/RegistryTest.cpp?rev=189587&r1=189586&r2=189587&view=diff
==============================================================================
--- cfe/trunk/unittests/ASTMatchers/Dynamic/RegistryTest.cpp (original)
+++ cfe/trunk/unittests/ASTMatchers/Dynamic/RegistryTest.cpp Thu Aug 29 10:39:26 2013
@@ -169,22 +169,16 @@ TEST_F(RegistryTest, PolymorphicMatchers
   EXPECT_FALSE(matches("void f();", Func));
 
   Matcher<Decl> Anything = constructMatcher("anything").getTypedMatcher<Decl>();
-  Matcher<Decl> RecordDecl =
-      constructMatcher("recordDecl", VariantMatcher::SingleMatcher(Anything))
-          .getTypedMatcher<Decl>();
-
-  EXPECT_TRUE(matches("int a;", Anything));
-  EXPECT_TRUE(matches("class A {};", Anything));
-  EXPECT_TRUE(matches("void f(){};", Anything));
-  // FIXME: A couple of tests have been suppressed.
-  // I know it'd be bad with _MSC_VER here, though.
-#if !defined(_MSC_VER)
-  EXPECT_FALSE(matches("int a;", RecordDecl));
-#endif
-  EXPECT_TRUE(matches("class A {};", RecordDecl));
-#if !defined(_MSC_VER)
-  EXPECT_FALSE(matches("void f(){};", RecordDecl));
-#endif
+  Matcher<Decl> RecordDecl = constructMatcher(
+      "recordDecl", constructMatcher("hasName", std::string("Foo")),
+      VariantMatcher::SingleMatcher(Anything)).getTypedMatcher<Decl>();
+
+  EXPECT_TRUE(matches("int Foo;", Anything));
+  EXPECT_TRUE(matches("class Foo {};", Anything));
+  EXPECT_TRUE(matches("void Foo(){};", Anything));
+  EXPECT_FALSE(matches("int Foo;", RecordDecl));
+  EXPECT_TRUE(matches("class Foo {};", RecordDecl));
+  EXPECT_FALSE(matches("void Foo(){};", RecordDecl));
 }
 
 TEST_F(RegistryTest, TemplateArgument) {
@@ -263,7 +257,9 @@ TEST_F(RegistryTest, Adaptative) {
 
 TEST_F(RegistryTest, VariadicOp) {
   Matcher<Decl> D = constructMatcher(
-      "anyOf", constructMatcher("recordDecl"),
+      "anyOf",
+      constructMatcher("recordDecl",
+                       constructMatcher("hasName", std::string("Foo"))),
       constructMatcher("namedDecl",
                        constructMatcher("hasName", std::string("foo"))))
       .getTypedMatcher<Decl>();





More information about the cfe-commits mailing list