diff --git a/tests/auto/corelib/kernel/qsystemsemaphore/test/tst_qsystemsemaphore.cpp b/tests/auto/corelib/kernel/qsystemsemaphore/test/tst_qsystemsemaphore.cpp index a3d90c2dc1b..9e33f56a34f 100644 --- a/tests/auto/corelib/kernel/qsystemsemaphore/test/tst_qsystemsemaphore.cpp +++ b/tests/auto/corelib/kernel/qsystemsemaphore/test/tst_qsystemsemaphore.cpp @@ -65,6 +65,7 @@ private slots: void basicacquire(); void complexacquire(); + void release(); #ifndef QT_NO_PROCESS void basicProcesses(); @@ -163,6 +164,24 @@ void tst_QSystemSemaphore::complexacquire() QCOMPARE(sem.errorString(), QString()); } +void tst_QSystemSemaphore::release() +{ + QSystemSemaphore sem("QSystemSemaphore_release", 0, QSystemSemaphore::Create); + QVERIFY(sem.release()); + QCOMPARE(sem.error(), QSystemSemaphore::NoError); + QVERIFY(sem.release()); + QCOMPARE(sem.error(), QSystemSemaphore::NoError); + QVERIFY(sem.acquire()); + QCOMPARE(sem.error(), QSystemSemaphore::NoError); + QVERIFY(sem.acquire()); + QCOMPARE(sem.error(), QSystemSemaphore::NoError); + QVERIFY(sem.release()); + QCOMPARE(sem.error(), QSystemSemaphore::NoError); + QVERIFY(sem.release()); + QCOMPARE(sem.error(), QSystemSemaphore::NoError); + QCOMPARE(sem.errorString(), QString()); +} + #ifndef QT_NO_PROCESS void tst_QSystemSemaphore::basicProcesses() {