From: Hubert Tong Date: Mon, 10 Jun 2019 22:33:34 +0000 (+0000) Subject: [analyzer][tests] Add normalize_plist to replace diff_plist X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a992e7166baff7347afc749435bf2a737eb3e727;p=clang [analyzer][tests] Add normalize_plist to replace diff_plist Summary: The `%diff_plist` lit substitution invokes `diff` with a non-portable `-I` option. The intended effect can be achieved by normalizing the inputs to `diff` beforehand. Such normalization can be done with `grep -Ev`, which is also used by other tests. This patch applies the change (adjusted for review comments) described in http://lists.llvm.org/pipermail/cfe-dev/2019-April/061904.html to the specific case shown in the list message. Mechanical changes to the other affected files will follow in later patches. Reviewers: NoQ, sfertile, xingxue, jasonliu, daltenty Reviewed By: NoQ Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, Charusso, jsji, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D62949 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@362994 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Analysis/lit.local.cfg b/test/Analysis/lit.local.cfg index 84f7569152..936c2520f6 100644 --- a/test/Analysis/lit.local.cfg +++ b/test/Analysis/lit.local.cfg @@ -14,6 +14,14 @@ config.test_format = analyzer_test.AnalyzerTest( config.substitutions.append(('%diff_plist', 'diff -u -w -I "/" -I ".:" -I "version"')) +# Filtering command used by Clang Analyzer tests (when comparing .plist files +# with reference output) +config.substitutions.append(('%normalize_plist', + "grep -Ev '%s|%s|%s'" % + ('^[[:space:]]*.* version .*$', + '^[[:space:]]*/.*$', + '^[[:space:]]*.:.*$'))) + # Diff command for testing SARIF output to reference output. config.substitutions.append(('%diff_sarif', '''diff -U1 -w -I ".*file:.*%basename_t" -I '"version":' -I "2\.0\.0\-csd\.[0-9]*\.beta\."''')) diff --git a/test/Analysis/unix-fns.c b/test/Analysis/unix-fns.c index 96e5d1d445..2f59dc6458 100644 --- a/test/Analysis/unix-fns.c +++ b/test/Analysis/unix-fns.c @@ -1,5 +1,5 @@ // RUN: %clang_analyze_cc1 -triple x86_64-apple-darwin10 -analyzer-checker=core,unix.API,osx.API,optin.portability %s -analyzer-store=region -analyzer-output=plist -analyzer-config faux-bodies=true -fblocks -verify -o %t.plist -// RUN: cat %t.plist | %diff_plist %S/Inputs/expected-plists/unix-fns.c.plist - +// RUN: %normalize_plist <%t.plist | diff -u %S/Inputs/expected-plists/unix-fns.c.plist - // RUN: mkdir -p %t.dir // RUN: %clang_analyze_cc1 -analyzer-checker=core,unix.API,osx.API,optin.portability -analyzer-output=html -analyzer-config faux-bodies=true -fblocks -o %t.dir %s // RUN: rm -fR %t.dir