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
Change-Id: I783ec2179ba779a2c8d93351a78e8472a4f7a907
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
(cherry picked from commit f3bccd2f4fb583d2f36d41d233c7ad2deb7a7ca2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Sona Kurazyan 2021-07-20 11:24:51 +02:00 committed by Qt Cherry-pick Bot
parent 160daf5d63
commit aa78b2037c
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