API changes to QML element MediaPlayer aka Audio
Changed Video.qml for new API Removed lowercase enum copies, replaced with calling parent (VideoOutput, MediaPlayer) enums Removed properties playing, paused Removed signals started, resumed Added readonly property playbackState Added signal playing Added autoPlay property Fixed unit tests for new API Added backwards compatibility for QtMultimedia 4 Change-Id: I27c91cd46d91402b8c4c42bb7d4961ad67909aeb Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
This commit is contained in:
committed by
Qt by Nokia
parent
66b86ba581
commit
a94c8a1ac2
@@ -29,12 +29,6 @@ SUBDIRS += \
|
||||
qvideoframe \
|
||||
qvideosurfaceformat \
|
||||
qwavedecoder \
|
||||
qaudiobuffer
|
||||
|
||||
# Tests depending on private interfaces should only be built if
|
||||
# these interfaces are exported.
|
||||
contains (QT_CONFIG, private_tests) {
|
||||
SUBDIRS += \
|
||||
qdeclarativeaudio
|
||||
}
|
||||
|
||||
qaudiobuffer \
|
||||
qdeclarativeaudio \
|
||||
qdeclarativeaudio_4
|
||||
|
||||
@@ -306,18 +306,11 @@ void tst_QDeclarativeAudio::nullPlayerControl()
|
||||
audio.setSource(QUrl("http://example.com"));
|
||||
QCOMPARE(audio.source(), QUrl("http://example.com"));
|
||||
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
audio.pause();
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
|
||||
QCOMPARE(audio.duration(), 0);
|
||||
|
||||
@@ -367,18 +360,11 @@ void tst_QDeclarativeAudio::nullService()
|
||||
audio.setSource(QUrl("http://example.com"));
|
||||
QCOMPARE(audio.source(), QUrl("http://example.com"));
|
||||
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
audio.pause();
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
|
||||
QCOMPARE(audio.duration(), 0);
|
||||
|
||||
@@ -454,14 +440,14 @@ void tst_QDeclarativeAudio::autoLoad()
|
||||
audio.setSource(QUrl("http://example.com"));
|
||||
QCOMPARE(audio.source(), QUrl("http://example.com"));
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
audio.stop();
|
||||
|
||||
audio.setAutoLoad(true);
|
||||
audio.setSource(QUrl("http://example.com"));
|
||||
audio.setPaused(true);
|
||||
audio.pause();
|
||||
QCOMPARE(spy.count(), 2);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PausedState);
|
||||
}
|
||||
|
||||
void tst_QDeclarativeAudio::playing()
|
||||
@@ -470,88 +456,56 @@ void tst_QDeclarativeAudio::playing()
|
||||
QDeclarativeAudio audio;
|
||||
audio.classBegin();
|
||||
|
||||
QSignalSpy playingChangedSpy(&audio, SIGNAL(playingChanged()));
|
||||
QSignalSpy startedSpy(&audio, SIGNAL(started()));
|
||||
QSignalSpy stateChangedSpy(&audio, SIGNAL(playbackStateChanged()));
|
||||
QSignalSpy playingSpy(&audio, SIGNAL(playing()));
|
||||
QSignalSpy stoppedSpy(&audio, SIGNAL(stopped()));
|
||||
|
||||
int playingChanged = 0;
|
||||
int started = 0;
|
||||
int stateChanged = 0;
|
||||
int playing = 0;
|
||||
int stopped = 0;
|
||||
|
||||
audio.componentComplete();
|
||||
audio.setSource(QUrl("http://example.com"));
|
||||
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
|
||||
// setPlaying(true) when stopped.
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPlaying(false) when playing.
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
|
||||
// play() when stopped.
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(playingSpy.count(), ++playing);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// stop() when playing.
|
||||
audio.stop();
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(playingSpy.count(), playing);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
|
||||
// stop() when stopped.
|
||||
audio.stop();
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(stateChangedSpy.count(), stateChanged);
|
||||
QCOMPARE(playingSpy.count(), playing);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPlaying(false) when stopped.
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
audio.play();
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPlaying(true) when playing.
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(playingSpy.count(), ++playing);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// play() when playing.
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(stateChangedSpy.count(), stateChanged);
|
||||
QCOMPARE(playingSpy.count(), playing);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
}
|
||||
|
||||
@@ -561,289 +515,57 @@ void tst_QDeclarativeAudio::paused()
|
||||
QDeclarativeAudio audio;
|
||||
audio.classBegin();
|
||||
|
||||
QSignalSpy playingChangedSpy(&audio, SIGNAL(playingChanged()));
|
||||
QSignalSpy pausedChangedSpy(&audio, SIGNAL(pausedChanged()));
|
||||
QSignalSpy startedSpy(&audio, SIGNAL(started()));
|
||||
QSignalSpy stateChangedSpy(&audio, SIGNAL(playbackStateChanged()));
|
||||
QSignalSpy pausedSpy(&audio, SIGNAL(paused()));
|
||||
QSignalSpy resumedSpy(&audio, SIGNAL(resumed()));
|
||||
QSignalSpy stoppedSpy(&audio, SIGNAL(stopped()));
|
||||
|
||||
int playingChanged = 0;
|
||||
int pausedChanged = 0;
|
||||
int started = 0;
|
||||
int paused = 0;
|
||||
int resumed = 0;
|
||||
int stopped = 0;
|
||||
int stateChanged = 0;
|
||||
int pausedCount = 0;
|
||||
|
||||
audio.componentComplete();
|
||||
audio.setSource(QUrl("http://example.com"));
|
||||
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
|
||||
// setPlaying(true) when stopped.
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
// play() when stopped.
|
||||
audio.play();
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPaused(true) when playing.
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), ++paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPaused(true) when paused.
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// pause() when paused.
|
||||
audio.pause();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPaused(false) when paused.
|
||||
audio.setPaused(false);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), ++resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPaused(false) when playing.
|
||||
audio.setPaused(false);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(pausedSpy.count(), pausedCount);
|
||||
|
||||
// pause() when playing.
|
||||
audio.pause();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PausedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), ++paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(pausedSpy.count(), ++pausedCount);
|
||||
|
||||
// setPlaying(false) when paused.
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
|
||||
// setPaused(true) when stopped and paused.
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPaused(false) when stopped and paused.
|
||||
audio.setPaused(false);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPaused(true) when stopped.
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPlaying(true) when stopped and paused.
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
// pause() when paused.
|
||||
audio.pause();
|
||||
QCOMPARE(audio.playbackState(), audio.PausedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(pausedSpy.count(), ++paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// play() when paused.
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), ++resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPaused(true) when playing.
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), ++paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), stateChanged);
|
||||
QCOMPARE(pausedSpy.count(), pausedCount);
|
||||
|
||||
// stop() when paused.
|
||||
audio.stop();
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
|
||||
// setPaused(true) when stopped.
|
||||
audio.setPaused(true);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// stop() when stopped and paused.
|
||||
audio.stop();
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(pausedSpy.count(), pausedCount);
|
||||
|
||||
// pause() when stopped.
|
||||
audio.pause();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PausedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(pausedSpy.count(), ++paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(pausedSpy.count(), ++pausedCount);
|
||||
|
||||
// setPlaying(false) when paused.
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
|
||||
// pause() when stopped and paused.
|
||||
audio.pause();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PausedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(pausedSpy.count(), ++paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPlaying(false) when paused.
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.isPaused(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
|
||||
// play() when stopped and paused.
|
||||
// play() when paused.
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.isPaused(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(pausedChangedSpy.count(), ++pausedChanged);
|
||||
QCOMPARE(startedSpy.count(), ++started);
|
||||
QCOMPARE(pausedSpy.count(), paused);
|
||||
QCOMPARE(resumedSpy.count(), resumed);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(pausedSpy.count(), pausedCount);
|
||||
}
|
||||
|
||||
void tst_QDeclarativeAudio::duration()
|
||||
@@ -1210,17 +932,17 @@ void tst_QDeclarativeAudio::loops()
|
||||
QDeclarativeAudio audio;
|
||||
|
||||
QSignalSpy loopsChangedSpy(&audio, SIGNAL(loopCountChanged()));
|
||||
QSignalSpy playingChangedSpy(&audio, SIGNAL(playingChanged()));
|
||||
QSignalSpy stateChangedSpy(&audio, SIGNAL(playbackStateChanged()));
|
||||
QSignalSpy stoppedSpy(&audio, SIGNAL(stopped()));
|
||||
|
||||
int playingChanged = 0;
|
||||
int stopped = 0;
|
||||
int stateChanged = 0;
|
||||
int loopsChanged = 0;
|
||||
int stoppedCount = 0;
|
||||
|
||||
audio.classBegin();
|
||||
audio.componentComplete();
|
||||
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
|
||||
//setLoopCount(3) when stopped.
|
||||
audio.setLoopCount(3);
|
||||
@@ -1229,68 +951,67 @@ void tst_QDeclarativeAudio::loops()
|
||||
|
||||
//play till end
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(stoppedSpy.count(), stoppedCount);
|
||||
|
||||
// setPlaying(true) when playing.
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
// play() when playing.
|
||||
audio.play();
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), stateChanged);
|
||||
QCOMPARE(stoppedSpy.count(), stoppedCount);
|
||||
|
||||
provider.playerControl()->updateMediaStatus(QMediaPlayer::EndOfMedia, QMediaPlayer::StoppedState);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(stateChangedSpy.count(), stateChanged);
|
||||
QCOMPARE(stoppedSpy.count(), stoppedCount);
|
||||
|
||||
//play to end
|
||||
provider.playerControl()->updateMediaStatus(QMediaPlayer::EndOfMedia, QMediaPlayer::StoppedState);
|
||||
QCOMPARE(stoppedSpy.count(), stoppedCount);
|
||||
//play to end
|
||||
provider.playerControl()->updateMediaStatus(QMediaPlayer::EndOfMedia, QMediaPlayer::StoppedState);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(stoppedSpy.count(), ++stoppedCount);
|
||||
|
||||
// stop when playing
|
||||
audio.play();
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(stoppedSpy.count(), stoppedCount);
|
||||
provider.playerControl()->updateMediaStatus(QMediaPlayer::EndOfMedia, QMediaPlayer::StoppedState);
|
||||
audio.stop();
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(stoppedSpy.count(), ++stoppedCount);
|
||||
|
||||
//setPlaying(true) with infinite loop
|
||||
//play() with infinite loop
|
||||
audio.setLoopCount(-1);
|
||||
QCOMPARE(audio.loopCount(), -1);
|
||||
QCOMPARE(loopsChangedSpy.count(), ++loopsChanged);
|
||||
audio.setPlaying(true);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
audio.play();
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
provider.playerControl()->updateMediaStatus(QMediaPlayer::EndOfMedia, QMediaPlayer::StoppedState);
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(audio.playbackState(), audio.PlayingState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(stateChangedSpy.count(), stateChanged);
|
||||
|
||||
// play() when playing.
|
||||
audio.play();
|
||||
QCOMPARE(audio.isPlaying(), true);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::PlayingState);
|
||||
QCOMPARE(playingChangedSpy.count(), playingChanged);
|
||||
QCOMPARE(stoppedSpy.count(), stopped);
|
||||
|
||||
// setPlaying(false) when playing in infinite loop.
|
||||
audio.setPlaying(false);
|
||||
QCOMPARE(audio.isPlaying(), false);
|
||||
// stop() when playing in infinite loop.
|
||||
audio.stop();
|
||||
QCOMPARE(audio.playbackState(), audio.StoppedState);
|
||||
QCOMPARE(provider.playerControl()->state(), QMediaPlayer::StoppedState);
|
||||
QCOMPARE(playingChangedSpy.count(), ++playingChanged);
|
||||
QCOMPARE(stoppedSpy.count(), ++stopped);
|
||||
QCOMPARE(stateChangedSpy.count(), ++stateChanged);
|
||||
QCOMPARE(stoppedSpy.count(), ++stoppedCount);
|
||||
|
||||
qDebug() << "Testing version 5";
|
||||
}
|
||||
|
||||
QTEST_MAIN(tst_QDeclarativeAudio)
|
||||
|
||||
17
tests/auto/unit/qdeclarativeaudio_4/qdeclarativeaudio_4.pro
Normal file
17
tests/auto/unit/qdeclarativeaudio_4/qdeclarativeaudio_4.pro
Normal file
@@ -0,0 +1,17 @@
|
||||
CONFIG += testcase
|
||||
TARGET = tst_qdeclarativeaudio_4
|
||||
|
||||
QT += multimedia-private declarative testlib
|
||||
CONFIG += no_private_qt_headers_warning
|
||||
|
||||
HEADERS += \
|
||||
$$QT.multimedia.sources/../imports/multimedia/qdeclarativeaudio_p_4.h \
|
||||
$$QT.multimedia.sources/../imports/multimedia/qdeclarativemediabase_p_4.h \
|
||||
$$QT.multimedia.sources/../imports/multimedia/qdeclarativemediametadata_p.h
|
||||
|
||||
SOURCES += \
|
||||
tst_qdeclarativeaudio_4.cpp \
|
||||
$$QT.multimedia.sources/../imports/multimedia/qdeclarativeaudio_4.cpp \
|
||||
$$QT.multimedia.sources/../imports/multimedia/qdeclarativemediabase_4.cpp
|
||||
|
||||
INCLUDEPATH += $$QT.multimedia.sources/../imports/multimedia
|
||||
1300
tests/auto/unit/qdeclarativeaudio_4/tst_qdeclarativeaudio_4.cpp
Normal file
1300
tests/auto/unit/qdeclarativeaudio_4/tst_qdeclarativeaudio_4.cpp
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user