diff options
Diffstat (limited to 'tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp')
-rw-r--r-- | tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp | 64 |
1 files changed, 23 insertions, 41 deletions
diff --git a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp index ab1dd677e9..ca382cf60c 100644 --- a/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp +++ b/tests/auto/corelib/thread/qthreadstorage/tst_qthreadstorage.cpp @@ -1,32 +1,11 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:GPL-EXCEPT$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QtTest/QtTest> +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only + +#include <QTest> +#if QT_CONFIG(process) +#include <QProcess> +#endif +#include <QTestEventLoop> #include <qcoreapplication.h> #include <qmutex.h> @@ -76,7 +55,7 @@ void tst_QThreadStorage::hasLocalData() QVERIFY(!pointers.hasLocalData()); pointers.setLocalData(new Pointer); QVERIFY(pointers.hasLocalData()); - pointers.setLocalData(0); + pointers.setLocalData(nullptr); QVERIFY(!pointers.hasLocalData()); } @@ -88,8 +67,8 @@ void tst_QThreadStorage::localData() pointers.setLocalData(p); QVERIFY(pointers.hasLocalData()); QCOMPARE(pointers.localData(), p); - pointers.setLocalData(0); - QCOMPARE(pointers.localData(), (Pointer *)0); + pointers.setLocalData(nullptr); + QCOMPARE(pointers.localData(), nullptr); QVERIFY(!pointers.hasLocalData()); } @@ -102,8 +81,8 @@ void tst_QThreadStorage::localData_const() pointers.setLocalData(p); QVERIFY(pointers.hasLocalData()); QCOMPARE(const_pointers.localData(), p); - pointers.setLocalData(0); - QCOMPARE(const_pointers.localData(), (Pointer *)0); + pointers.setLocalData(nullptr); + QCOMPARE(const_pointers.localData(), nullptr); QVERIFY(!pointers.hasLocalData()); } @@ -113,7 +92,7 @@ void tst_QThreadStorage::setLocalData() QVERIFY(!pointers.hasLocalData()); pointers.setLocalData(new Pointer); QVERIFY(pointers.hasLocalData()); - pointers.setLocalData(0); + pointers.setLocalData(nullptr); QVERIFY(!pointers.hasLocalData()); } @@ -157,7 +136,7 @@ void tst_QThreadStorage::autoDelete() QCOMPARE(Pointer::count, c); } -bool threadStorageOk; +static bool threadStorageOk; void testAdoptedThreadStorageWin(void *p) { QThreadStorage<Pointer *> *pointers = reinterpret_cast<QThreadStorage<Pointer *> *>(p); @@ -183,7 +162,7 @@ void testAdoptedThreadStorageWin(void *p) void *testAdoptedThreadStorageUnix(void *pointers) { testAdoptedThreadStorageWin(pointers); - return 0; + return nullptr; } void tst_QThreadStorage::adoptedThreads() { @@ -194,9 +173,9 @@ void tst_QThreadStorage::adoptedThreads() { #ifdef Q_OS_UNIX pthread_t thread; - const int state = pthread_create(&thread, 0, testAdoptedThreadStorageUnix, &pointers); + const int state = pthread_create(&thread, nullptr, testAdoptedThreadStorageUnix, &pointers); QCOMPARE(state, 0); - pthread_join(thread, 0); + pthread_join(thread, nullptr); #elif defined Q_OS_WIN HANDLE thread; thread = (HANDLE)_beginthread(testAdoptedThreadStorageWin, 0, &pointers); @@ -212,7 +191,7 @@ void tst_QThreadStorage::adoptedThreads() QTRY_COMPARE(Pointer::count, c); } -QBasicAtomicInt cleanupOrder = Q_BASIC_ATOMIC_INITIALIZER(0); +static QBasicAtomicInt cleanupOrder = Q_BASIC_ATOMIC_INITIALIZER(0); class First { @@ -293,11 +272,14 @@ static inline bool runCrashOnExit(const QString &binary, QString *errorMessage) void tst_QThreadStorage::crashOnExit() { +#ifdef Q_OS_ANDROID + QSKIP("Can't start QProcess to run a custom user binary on Android"); +#endif #if !QT_CONFIG(process) QSKIP("No qprocess support", SkipAll); #else QString errorMessage; - QVERIFY2(runCrashOnExit("crashOnExit_helper", &errorMessage), + QVERIFY2(runCrashOnExit("./crashOnExit_helper", &errorMessage), qPrintable(errorMessage)); #endif } |