From 57568f98859a7836b75dd03f48c4687075d91631 Mon Sep 17 00:00:00 2001
From: Kai Koehne <kai.koehne@qt.io>
Date: Fri, 23 Mar 2018 11:40:06 +0100
Subject: [PATCH] qtattributionsscanner: Add test mode

Rename test qt_attribution.json files to qt_attribution_test.json.
This avoids warnings when picking up the test files in normal mode.

Change-Id: I8831a81c84986c074d3519d2855c00987b4c2570
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
---
 src/qtattributionsscanner/scanner.cpp                |  6 +++++-
 ...{qt_attribution.json => qt_attribution_test.json} |  0
 ...{qt_attribution.json => qt_attribution_test.json} |  0
 .../testdata/warnings/incomplete/expected.error      | 12 ++++++------
 ...{qt_attribution.json => qt_attribution_test.json} |  0
 .../testdata/warnings/unknown/expected.error         |  2 +-
 ...{qt_attribution.json => qt_attribution_test.json} |  0
 .../tst_qtattributionsscanner.cpp                    |  5 ++++-
 8 files changed, 16 insertions(+), 9 deletions(-)
 rename tests/auto/qtattributionsscanner/testdata/good/complete/{qt_attribution.json => qt_attribution_test.json} (100%)
 rename tests/auto/qtattributionsscanner/testdata/good/minimal/{qt_attribution.json => qt_attribution_test.json} (100%)
 rename tests/auto/qtattributionsscanner/testdata/warnings/incomplete/{qt_attribution.json => qt_attribution_test.json} (100%)
 rename tests/auto/qtattributionsscanner/testdata/warnings/unknown/{qt_attribution.json => qt_attribution_test.json} (100%)

diff --git a/src/qtattributionsscanner/scanner.cpp b/src/qtattributionsscanner/scanner.cpp
index d7d958138..86450dd9e 100644
--- a/src/qtattributionsscanner/scanner.cpp
+++ b/src/qtattributionsscanner/scanner.cpp
@@ -195,7 +195,11 @@ QVector<Package> scanDirectory(const QString &directory, LogLevel logLevel)
     QDir dir(directory);
     QVector<Package> packages;
 
-    dir.setNameFilters(QStringList() << QStringLiteral("qt_attribution.json"));
+    QStringList nameFilters = QStringList()
+            << QStringLiteral("qt_attribution.json");
+    if (qEnvironmentVariableIsSet("QT_ATTRIBUTIONSSCANNER_TEST"))
+        nameFilters << QStringLiteral("qt_attribution_test.json");
+    dir.setNameFilters(nameFilters);
     dir.setFilter(QDir::AllDirs | QDir::NoDotAndDotDot | QDir::Files);
 
     const QFileInfoList entries = dir.entryInfoList();
