summaryrefslogtreecommitdiffstats
path: root/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
diff options
context:
space:
mode:
authorArtem Dyomin <artem.dyomin@qt.io>2022-11-04 15:04:03 +0100
committerArtem Dyomin <artem.dyomin@qt.io>2022-11-07 13:40:42 +0100
commit2466273b5b60227427ccca20680542dea9fe581d (patch)
treec9a735a79a41849a5ac8d7635e6a05e402719e8e /tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
parentfe2e90b6e3b61671b94c9e517ce736fba995f3ef (diff)
Add audio listeners for macOS and cleanup code
QMediaDevices doc says: The default device can change during the runtime of the application. The audioInputsChanged/audioOutputsChanged signal is emitted in this case. What's done: - add listening of properties kAudioHardwarePropertyDefaultOutputDevice and kAudioHardwarePropertyDefaultInputDevice in order to handle default input/output changes. - cleanup a mess of defines in qdarwinmediadevices.mm - some refactoring with code improving. Task-number: QTBUG-108020 Pick-to: 6.4 Change-Id: I35aec4f9da9755036141a70f5ce48f6db73d8148 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Diffstat (limited to 'tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp')
-rw-r--r--tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp b/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
index e4554084a..0bdbf88dd 100644
--- a/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
+++ b/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
@@ -52,7 +52,9 @@ void tst_QAudioDevice::checkAvailableDefaultInput()
// Only perform tests if audio input device exists!
QList<QAudioDevice> devices = QMediaDevices::audioInputs();
if (devices.size() > 0) {
- QVERIFY(!QMediaDevices::defaultAudioInput().isNull());
+ auto defaultInput = QMediaDevices::defaultAudioInput();
+ QVERIFY(!defaultInput.isNull());
+ QCOMPARE(std::count(devices.begin(), devices.end(), defaultInput), 1);
}
}
@@ -61,7 +63,9 @@ void tst_QAudioDevice::checkAvailableDefaultOutput()
// Only perform tests if audio input device exists!
QList<QAudioDevice> devices = QMediaDevices::audioOutputs();
if (devices.size() > 0) {
- QVERIFY(!QMediaDevices::defaultAudioOutput().isNull());
+ auto defaultOutput = QMediaDevices::defaultAudioOutput();
+ QVERIFY(!defaultOutput.isNull());
+ QCOMPARE(std::count(devices.begin(), devices.end(), defaultOutput), 1);
}
}