summaryrefslogtreecommitdiffstats
path: root/src/testlib/qtestblacklist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/testlib/qtestblacklist.cpp')
-rw-r--r--src/testlib/qtestblacklist.cpp27
1 files changed, 17 insertions, 10 deletions
diff --git a/src/testlib/qtestblacklist.cpp b/src/testlib/qtestblacklist.cpp
index 7b64942e7b..4154f8f2a6 100644
--- a/src/testlib/qtestblacklist.cpp
+++ b/src/testlib/qtestblacklist.cpp
@@ -25,8 +25,10 @@ using namespace Qt::StringLiterals;
referring to this documentation is kind to readers. Comments can also be used
to indicate the reasons for ignoring particular cases.
- The key "ci" applies only when run by COIN. The key "cmake" applies when Qt
- is built using CMake. Other keys name platforms, operating systems,
+ Each blacklist line is interpreted as a list of keywords in an AND-relationship.
+ To blacklist a test for multiple platforms (OR-relationship), use separate lines.
+
+ The key "ci" applies only when run by COIN. Other keys name platforms, operating systems,
distributions, tool-chains or architectures; a ! prefix reverses what it
checks. A version, joined to a key (at present, only for distributions and
for msvc) with a hyphen, limits the key to the specific version. A keyword
@@ -44,7 +46,8 @@ using namespace Qt::StringLiterals;
data row's name coincides with that of a local data row, some unintended
matches may result; try to keep your data-row tags distinct.)
- Subsequent lines give conditions for ignoring this test.
+ Subsequent lines give conditions for ignoring this test. You need at least
+ one or the group has no effect.
# See qtbase/src/testlib/qtestblacklist.cpp for format
# Test doesn't work on QNX at all
@@ -57,7 +60,7 @@ using namespace Qt::StringLiterals;
# Flaky in COIN on macOS, not reproducible by developers
[testSlowly]
- ci osx
+ macos ci
# Needs basic C++11 support
[testfunction2:testData]
@@ -115,6 +118,9 @@ static QSet<QByteArray> keywords()
#ifdef Q_OS_WATCHOS
<< "watchos"
#endif
+#ifdef Q_OS_VISIONOS
+ << "visionos"
+#endif
#ifdef Q_OS_ANDROID
<< "android"
#endif
@@ -149,8 +155,10 @@ static QSet<QByteArray> keywords()
<< "msvc-2015"
# elif _MSC_VER <= 1916
<< "msvc-2017"
-# else
+# elif _MSC_VER <= 1929
<< "msvc-2019"
+# else
+ << "msvc-2022"
# endif
#endif
@@ -164,8 +172,6 @@ static QSet<QByteArray> keywords()
#ifdef QT_BUILD_INTERNAL
<< "developer-build"
#endif
-
- << "cmake"
;
QCoreApplication *app = QCoreApplication::instance();
@@ -257,7 +263,7 @@ void parseBlackList()
if (line.isEmpty())
continue;
if (line.startsWith('[')) {
- function = line.mid(1, line.length() - 2);
+ function = line.mid(1, line.size() - 2);
continue;
}
bool condition = checkCondition(line);
@@ -273,7 +279,8 @@ void parseBlackList()
}
}
-void checkBlackLists(const char *slot, const char *data, const char *global)
+// Returns \c true if this test-case is blacklisted.
+bool checkBlackLists(const char *slot, const char *data, const char *global)
{
bool ignore = ignoreAll;
@@ -295,7 +302,7 @@ void checkBlackLists(const char *slot, const char *data, const char *global)
}
}
- QTestResult::setBlacklistCurrentTest(ignore);
+ return ignore;
}
} // QTestPrivate