diff options
author | Manuel Klimek <klimek@google.com> | 2014-05-27 10:04:12 +0000 |
---|---|---|
committer | Manuel Klimek <klimek@google.com> | 2014-05-27 10:04:12 +0000 |
commit | 909b5c94c072516d980013073be9ca2cd8993f67 (patch) | |
tree | cc9a9703f078f8ce3b57dfb524d5d4acef4a8a23 /clang/unittests/ASTMatchers/ASTMatchersTest.cpp | |
parent | 73458c95ac7e4c6a1cb24166030ecce65ed33101 (diff) | |
download | bcm5719-llvm-909b5c94c072516d980013073be9ca2cd8993f67.tar.gz bcm5719-llvm-909b5c94c072516d980013073be9ca2cd8993f67.zip |
Adds child traversal matchers for IfStmt's then and else branches.
llvm-svn: 209649
Diffstat (limited to 'clang/unittests/ASTMatchers/ASTMatchersTest.cpp')
-rw-r--r-- | clang/unittests/ASTMatchers/ASTMatchersTest.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/unittests/ASTMatchers/ASTMatchersTest.cpp b/clang/unittests/ASTMatchers/ASTMatchersTest.cpp index 4ce56fd0238..9d9b2a15b79 100644 --- a/clang/unittests/ASTMatchers/ASTMatchersTest.cpp +++ b/clang/unittests/ASTMatchers/ASTMatchersTest.cpp @@ -1966,6 +1966,17 @@ TEST(Matcher, Conditions) { EXPECT_TRUE(notMatches("void x() { if (1) {} }", Condition)); } +TEST(IfStmt, ChildTraversalMatchers) { + EXPECT_TRUE(matches("void f() { if (false) true; else false; }", + ifStmt(hasThen(boolLiteral(equals(true)))))); + EXPECT_TRUE(notMatches("void f() { if (false) false; else true; }", + ifStmt(hasThen(boolLiteral(equals(true)))))); + EXPECT_TRUE(matches("void f() { if (false) false; else true; }", + ifStmt(hasElse(boolLiteral(equals(true)))))); + EXPECT_TRUE(notMatches("void f() { if (false) true; else false; }", + ifStmt(hasElse(boolLiteral(equals(true)))))); +} + TEST(MatchBinaryOperator, HasOperatorName) { StatementMatcher OperatorOr = binaryOperator(hasOperatorName("||")); |