diff --git a/tests/auto/qtattributionsscanner/testdata/good/complete/qt_attribution.json b/tests/auto/qtattributionsscanner/testdata/good/complete/qt_attribution_test.json
similarity index 100%
rename from tests/auto/qtattributionsscanner/testdata/good/complete/qt_attribution.json
rename to tests/auto/qtattributionsscanner/testdata/good/complete/qt_attribution_test.json
diff --git a/tests/auto/qtattributionsscanner/testdata/good/minimal/qt_attribution.json b/tests/auto/qtattributionsscanner/testdata/good/minimal/qt_attribution_test.json
similarity index 100%
rename from tests/auto/qtattributionsscanner/testdata/good/minimal/qt_attribution.json
rename to tests/auto/qtattributionsscanner/testdata/good/minimal/qt_attribution_test.json
diff --git a/tests/auto/qtattributionsscanner/testdata/warnings/incomplete/expected.error b/tests/auto/qtattributionsscanner/testdata/warnings/incomplete/expected.error
index e18d2976b..7095bf1a2 100644
--- a/tests/auto/qtattributionsscanner/testdata/warnings/incomplete/expected.error
+++ b/tests/auto/qtattributionsscanner/testdata/warnings/incomplete/expected.error
@@ -1,6 +1,6 @@
-File %{PWD}/qt_attribution.json: Missing mandatory property 'Name'.
-File %{PWD}/qt_attribution.json: Missing mandatory property 'Id'.
-File %{PWD}/qt_attribution.json: Missing mandatory property 'QDocModule'.
-File %{PWD}/qt_attribution.json: Missing mandatory property 'QtUsage'.
-File %{PWD}/qt_attribution.json: Missing mandatory property 'License'.
-File %{PWD}/qt_attribution.json: Missing mandatory property 'Copyright'.
+File %{PWD}/qt_attribution_test.json: Missing mandatory property 'Name'.
+File %{PWD}/qt_attribution_test.json: Missing mandatory property 'Id'.
+File %{PWD}/qt_attribution_test.json: Missing mandatory property 'QDocModule'.
+File %{PWD}/qt_attribution_test.json: Missing mandatory property 'QtUsage'.
+File %{PWD}/qt_attribution_test.json: Missing mandatory property 'License'.
+File %{PWD}/qt_attribution_test.json: Missing mandatory property 'Copyright'.
diff --git a/tests/auto/qtattributionsscanner/testdata/warnings/incomplete/qt_attribution.json b/tests/auto/qtattributionsscanner/testdata/warnings/incomplete/qt_attribution_test.json
similarity index 100%
rename from tests/auto/qtattributionsscanner/testdata/warnings/incomplete/qt_attribution.json
rename to tests/auto/qtattributionsscanner/testdata/warnings/incomplete/qt_attribution_test.json
diff --git a/tests/auto/qtattributionsscanner/testdata/warnings/unknown/expected.error b/tests/auto/qtattributionsscanner/testdata/warnings/unknown/expected.error
index 89b48074b..2cc0102a7 100644
--- a/tests/auto/qtattributionsscanner/testdata/warnings/unknown/expected.error
+++ b/tests/auto/qtattributionsscanner/testdata/warnings/unknown/expected.error
@@ -1 +1 @@
-File %{PWD}/qt_attribution.json: Unknown key Unknown.
+File %{PWD}/qt_attribution_test.json: Unknown key Unknown.
diff --git a/tests/auto/qtattributionsscanner/testdata/warnings/unknown/qt_attribution.json b/tests/auto/qtattributionsscanner/testdata/warnings/unknown/qt_attribution_test.json
similarity index 100%
rename from tests/auto/qtattributionsscanner/testdata/warnings/unknown/qt_attribution.json
rename to tests/auto/qtattributionsscanner/testdata/warnings/unknown/qt_attribution_test.json
diff --git a/tests/auto/qtattributionsscanner/tst_qtattributionsscanner.cpp b/tests/auto/qtattributionsscanner/tst_qtattributionsscanner.cpp
index 7740fde9b..7789ad5f7 100644
--- a/tests/auto/qtattributionsscanner/tst_qtattributionsscanner.cpp
+++ b/tests/auto/qtattributionsscanner/tst_qtattributionsscanner.cpp
@@ -81,7 +81,7 @@ void tst_qtattributionsscanner::test_data()
             << QStringLiteral("warnings/unknown/expected.json")
             << QStringLiteral("warnings/unknown/expected.error");
     QTest::newRow("singlefile")
-            << QStringLiteral("good/minimal/qt_attribution.json")
+            << QStringLiteral("good/minimal/qt_attribution_test.json")
             << QStringLiteral("good/minimal/expected.json")
             << QStringLiteral("good/minimal/expected.error");
 }
@@ -106,6 +106,9 @@ void tst_qtattributionsscanner::test()
 
     QProcess proc;
     QString command = m_cmd + " " + dir + " --output-format json";
+    QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
+    env.insert("QT_ATTRIBUTIONSSCANNER_TEST", "1");
+    proc.setProcessEnvironment(env);
     proc.start(command, QIODevice::ReadWrite | QIODevice::Text);
 
     QVERIFY2(proc.waitForStarted(), qPrintable(command + QLatin1String(" :") + proc.errorString()));
-- 
GitLab