Skip tst_qthreadonce test on QEMU

The test causes frequent failures in the CI. Couldn't reproduce on
actual arm64 hardware, so it's likely to be a QEMU bug. From the
available logs it seems that all the test cases are flaky (there's a
failure even after cleanupTestCase() is called), so disable all of them.

Fixes: QTBUG-94737
Pick-to: 6.1 6.2
Change-Id: I783ec2179ba779a2c8d93351a78e8472a4f7a907
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
This commit is contained in:
Sona Kurazyan 2021-07-20 11:24:51 +02:00
parent e9519d207e
commit f3bccd2f4f
2 changed files with 11 additions and 0 deletions

View File

@ -8,4 +8,6 @@ qt_internal_add_test(tst_qthreadonce
SOURCES
qthreadonce.cpp
tst_qthreadonce.cpp
LIBRARIES
Qt::TestPrivate
)

View File

@ -36,11 +36,14 @@
#include <qwaitcondition.h>
#include "qthreadonce.h"
#include <QtTest/private/qemulationdetector_p.h>
class tst_QThreadOnce : public QObject
{
Q_OBJECT
private slots:
void initTestCase();
void sameThread();
void sameThread_data();
void multipleThreads();
@ -52,6 +55,12 @@ private slots:
#endif
};
void tst_QThreadOnce::initTestCase()
{
if (QTestPrivate::isRunningArmOnX86())
QSKIP("Flaky on QEMU, QTBUG-94737");
}
class SingletonObject: public QObject
{
Q_OBJECT