summaryrefslogtreecommitdiffstats
path: root/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp')
-rw-r--r--tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp84
1 files changed, 46 insertions, 38 deletions
diff --git a/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp b/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp
index 0a069b664..9e3c30466 100644
--- a/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp
+++ b/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp
@@ -41,7 +41,9 @@
#include "qmockintegration_p.h"
#include "qmockmediaplayer.h"
+#include "qmockaudiooutput.h"
#include "qvideosink.h"
+#include "qaudiooutput.h"
QT_USE_NAMESPACE
@@ -123,6 +125,7 @@ private:
QMockIntegration *mockIntegration;
QMockMediaPlayer *mockPlayer;
+ QAudioOutput *audioOutput = nullptr;
QMediaPlayer *player;
};
@@ -214,6 +217,9 @@ void tst_QMediaPlayer::init()
player = new QMediaPlayer;
mockPlayer = mockIntegration->lastPlayer();
Q_ASSERT(mockPlayer);
+ audioOutput = new QAudioOutput;
+ player->setAudioOutput(audioOutput);
+ Q_ASSERT(mockPlayer->m_audioOutput != nullptr);
}
void tst_QMediaPlayer::cleanup()
@@ -326,29 +332,30 @@ void tst_QMediaPlayer::testVolume()
{
QFETCH(bool, valid);
QFETCH(int, volume);
+ float vol = volume/100.;
- mockPlayer->setVolume(volume);
- QVERIFY(player->volume() == volume);
+ audioOutput->setVolume(vol);
+ QVERIFY(audioOutput->volume() == vol);
if (valid) {
- { QSignalSpy spy(player, SIGNAL(volumeChanged(int)));
- player->setVolume(10);
- QCOMPARE(player->volume(), 10);
+ { QSignalSpy spy(audioOutput, SIGNAL(volumeChanged(float)));
+ audioOutput->setVolume(.1f);
+ QCOMPARE(audioOutput->volume(), .1f);
QCOMPARE(spy.count(), 1); }
- { QSignalSpy spy(player, SIGNAL(volumeChanged(int)));
- player->setVolume(-1000);
- QCOMPARE(player->volume(), 0);
+ { QSignalSpy spy(audioOutput, SIGNAL(volumeChanged(float)));
+ audioOutput->setVolume(-1000.f);
+ QCOMPARE(audioOutput->volume(), 0.f);
QCOMPARE(spy.count(), 1); }
- { QSignalSpy spy(player, SIGNAL(volumeChanged(int)));
- player->setVolume(100);
- QCOMPARE(player->volume(), 100);
+ { QSignalSpy spy(audioOutput, SIGNAL(volumeChanged(float)));
+ audioOutput->setVolume(1.f);
+ QCOMPARE(audioOutput->volume(), 1.f);
QCOMPARE(spy.count(), 1); }
- { QSignalSpy spy(player, SIGNAL(volumeChanged(int)));
- player->setVolume(1000);
- QCOMPARE(player->volume(), 100);
+ { QSignalSpy spy(audioOutput, SIGNAL(volumeChanged(float)));
+ audioOutput->setVolume(1000.f);
+ QCOMPARE(audioOutput->volume(), 1.f);
QCOMPARE(spy.count(), 0); }
}
}
@@ -363,16 +370,17 @@ void tst_QMediaPlayer::testMuted()
QFETCH(bool, valid);
QFETCH(bool, muted);
QFETCH(int, volume);
+ float vol = volume/100.;
if (valid) {
- mockPlayer->setMuted(muted);
- mockPlayer->setVolume(volume);
- QVERIFY(player->isMuted() == muted);
-
- QSignalSpy spy(player, SIGNAL(mutedChanged(bool)));
- player->setMuted(!muted);
- QCOMPARE(player->isMuted(), !muted);
- QCOMPARE(player->volume(), volume);
+ audioOutput->setMuted(muted);
+ audioOutput->setVolume(vol);
+ QVERIFY(audioOutput->isMuted() == muted);
+
+ QSignalSpy spy(audioOutput, SIGNAL(mutedChanged(bool)));
+ audioOutput->setMuted(!muted);
+ QCOMPARE(audioOutput->isMuted(), !muted);
+ QCOMPARE(audioOutput->volume(), vol);
QCOMPARE(spy.count(), 1);
}
}
@@ -784,36 +792,36 @@ void tst_QMediaPlayer::testQrc()
void tst_QMediaPlayer::testAudioRole()
{
+ auto *mockAudioOutput = static_cast<QMockAudioOutput *>(mockPlayer->m_audioOutput);
{
- mockPlayer->hasAudioRole = false;
+ mockAudioOutput->hasAudioRole = false;
- QCOMPARE(player->audioRole(), QAudio::UnknownRole);
- QVERIFY(player->supportedAudioRoles().isEmpty());
+ QCOMPARE(audioOutput->audioRole(), QAudio::UnknownRole);
+ QVERIFY(audioOutput->supportedAudioRoles().isEmpty());
- QSignalSpy spy(player, SIGNAL(audioRoleChanged(QAudio::Role)));
- player->setAudioRole(QAudio::MusicRole);
- QCOMPARE(player->audioRole(), QAudio::MusicRole);
- QCOMPARE(spy.count(), 1);
- player->setAudioRole(QAudio::UnknownRole);
+ QSignalSpy spy(audioOutput, SIGNAL(audioRoleChanged(QAudio::Role)));
+ audioOutput->setAudioRole(QAudio::MusicRole);
+ QCOMPARE(audioOutput->audioRole(), QAudio::UnknownRole);
+ QCOMPARE(spy.count(), 0);
}
{
mockPlayer->reset();
- mockPlayer->hasAudioRole = true;
- QSignalSpy spy(player, SIGNAL(audioRoleChanged(QAudio::Role)));
+ mockAudioOutput->hasAudioRole = true;
+ QSignalSpy spy(audioOutput, SIGNAL(audioRoleChanged(QAudio::Role)));
- QCOMPARE(player->audioRole(), QAudio::UnknownRole);
- QVERIFY(!player->supportedAudioRoles().isEmpty());
+ QCOMPARE(audioOutput->audioRole(), QAudio::UnknownRole);
+ QVERIFY(!audioOutput->supportedAudioRoles().isEmpty());
- player->setAudioRole(QAudio::MusicRole);
- QCOMPARE(player->audioRole(), QAudio::MusicRole);
+ audioOutput->setAudioRole(QAudio::MusicRole);
+ QCOMPARE(audioOutput->audioRole(), QAudio::MusicRole);
QCOMPARE(spy.count(), 1);
QCOMPARE(qvariant_cast<QAudio::Role>(spy.last().value(0)), QAudio::MusicRole);
spy.clear();
- player->setProperty("audioRole", QVariant::fromValue(QAudio::AlarmRole));
- QCOMPARE(qvariant_cast<QAudio::Role>(player->property("audioRole")), QAudio::AlarmRole);
+ audioOutput->setProperty("audioRole", QVariant::fromValue(QAudio::AlarmRole));
+ QCOMPARE(qvariant_cast<QAudio::Role>(audioOutput->property("audioRole")), QAudio::AlarmRole);
QCOMPARE(spy.count(), 1);
QCOMPARE(qvariant_cast<QAudio::Role>(spy.last().value(0)), QAudio::AlarmRole);
}