File indexing completed on 2024-04-28 04:48:50
0001 /* 0002 SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <matthieu_gallien@yahoo.fr> 0003 0004 SPDX-License-Identifier: LGPL-3.0-or-later 0005 */ 0006 0007 #include "manageaudioplayertest.h" 0008 0009 #include "manageaudioplayer.h" 0010 0011 #include "elisa_settings.h" 0012 0013 #include <QSignalSpy> 0014 #include <QTest> 0015 #include <QStandardItemModel> 0016 #include <QStandardItem> 0017 #include <QUrl> 0018 0019 ManageAudioPlayerTest::ManageAudioPlayerTest(QObject *parent) : QObject(parent) 0020 { 0021 } 0022 0023 void ManageAudioPlayerTest::initTestCase() 0024 { 0025 QStandardPaths::setTestModeEnabled(true); 0026 Elisa::ElisaConfiguration::instance(QStringLiteral("testfoo")); 0027 } 0028 0029 void ManageAudioPlayerTest::simpleInitialCase() 0030 { 0031 Elisa::ElisaConfiguration::self()->setDefaults(); 0032 ManageAudioPlayer myPlayer; 0033 QStandardItemModel myPlayList; 0034 0035 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 0036 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 0037 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 0038 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 0039 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 0040 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 0041 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 0042 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 0043 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 0044 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 0045 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 0046 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 0047 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 0048 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 0049 0050 myPlayList.appendRow(new QStandardItem); 0051 myPlayList.appendRow(new QStandardItem); 0052 myPlayList.appendRow(new QStandardItem); 0053 0054 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 0055 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 0056 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 0057 0058 QCOMPARE(currentTrackChangedSpy.count(), 0); 0059 QCOMPARE(playListModelChangedSpy.count(), 0); 0060 QCOMPARE(playerSourceChangedSpy.count(), 0); 0061 QCOMPARE(urlRoleChangedSpy.count(), 0); 0062 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0063 QCOMPARE(playerStatusChangedSpy.count(), 0); 0064 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0065 QCOMPARE(playerErrorChangedSpy.count(), 0); 0066 QCOMPARE(persistentStateChangedSpy.count(), 0); 0067 QCOMPARE(playerPlaySpy.count(), 0); 0068 QCOMPARE(playerPauseSpy.count(), 0); 0069 QCOMPARE(playerStopSpy.count(), 0); 0070 QCOMPARE(skipNextTrackSpy.count(), 0); 0071 QCOMPARE(seekSpy.count(), 0); 0072 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0073 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0074 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0075 0076 myPlayer.setPlayListModel(&myPlayList); 0077 0078 QCOMPARE(currentTrackChangedSpy.count(), 0); 0079 QCOMPARE(playListModelChangedSpy.count(), 1); 0080 QCOMPARE(playerSourceChangedSpy.count(), 0); 0081 QCOMPARE(urlRoleChangedSpy.count(), 0); 0082 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0083 QCOMPARE(playerStatusChangedSpy.count(), 0); 0084 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0085 QCOMPARE(playerErrorChangedSpy.count(), 0); 0086 QCOMPARE(persistentStateChangedSpy.count(), 0); 0087 QCOMPARE(playerPlaySpy.count(), 0); 0088 QCOMPARE(playerPauseSpy.count(), 0); 0089 QCOMPARE(playerStopSpy.count(), 0); 0090 QCOMPARE(skipNextTrackSpy.count(), 0); 0091 QCOMPARE(seekSpy.count(), 0); 0092 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0093 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0094 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0095 0096 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 0097 0098 QCOMPARE(currentTrackChangedSpy.count(), 1); 0099 QCOMPARE(playListModelChangedSpy.count(), 1); 0100 QCOMPARE(playerSourceChangedSpy.count(), 1); 0101 QCOMPARE(urlRoleChangedSpy.count(), 0); 0102 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0103 QCOMPARE(playerStatusChangedSpy.count(), 0); 0104 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0105 QCOMPARE(playerErrorChangedSpy.count(), 0); 0106 QCOMPARE(persistentStateChangedSpy.count(), 0); 0107 QCOMPARE(playerPlaySpy.count(), 0); 0108 QCOMPARE(playerPauseSpy.count(), 0); 0109 QCOMPARE(playerStopSpy.count(), 0); 0110 QCOMPARE(skipNextTrackSpy.count(), 0); 0111 QCOMPARE(seekSpy.count(), 0); 0112 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0113 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0114 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0115 0116 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 0117 0118 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 0119 0120 QCOMPARE(currentTrackChangedSpy.count(), 1); 0121 QCOMPARE(playListModelChangedSpy.count(), 1); 0122 QCOMPARE(playerSourceChangedSpy.count(), 2); 0123 QCOMPARE(urlRoleChangedSpy.count(), 1); 0124 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0125 QCOMPARE(playerStatusChangedSpy.count(), 0); 0126 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0127 QCOMPARE(playerErrorChangedSpy.count(), 0); 0128 QCOMPARE(persistentStateChangedSpy.count(), 0); 0129 QCOMPARE(playerPlaySpy.count(), 0); 0130 QCOMPARE(playerPauseSpy.count(), 0); 0131 QCOMPARE(playerStopSpy.count(), 0); 0132 QCOMPARE(skipNextTrackSpy.count(), 0); 0133 QCOMPARE(seekSpy.count(), 0); 0134 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0135 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0136 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0137 0138 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 0139 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 0140 0141 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 0142 0143 QCOMPARE(currentTrackChangedSpy.count(), 1); 0144 QCOMPARE(playListModelChangedSpy.count(), 1); 0145 QCOMPARE(playerSourceChangedSpy.count(), 2); 0146 QCOMPARE(urlRoleChangedSpy.count(), 1); 0147 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0148 QCOMPARE(playerStatusChangedSpy.count(), 0); 0149 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0150 QCOMPARE(playerErrorChangedSpy.count(), 0); 0151 QCOMPARE(persistentStateChangedSpy.count(), 0); 0152 QCOMPARE(playerPlaySpy.count(), 0); 0153 QCOMPARE(playerPauseSpy.count(), 0); 0154 QCOMPARE(playerStopSpy.count(), 0); 0155 QCOMPARE(skipNextTrackSpy.count(), 0); 0156 QCOMPARE(seekSpy.count(), 0); 0157 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0158 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0159 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0160 0161 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 0162 0163 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 0164 0165 QCOMPARE(currentTrackChangedSpy.count(), 1); 0166 QCOMPARE(playListModelChangedSpy.count(), 1); 0167 QCOMPARE(playerSourceChangedSpy.count(), 2); 0168 QCOMPARE(urlRoleChangedSpy.count(), 1); 0169 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0170 QCOMPARE(playerStatusChangedSpy.count(), 1); 0171 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0172 QCOMPARE(playerErrorChangedSpy.count(), 0); 0173 QCOMPARE(persistentStateChangedSpy.count(), 0); 0174 QCOMPARE(playerPlaySpy.count(), 0); 0175 QCOMPARE(playerPauseSpy.count(), 0); 0176 QCOMPARE(playerStopSpy.count(), 0); 0177 QCOMPARE(skipNextTrackSpy.count(), 0); 0178 QCOMPARE(seekSpy.count(), 0); 0179 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0180 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0181 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0182 0183 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 0184 0185 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 0186 0187 QCOMPARE(currentTrackChangedSpy.count(), 1); 0188 QCOMPARE(playListModelChangedSpy.count(), 1); 0189 QCOMPARE(playerSourceChangedSpy.count(), 2); 0190 QCOMPARE(urlRoleChangedSpy.count(), 1); 0191 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0192 QCOMPARE(playerStatusChangedSpy.count(), 1); 0193 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0194 QCOMPARE(playerErrorChangedSpy.count(), 0); 0195 QCOMPARE(persistentStateChangedSpy.count(), 0); 0196 QCOMPARE(playerPlaySpy.count(), 0); 0197 QCOMPARE(playerPauseSpy.count(), 0); 0198 QCOMPARE(playerStopSpy.count(), 0); 0199 QCOMPARE(skipNextTrackSpy.count(), 0); 0200 QCOMPARE(seekSpy.count(), 0); 0201 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0202 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0203 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0204 0205 myPlayer.setPlayerError(QMediaPlayer::NoError); 0206 0207 QCOMPARE(currentTrackChangedSpy.count(), 1); 0208 QCOMPARE(playListModelChangedSpy.count(), 1); 0209 QCOMPARE(playerSourceChangedSpy.count(), 2); 0210 QCOMPARE(urlRoleChangedSpy.count(), 1); 0211 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0212 QCOMPARE(playerStatusChangedSpy.count(), 1); 0213 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0214 QCOMPARE(playerErrorChangedSpy.count(), 0); 0215 QCOMPARE(persistentStateChangedSpy.count(), 0); 0216 QCOMPARE(playerPlaySpy.count(), 0); 0217 QCOMPARE(playerPauseSpy.count(), 0); 0218 QCOMPARE(playerStopSpy.count(), 0); 0219 QCOMPARE(skipNextTrackSpy.count(), 0); 0220 QCOMPARE(seekSpy.count(), 0); 0221 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0222 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0223 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0224 0225 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 0226 0227 QCOMPARE(currentTrackChangedSpy.count(), 1); 0228 QCOMPARE(playListModelChangedSpy.count(), 1); 0229 QCOMPARE(playerSourceChangedSpy.count(), 2); 0230 QCOMPARE(urlRoleChangedSpy.count(), 1); 0231 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0232 QCOMPARE(playerStatusChangedSpy.count(), 2); 0233 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0234 QCOMPARE(playerErrorChangedSpy.count(), 0); 0235 QCOMPARE(persistentStateChangedSpy.count(), 0); 0236 QCOMPARE(playerPlaySpy.count(), 0); 0237 QCOMPARE(playerPauseSpy.count(), 0); 0238 QCOMPARE(playerStopSpy.count(), 0); 0239 QCOMPARE(skipNextTrackSpy.count(), 0); 0240 QCOMPARE(seekSpy.count(), 0); 0241 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0242 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0243 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0244 0245 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 0246 0247 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 0248 0249 QCOMPARE(currentTrackChangedSpy.count(), 1); 0250 QCOMPARE(playListModelChangedSpy.count(), 1); 0251 QCOMPARE(playerSourceChangedSpy.count(), 2); 0252 QCOMPARE(urlRoleChangedSpy.count(), 1); 0253 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0254 QCOMPARE(playerStatusChangedSpy.count(), 3); 0255 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0256 QCOMPARE(playerErrorChangedSpy.count(), 0); 0257 QCOMPARE(persistentStateChangedSpy.count(), 0); 0258 QCOMPARE(playerPlaySpy.count(), 0); 0259 QCOMPARE(playerPauseSpy.count(), 0); 0260 QCOMPARE(playerStopSpy.count(), 0); 0261 QCOMPARE(skipNextTrackSpy.count(), 0); 0262 QCOMPARE(seekSpy.count(), 0); 0263 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0264 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0265 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0266 0267 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 0268 0269 myPlayer.playPause(); 0270 0271 QCOMPARE(currentTrackChangedSpy.count(), 1); 0272 QCOMPARE(playListModelChangedSpy.count(), 1); 0273 QCOMPARE(playerSourceChangedSpy.count(), 2); 0274 QCOMPARE(urlRoleChangedSpy.count(), 1); 0275 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0276 QCOMPARE(playerStatusChangedSpy.count(), 3); 0277 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0278 QCOMPARE(playerErrorChangedSpy.count(), 0); 0279 QCOMPARE(persistentStateChangedSpy.count(), 0); 0280 QCOMPARE(playerPlaySpy.count(), 0); 0281 QCOMPARE(playerPauseSpy.count(), 0); 0282 QCOMPARE(playerStopSpy.count(), 0); 0283 QCOMPARE(skipNextTrackSpy.count(), 0); 0284 QCOMPARE(seekSpy.count(), 0); 0285 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0286 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0287 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0288 0289 QCOMPARE(playerPlaySpy.wait(), true); 0290 0291 QCOMPARE(currentTrackChangedSpy.count(), 1); 0292 QCOMPARE(playListModelChangedSpy.count(), 1); 0293 QCOMPARE(playerSourceChangedSpy.count(), 2); 0294 QCOMPARE(urlRoleChangedSpy.count(), 1); 0295 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0296 QCOMPARE(playerStatusChangedSpy.count(), 3); 0297 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0298 QCOMPARE(playerErrorChangedSpy.count(), 0); 0299 QCOMPARE(persistentStateChangedSpy.count(), 0); 0300 QCOMPARE(playerPlaySpy.count(), 1); 0301 QCOMPARE(playerPauseSpy.count(), 0); 0302 QCOMPARE(playerStopSpy.count(), 0); 0303 QCOMPARE(skipNextTrackSpy.count(), 0); 0304 QCOMPARE(seekSpy.count(), 0); 0305 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0306 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0307 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0308 0309 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 0310 0311 QCOMPARE(currentTrackChangedSpy.count(), 1); 0312 QCOMPARE(playListModelChangedSpy.count(), 1); 0313 QCOMPARE(playerSourceChangedSpy.count(), 2); 0314 QCOMPARE(urlRoleChangedSpy.count(), 1); 0315 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0316 QCOMPARE(playerStatusChangedSpy.count(), 3); 0317 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 0318 QCOMPARE(playerErrorChangedSpy.count(), 0); 0319 QCOMPARE(persistentStateChangedSpy.count(), 0); 0320 QCOMPARE(playerPlaySpy.count(), 1); 0321 QCOMPARE(playerPauseSpy.count(), 0); 0322 QCOMPARE(playerStopSpy.count(), 0); 0323 QCOMPARE(skipNextTrackSpy.count(), 0); 0324 QCOMPARE(seekSpy.count(), 0); 0325 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 0326 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0327 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0328 0329 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 0330 0331 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 0332 0333 QCOMPARE(currentTrackChangedSpy.count(), 1); 0334 QCOMPARE(playListModelChangedSpy.count(), 1); 0335 QCOMPARE(playerSourceChangedSpy.count(), 2); 0336 QCOMPARE(urlRoleChangedSpy.count(), 1); 0337 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0338 QCOMPARE(playerStatusChangedSpy.count(), 4); 0339 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 0340 QCOMPARE(playerErrorChangedSpy.count(), 0); 0341 QCOMPARE(persistentStateChangedSpy.count(), 0); 0342 QCOMPARE(playerPlaySpy.count(), 1); 0343 QCOMPARE(playerPauseSpy.count(), 0); 0344 QCOMPARE(playerStopSpy.count(), 0); 0345 QCOMPARE(skipNextTrackSpy.count(), 0); 0346 QCOMPARE(seekSpy.count(), 0); 0347 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 0348 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0349 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0350 0351 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 0352 0353 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 0354 0355 QCOMPARE(currentTrackChangedSpy.count(), 1); 0356 QCOMPARE(playListModelChangedSpy.count(), 1); 0357 QCOMPARE(playerSourceChangedSpy.count(), 2); 0358 QCOMPARE(urlRoleChangedSpy.count(), 1); 0359 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0360 QCOMPARE(playerStatusChangedSpy.count(), 4); 0361 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 0362 QCOMPARE(playerErrorChangedSpy.count(), 0); 0363 QCOMPARE(persistentStateChangedSpy.count(), 0); 0364 QCOMPARE(playerPlaySpy.count(), 1); 0365 QCOMPARE(playerPauseSpy.count(), 0); 0366 QCOMPARE(playerStopSpy.count(), 0); 0367 QCOMPARE(skipNextTrackSpy.count(), 0); 0368 QCOMPARE(seekSpy.count(), 0); 0369 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0370 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0371 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0372 0373 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 0374 0375 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 0376 0377 QCOMPARE(currentTrackChangedSpy.count(), 1); 0378 QCOMPARE(playListModelChangedSpy.count(), 1); 0379 QCOMPARE(playerSourceChangedSpy.count(), 2); 0380 QCOMPARE(urlRoleChangedSpy.count(), 1); 0381 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0382 QCOMPARE(playerStatusChangedSpy.count(), 5); 0383 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 0384 QCOMPARE(playerErrorChangedSpy.count(), 0); 0385 QCOMPARE(persistentStateChangedSpy.count(), 0); 0386 QCOMPARE(playerPlaySpy.count(), 1); 0387 QCOMPARE(playerPauseSpy.count(), 0); 0388 QCOMPARE(playerStopSpy.count(), 0); 0389 QCOMPARE(skipNextTrackSpy.count(), 0); 0390 QCOMPARE(seekSpy.count(), 0); 0391 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0392 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0393 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0394 0395 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 0396 0397 QCOMPARE(skipNextTrackSpy.wait(), true); 0398 0399 QCOMPARE(currentTrackChangedSpy.count(), 1); 0400 QCOMPARE(playListModelChangedSpy.count(), 1); 0401 QCOMPARE(playerSourceChangedSpy.count(), 2); 0402 QCOMPARE(urlRoleChangedSpy.count(), 1); 0403 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0404 QCOMPARE(playerStatusChangedSpy.count(), 5); 0405 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 0406 QCOMPARE(playerErrorChangedSpy.count(), 0); 0407 QCOMPARE(persistentStateChangedSpy.count(), 0); 0408 QCOMPARE(playerPlaySpy.count(), 1); 0409 QCOMPARE(playerPauseSpy.count(), 0); 0410 QCOMPARE(playerStopSpy.count(), 0); 0411 QCOMPARE(skipNextTrackSpy.count(), 1); 0412 QCOMPARE(seekSpy.count(), 0); 0413 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0414 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0415 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0416 } 0417 0418 void ManageAudioPlayerTest::noPlayCase() 0419 { 0420 Elisa::ElisaConfiguration::self()->setDefaults(); 0421 ManageAudioPlayer myPlayer; 0422 QStandardItemModel myPlayList; 0423 0424 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 0425 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 0426 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 0427 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 0428 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 0429 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 0430 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 0431 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 0432 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 0433 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 0434 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 0435 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 0436 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 0437 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 0438 0439 myPlayList.appendRow(new QStandardItem); 0440 myPlayList.appendRow(new QStandardItem); 0441 myPlayList.appendRow(new QStandardItem); 0442 0443 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 0444 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 0445 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 0446 0447 QCOMPARE(currentTrackChangedSpy.count(), 0); 0448 QCOMPARE(playListModelChangedSpy.count(), 0); 0449 QCOMPARE(playerSourceChangedSpy.count(), 0); 0450 QCOMPARE(urlRoleChangedSpy.count(), 0); 0451 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0452 QCOMPARE(playerStatusChangedSpy.count(), 0); 0453 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0454 QCOMPARE(playerErrorChangedSpy.count(), 0); 0455 QCOMPARE(persistentStateChangedSpy.count(), 0); 0456 QCOMPARE(playerPlaySpy.count(), 0); 0457 QCOMPARE(playerPauseSpy.count(), 0); 0458 QCOMPARE(playerStopSpy.count(), 0); 0459 QCOMPARE(skipNextTrackSpy.count(), 0); 0460 QCOMPARE(seekSpy.count(), 0); 0461 0462 myPlayer.setPlayListModel(&myPlayList); 0463 0464 QCOMPARE(currentTrackChangedSpy.count(), 0); 0465 QCOMPARE(playListModelChangedSpy.count(), 1); 0466 QCOMPARE(playerSourceChangedSpy.count(), 0); 0467 QCOMPARE(urlRoleChangedSpy.count(), 0); 0468 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0469 QCOMPARE(playerStatusChangedSpy.count(), 0); 0470 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0471 QCOMPARE(playerErrorChangedSpy.count(), 0); 0472 QCOMPARE(persistentStateChangedSpy.count(), 0); 0473 QCOMPARE(playerPlaySpy.count(), 0); 0474 QCOMPARE(playerPauseSpy.count(), 0); 0475 QCOMPARE(playerStopSpy.count(), 0); 0476 QCOMPARE(skipNextTrackSpy.count(), 0); 0477 QCOMPARE(seekSpy.count(), 0); 0478 0479 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 0480 0481 QCOMPARE(currentTrackChangedSpy.count(), 1); 0482 QCOMPARE(playListModelChangedSpy.count(), 1); 0483 QCOMPARE(playerSourceChangedSpy.count(), 1); 0484 QCOMPARE(urlRoleChangedSpy.count(), 0); 0485 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0486 QCOMPARE(playerStatusChangedSpy.count(), 0); 0487 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0488 QCOMPARE(playerErrorChangedSpy.count(), 0); 0489 QCOMPARE(persistentStateChangedSpy.count(), 0); 0490 QCOMPARE(playerPlaySpy.count(), 0); 0491 QCOMPARE(playerPauseSpy.count(), 0); 0492 QCOMPARE(playerStopSpy.count(), 0); 0493 QCOMPARE(skipNextTrackSpy.count(), 0); 0494 QCOMPARE(seekSpy.count(), 0); 0495 0496 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 0497 0498 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 0499 0500 QCOMPARE(currentTrackChangedSpy.count(), 1); 0501 QCOMPARE(playListModelChangedSpy.count(), 1); 0502 QCOMPARE(playerSourceChangedSpy.count(), 2); 0503 QCOMPARE(urlRoleChangedSpy.count(), 1); 0504 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0505 QCOMPARE(playerStatusChangedSpy.count(), 0); 0506 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0507 QCOMPARE(playerErrorChangedSpy.count(), 0); 0508 QCOMPARE(persistentStateChangedSpy.count(), 0); 0509 QCOMPARE(playerPlaySpy.count(), 0); 0510 QCOMPARE(playerPauseSpy.count(), 0); 0511 QCOMPARE(playerStopSpy.count(), 0); 0512 QCOMPARE(skipNextTrackSpy.count(), 0); 0513 QCOMPARE(seekSpy.count(), 0); 0514 0515 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 0516 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 0517 0518 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 0519 0520 QCOMPARE(currentTrackChangedSpy.count(), 1); 0521 QCOMPARE(playListModelChangedSpy.count(), 1); 0522 QCOMPARE(playerSourceChangedSpy.count(), 2); 0523 QCOMPARE(urlRoleChangedSpy.count(), 1); 0524 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0525 QCOMPARE(playerStatusChangedSpy.count(), 0); 0526 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0527 QCOMPARE(playerErrorChangedSpy.count(), 0); 0528 QCOMPARE(persistentStateChangedSpy.count(), 0); 0529 QCOMPARE(playerPlaySpy.count(), 0); 0530 QCOMPARE(playerPauseSpy.count(), 0); 0531 QCOMPARE(playerStopSpy.count(), 0); 0532 QCOMPARE(skipNextTrackSpy.count(), 0); 0533 QCOMPARE(seekSpy.count(), 0); 0534 0535 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 0536 0537 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 0538 0539 QCOMPARE(currentTrackChangedSpy.count(), 1); 0540 QCOMPARE(playListModelChangedSpy.count(), 1); 0541 QCOMPARE(playerSourceChangedSpy.count(), 2); 0542 QCOMPARE(urlRoleChangedSpy.count(), 1); 0543 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0544 QCOMPARE(playerStatusChangedSpy.count(), 1); 0545 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0546 QCOMPARE(playerErrorChangedSpy.count(), 0); 0547 QCOMPARE(persistentStateChangedSpy.count(), 0); 0548 QCOMPARE(playerPlaySpy.count(), 0); 0549 QCOMPARE(playerPauseSpy.count(), 0); 0550 QCOMPARE(playerStopSpy.count(), 0); 0551 QCOMPARE(skipNextTrackSpy.count(), 0); 0552 QCOMPARE(seekSpy.count(), 0); 0553 0554 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 0555 0556 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 0557 0558 QCOMPARE(currentTrackChangedSpy.count(), 1); 0559 QCOMPARE(playListModelChangedSpy.count(), 1); 0560 QCOMPARE(playerSourceChangedSpy.count(), 2); 0561 QCOMPARE(urlRoleChangedSpy.count(), 1); 0562 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0563 QCOMPARE(playerStatusChangedSpy.count(), 1); 0564 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0565 QCOMPARE(playerErrorChangedSpy.count(), 0); 0566 QCOMPARE(persistentStateChangedSpy.count(), 0); 0567 QCOMPARE(playerPlaySpy.count(), 0); 0568 QCOMPARE(playerPauseSpy.count(), 0); 0569 QCOMPARE(playerStopSpy.count(), 0); 0570 QCOMPARE(skipNextTrackSpy.count(), 0); 0571 QCOMPARE(seekSpy.count(), 0); 0572 0573 myPlayer.setPlayerError(QMediaPlayer::NoError); 0574 0575 QCOMPARE(currentTrackChangedSpy.count(), 1); 0576 QCOMPARE(playListModelChangedSpy.count(), 1); 0577 QCOMPARE(playerSourceChangedSpy.count(), 2); 0578 QCOMPARE(urlRoleChangedSpy.count(), 1); 0579 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0580 QCOMPARE(playerStatusChangedSpy.count(), 1); 0581 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0582 QCOMPARE(playerErrorChangedSpy.count(), 0); 0583 QCOMPARE(persistentStateChangedSpy.count(), 0); 0584 QCOMPARE(playerPlaySpy.count(), 0); 0585 QCOMPARE(playerPauseSpy.count(), 0); 0586 QCOMPARE(playerStopSpy.count(), 0); 0587 QCOMPARE(skipNextTrackSpy.count(), 0); 0588 QCOMPARE(seekSpy.count(), 0); 0589 0590 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 0591 0592 QCOMPARE(currentTrackChangedSpy.count(), 1); 0593 QCOMPARE(playListModelChangedSpy.count(), 1); 0594 QCOMPARE(playerSourceChangedSpy.count(), 2); 0595 QCOMPARE(urlRoleChangedSpy.count(), 1); 0596 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0597 QCOMPARE(playerStatusChangedSpy.count(), 2); 0598 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0599 QCOMPARE(playerErrorChangedSpy.count(), 0); 0600 QCOMPARE(persistentStateChangedSpy.count(), 0); 0601 QCOMPARE(playerPlaySpy.count(), 0); 0602 QCOMPARE(playerPauseSpy.count(), 0); 0603 QCOMPARE(playerStopSpy.count(), 0); 0604 QCOMPARE(skipNextTrackSpy.count(), 0); 0605 QCOMPARE(seekSpy.count(), 0); 0606 0607 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 0608 0609 QCOMPARE(currentTrackChangedSpy.count(), 1); 0610 QCOMPARE(playListModelChangedSpy.count(), 1); 0611 QCOMPARE(playerSourceChangedSpy.count(), 2); 0612 QCOMPARE(urlRoleChangedSpy.count(), 1); 0613 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0614 QCOMPARE(playerStatusChangedSpy.count(), 2); 0615 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0616 QCOMPARE(playerErrorChangedSpy.count(), 0); 0617 QCOMPARE(persistentStateChangedSpy.count(), 0); 0618 QCOMPARE(playerPlaySpy.count(), 0); 0619 QCOMPARE(playerPauseSpy.count(), 0); 0620 QCOMPARE(playerStopSpy.count(), 0); 0621 QCOMPARE(skipNextTrackSpy.count(), 0); 0622 QCOMPARE(seekSpy.count(), 0); 0623 0624 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 0625 0626 QCOMPARE(currentTrackChangedSpy.count(), 1); 0627 QCOMPARE(playListModelChangedSpy.count(), 1); 0628 QCOMPARE(playerSourceChangedSpy.count(), 2); 0629 QCOMPARE(urlRoleChangedSpy.count(), 1); 0630 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0631 QCOMPARE(playerStatusChangedSpy.count(), 3); 0632 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0633 QCOMPARE(playerErrorChangedSpy.count(), 0); 0634 QCOMPARE(persistentStateChangedSpy.count(), 0); 0635 QCOMPARE(playerPlaySpy.count(), 0); 0636 QCOMPARE(playerPauseSpy.count(), 0); 0637 QCOMPARE(playerStopSpy.count(), 0); 0638 QCOMPARE(skipNextTrackSpy.count(), 0); 0639 QCOMPARE(seekSpy.count(), 0); 0640 0641 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 0642 0643 QCOMPARE(playerPlaySpy.wait(100), false); 0644 0645 QCOMPARE(currentTrackChangedSpy.count(), 1); 0646 QCOMPARE(playListModelChangedSpy.count(), 1); 0647 QCOMPARE(playerSourceChangedSpy.count(), 2); 0648 QCOMPARE(urlRoleChangedSpy.count(), 1); 0649 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0650 QCOMPARE(playerStatusChangedSpy.count(), 3); 0651 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0652 QCOMPARE(playerErrorChangedSpy.count(), 0); 0653 QCOMPARE(persistentStateChangedSpy.count(), 0); 0654 QCOMPARE(playerPlaySpy.count(), 0); 0655 QCOMPARE(playerPauseSpy.count(), 0); 0656 QCOMPARE(playerStopSpy.count(), 0); 0657 QCOMPARE(skipNextTrackSpy.count(), 0); 0658 QCOMPARE(seekSpy.count(), 0); 0659 } 0660 0661 void ManageAudioPlayerTest::skipNextTrack() 0662 { 0663 Elisa::ElisaConfiguration::self()->setDefaults(); 0664 ManageAudioPlayer myPlayer; 0665 QStandardItemModel myPlayList; 0666 0667 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 0668 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 0669 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 0670 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 0671 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 0672 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 0673 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 0674 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 0675 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 0676 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 0677 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 0678 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 0679 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 0680 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 0681 0682 myPlayList.appendRow(new QStandardItem); 0683 myPlayList.appendRow(new QStandardItem); 0684 myPlayList.appendRow(new QStandardItem); 0685 0686 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 0687 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 0688 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 0689 0690 QCOMPARE(currentTrackChangedSpy.count(), 0); 0691 QCOMPARE(playListModelChangedSpy.count(), 0); 0692 QCOMPARE(playerSourceChangedSpy.count(), 0); 0693 QCOMPARE(urlRoleChangedSpy.count(), 0); 0694 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0695 QCOMPARE(playerStatusChangedSpy.count(), 0); 0696 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0697 QCOMPARE(playerErrorChangedSpy.count(), 0); 0698 QCOMPARE(persistentStateChangedSpy.count(), 0); 0699 QCOMPARE(playerPlaySpy.count(), 0); 0700 QCOMPARE(playerPauseSpy.count(), 0); 0701 QCOMPARE(playerStopSpy.count(), 0); 0702 QCOMPARE(skipNextTrackSpy.count(), 0); 0703 QCOMPARE(seekSpy.count(), 0); 0704 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0705 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0706 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0707 0708 myPlayer.setPlayListModel(&myPlayList); 0709 0710 QCOMPARE(currentTrackChangedSpy.count(), 0); 0711 QCOMPARE(playListModelChangedSpy.count(), 1); 0712 QCOMPARE(playerSourceChangedSpy.count(), 0); 0713 QCOMPARE(urlRoleChangedSpy.count(), 0); 0714 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0715 QCOMPARE(playerStatusChangedSpy.count(), 0); 0716 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0717 QCOMPARE(playerErrorChangedSpy.count(), 0); 0718 QCOMPARE(persistentStateChangedSpy.count(), 0); 0719 QCOMPARE(playerPlaySpy.count(), 0); 0720 QCOMPARE(playerPauseSpy.count(), 0); 0721 QCOMPARE(playerStopSpy.count(), 0); 0722 QCOMPARE(skipNextTrackSpy.count(), 0); 0723 QCOMPARE(seekSpy.count(), 0); 0724 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0725 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0726 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0727 0728 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 0729 0730 QCOMPARE(currentTrackChangedSpy.count(), 1); 0731 QCOMPARE(playListModelChangedSpy.count(), 1); 0732 QCOMPARE(playerSourceChangedSpy.count(), 1); 0733 QCOMPARE(urlRoleChangedSpy.count(), 0); 0734 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0735 QCOMPARE(playerStatusChangedSpy.count(), 0); 0736 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0737 QCOMPARE(playerErrorChangedSpy.count(), 0); 0738 QCOMPARE(persistentStateChangedSpy.count(), 0); 0739 QCOMPARE(playerPlaySpy.count(), 0); 0740 QCOMPARE(playerPauseSpy.count(), 0); 0741 QCOMPARE(playerStopSpy.count(), 0); 0742 QCOMPARE(skipNextTrackSpy.count(), 0); 0743 QCOMPARE(seekSpy.count(), 0); 0744 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0745 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0746 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0747 0748 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 0749 0750 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 0751 0752 QCOMPARE(currentTrackChangedSpy.count(), 1); 0753 QCOMPARE(playListModelChangedSpy.count(), 1); 0754 QCOMPARE(playerSourceChangedSpy.count(), 2); 0755 QCOMPARE(urlRoleChangedSpy.count(), 1); 0756 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 0757 QCOMPARE(playerStatusChangedSpy.count(), 0); 0758 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0759 QCOMPARE(playerErrorChangedSpy.count(), 0); 0760 QCOMPARE(persistentStateChangedSpy.count(), 0); 0761 QCOMPARE(playerPlaySpy.count(), 0); 0762 QCOMPARE(playerPauseSpy.count(), 0); 0763 QCOMPARE(playerStopSpy.count(), 0); 0764 QCOMPARE(skipNextTrackSpy.count(), 0); 0765 QCOMPARE(seekSpy.count(), 0); 0766 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0767 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0768 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0769 0770 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 0771 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 0772 0773 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 0774 0775 QCOMPARE(currentTrackChangedSpy.count(), 1); 0776 QCOMPARE(playListModelChangedSpy.count(), 1); 0777 QCOMPARE(playerSourceChangedSpy.count(), 2); 0778 QCOMPARE(urlRoleChangedSpy.count(), 1); 0779 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0780 QCOMPARE(playerStatusChangedSpy.count(), 0); 0781 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0782 QCOMPARE(playerErrorChangedSpy.count(), 0); 0783 QCOMPARE(persistentStateChangedSpy.count(), 0); 0784 QCOMPARE(playerPlaySpy.count(), 0); 0785 QCOMPARE(playerPauseSpy.count(), 0); 0786 QCOMPARE(playerStopSpy.count(), 0); 0787 QCOMPARE(skipNextTrackSpy.count(), 0); 0788 QCOMPARE(seekSpy.count(), 0); 0789 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0790 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0791 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0792 0793 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 0794 0795 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 0796 0797 QCOMPARE(currentTrackChangedSpy.count(), 1); 0798 QCOMPARE(playListModelChangedSpy.count(), 1); 0799 QCOMPARE(playerSourceChangedSpy.count(), 2); 0800 QCOMPARE(urlRoleChangedSpy.count(), 1); 0801 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0802 QCOMPARE(playerStatusChangedSpy.count(), 1); 0803 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0804 QCOMPARE(playerErrorChangedSpy.count(), 0); 0805 QCOMPARE(persistentStateChangedSpy.count(), 0); 0806 QCOMPARE(playerPlaySpy.count(), 0); 0807 QCOMPARE(playerPauseSpy.count(), 0); 0808 QCOMPARE(playerStopSpy.count(), 0); 0809 QCOMPARE(skipNextTrackSpy.count(), 0); 0810 QCOMPARE(seekSpy.count(), 0); 0811 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0812 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0813 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0814 0815 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 0816 0817 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 0818 0819 QCOMPARE(currentTrackChangedSpy.count(), 1); 0820 QCOMPARE(playListModelChangedSpy.count(), 1); 0821 QCOMPARE(playerSourceChangedSpy.count(), 2); 0822 QCOMPARE(urlRoleChangedSpy.count(), 1); 0823 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0824 QCOMPARE(playerStatusChangedSpy.count(), 1); 0825 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0826 QCOMPARE(playerErrorChangedSpy.count(), 0); 0827 QCOMPARE(persistentStateChangedSpy.count(), 0); 0828 QCOMPARE(playerPlaySpy.count(), 0); 0829 QCOMPARE(playerPauseSpy.count(), 0); 0830 QCOMPARE(playerStopSpy.count(), 0); 0831 QCOMPARE(seekSpy.count(), 0); 0832 QCOMPARE(skipNextTrackSpy.count(), 0); 0833 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0834 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0835 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0836 0837 myPlayer.setPlayerError(QMediaPlayer::NoError); 0838 0839 QCOMPARE(currentTrackChangedSpy.count(), 1); 0840 QCOMPARE(playListModelChangedSpy.count(), 1); 0841 QCOMPARE(playerSourceChangedSpy.count(), 2); 0842 QCOMPARE(urlRoleChangedSpy.count(), 1); 0843 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0844 QCOMPARE(playerStatusChangedSpy.count(), 1); 0845 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0846 QCOMPARE(playerErrorChangedSpy.count(), 0); 0847 QCOMPARE(persistentStateChangedSpy.count(), 0); 0848 QCOMPARE(playerPlaySpy.count(), 0); 0849 QCOMPARE(playerPauseSpy.count(), 0); 0850 QCOMPARE(playerStopSpy.count(), 0); 0851 QCOMPARE(skipNextTrackSpy.count(), 0); 0852 QCOMPARE(seekSpy.count(), 0); 0853 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0854 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0855 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0856 0857 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 0858 0859 QCOMPARE(currentTrackChangedSpy.count(), 1); 0860 QCOMPARE(playListModelChangedSpy.count(), 1); 0861 QCOMPARE(playerSourceChangedSpy.count(), 2); 0862 QCOMPARE(urlRoleChangedSpy.count(), 1); 0863 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0864 QCOMPARE(playerStatusChangedSpy.count(), 2); 0865 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0866 QCOMPARE(playerErrorChangedSpy.count(), 0); 0867 QCOMPARE(persistentStateChangedSpy.count(), 0); 0868 QCOMPARE(playerPlaySpy.count(), 0); 0869 QCOMPARE(playerPauseSpy.count(), 0); 0870 QCOMPARE(playerStopSpy.count(), 0); 0871 QCOMPARE(skipNextTrackSpy.count(), 0); 0872 QCOMPARE(seekSpy.count(), 0); 0873 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0874 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0875 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0876 0877 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 0878 0879 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 0880 0881 QCOMPARE(currentTrackChangedSpy.count(), 1); 0882 QCOMPARE(playListModelChangedSpy.count(), 1); 0883 QCOMPARE(playerSourceChangedSpy.count(), 2); 0884 QCOMPARE(urlRoleChangedSpy.count(), 1); 0885 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0886 QCOMPARE(playerStatusChangedSpy.count(), 3); 0887 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0888 QCOMPARE(playerErrorChangedSpy.count(), 0); 0889 QCOMPARE(persistentStateChangedSpy.count(), 0); 0890 QCOMPARE(playerPlaySpy.count(), 0); 0891 QCOMPARE(playerPauseSpy.count(), 0); 0892 QCOMPARE(playerStopSpy.count(), 0); 0893 QCOMPARE(skipNextTrackSpy.count(), 0); 0894 QCOMPARE(seekSpy.count(), 0); 0895 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0896 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0897 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0898 0899 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 0900 0901 myPlayer.playPause(); 0902 0903 QCOMPARE(currentTrackChangedSpy.count(), 1); 0904 QCOMPARE(playListModelChangedSpy.count(), 1); 0905 QCOMPARE(playerSourceChangedSpy.count(), 2); 0906 QCOMPARE(urlRoleChangedSpy.count(), 1); 0907 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0908 QCOMPARE(playerStatusChangedSpy.count(), 3); 0909 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0910 QCOMPARE(playerErrorChangedSpy.count(), 0); 0911 QCOMPARE(persistentStateChangedSpy.count(), 0); 0912 QCOMPARE(playerPlaySpy.count(), 0); 0913 QCOMPARE(playerPauseSpy.count(), 0); 0914 QCOMPARE(playerStopSpy.count(), 0); 0915 QCOMPARE(skipNextTrackSpy.count(), 0); 0916 QCOMPARE(seekSpy.count(), 0); 0917 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0918 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0919 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0920 0921 QCOMPARE(playerPlaySpy.wait(), true); 0922 0923 QCOMPARE(currentTrackChangedSpy.count(), 1); 0924 QCOMPARE(playListModelChangedSpy.count(), 1); 0925 QCOMPARE(playerSourceChangedSpy.count(), 2); 0926 QCOMPARE(urlRoleChangedSpy.count(), 1); 0927 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0928 QCOMPARE(playerStatusChangedSpy.count(), 3); 0929 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 0930 QCOMPARE(playerErrorChangedSpy.count(), 0); 0931 QCOMPARE(persistentStateChangedSpy.count(), 0); 0932 QCOMPARE(playerPlaySpy.count(), 1); 0933 QCOMPARE(playerPauseSpy.count(), 0); 0934 QCOMPARE(playerStopSpy.count(), 0); 0935 QCOMPARE(skipNextTrackSpy.count(), 0); 0936 QCOMPARE(seekSpy.count(), 0); 0937 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0938 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0939 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0940 0941 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 0942 0943 QCOMPARE(currentTrackChangedSpy.count(), 1); 0944 QCOMPARE(playListModelChangedSpy.count(), 1); 0945 QCOMPARE(playerSourceChangedSpy.count(), 2); 0946 QCOMPARE(urlRoleChangedSpy.count(), 1); 0947 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0948 QCOMPARE(playerStatusChangedSpy.count(), 3); 0949 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 0950 QCOMPARE(playerErrorChangedSpy.count(), 0); 0951 QCOMPARE(persistentStateChangedSpy.count(), 0); 0952 QCOMPARE(playerPlaySpy.count(), 1); 0953 QCOMPARE(playerPauseSpy.count(), 0); 0954 QCOMPARE(playerStopSpy.count(), 0); 0955 QCOMPARE(skipNextTrackSpy.count(), 0); 0956 QCOMPARE(seekSpy.count(), 0); 0957 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 0958 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0959 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0960 0961 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 0962 0963 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 0964 0965 QCOMPARE(currentTrackChangedSpy.count(), 1); 0966 QCOMPARE(playListModelChangedSpy.count(), 1); 0967 QCOMPARE(playerSourceChangedSpy.count(), 2); 0968 QCOMPARE(urlRoleChangedSpy.count(), 1); 0969 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0970 QCOMPARE(playerStatusChangedSpy.count(), 4); 0971 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 0972 QCOMPARE(playerErrorChangedSpy.count(), 0); 0973 QCOMPARE(persistentStateChangedSpy.count(), 0); 0974 QCOMPARE(playerPlaySpy.count(), 1); 0975 QCOMPARE(playerPauseSpy.count(), 0); 0976 QCOMPARE(playerStopSpy.count(), 0); 0977 QCOMPARE(skipNextTrackSpy.count(), 0); 0978 QCOMPARE(seekSpy.count(), 0); 0979 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 0980 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0981 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 0982 0983 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 0984 0985 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 0986 0987 QCOMPARE(currentTrackChangedSpy.count(), 2); 0988 QCOMPARE(playListModelChangedSpy.count(), 1); 0989 QCOMPARE(playerSourceChangedSpy.count(), 2); 0990 QCOMPARE(urlRoleChangedSpy.count(), 1); 0991 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 0992 QCOMPARE(playerStatusChangedSpy.count(), 4); 0993 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 0994 QCOMPARE(playerErrorChangedSpy.count(), 0); 0995 QCOMPARE(persistentStateChangedSpy.count(), 0); 0996 QCOMPARE(playerPlaySpy.count(), 1); 0997 QCOMPARE(playerPauseSpy.count(), 0); 0998 QCOMPARE(playerStopSpy.count(), 0); 0999 QCOMPARE(skipNextTrackSpy.count(), 0); 1000 QCOMPARE(seekSpy.count(), 0); 1001 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 1002 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1003 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1004 1005 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 1006 1007 QCOMPARE(playerStopSpy.wait(100), true); 1008 1009 QCOMPARE(currentTrackChangedSpy.count(), 2); 1010 QCOMPARE(playListModelChangedSpy.count(), 1); 1011 QCOMPARE(playerSourceChangedSpy.count(), 2); 1012 QCOMPARE(urlRoleChangedSpy.count(), 1); 1013 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1014 QCOMPARE(playerStatusChangedSpy.count(), 4); 1015 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1016 QCOMPARE(playerErrorChangedSpy.count(), 0); 1017 QCOMPARE(persistentStateChangedSpy.count(), 0); 1018 QCOMPARE(playerPlaySpy.count(), 1); 1019 QCOMPARE(playerPauseSpy.count(), 0); 1020 QCOMPARE(playerStopSpy.count(), 1); 1021 QCOMPARE(skipNextTrackSpy.count(), 0); 1022 QCOMPARE(seekSpy.count(), 0); 1023 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 1024 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1025 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1026 1027 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 1028 1029 QCOMPARE(currentTrackChangedSpy.count(), 2); 1030 QCOMPARE(playListModelChangedSpy.count(), 1); 1031 QCOMPARE(playerSourceChangedSpy.count(), 3); 1032 QCOMPARE(urlRoleChangedSpy.count(), 1); 1033 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1034 QCOMPARE(playerStatusChangedSpy.count(), 4); 1035 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1036 QCOMPARE(playerErrorChangedSpy.count(), 0); 1037 QCOMPARE(persistentStateChangedSpy.count(), 0); 1038 QCOMPARE(playerPlaySpy.count(), 1); 1039 QCOMPARE(playerPauseSpy.count(), 0); 1040 QCOMPARE(playerStopSpy.count(), 1); 1041 QCOMPARE(skipNextTrackSpy.count(), 0); 1042 QCOMPARE(seekSpy.count(), 0); 1043 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1044 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1045 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1046 1047 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 1048 1049 QCOMPARE(skipNextTrackSpy.wait(100), false); 1050 1051 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 1052 1053 QCOMPARE(currentTrackChangedSpy.count(), 2); 1054 QCOMPARE(playListModelChangedSpy.count(), 1); 1055 QCOMPARE(playerSourceChangedSpy.count(), 3); 1056 QCOMPARE(urlRoleChangedSpy.count(), 1); 1057 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1058 QCOMPARE(playerStatusChangedSpy.count(), 5); 1059 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1060 QCOMPARE(playerErrorChangedSpy.count(), 0); 1061 QCOMPARE(persistentStateChangedSpy.count(), 0); 1062 QCOMPARE(playerPlaySpy.count(), 1); 1063 QCOMPARE(playerPauseSpy.count(), 0); 1064 QCOMPARE(playerStopSpy.count(), 1); 1065 QCOMPARE(skipNextTrackSpy.count(), 0); 1066 QCOMPARE(seekSpy.count(), 0); 1067 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1068 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1069 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1070 1071 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 1072 1073 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 1074 1075 QCOMPARE(currentTrackChangedSpy.count(), 2); 1076 QCOMPARE(playListModelChangedSpy.count(), 1); 1077 QCOMPARE(playerSourceChangedSpy.count(), 3); 1078 QCOMPARE(urlRoleChangedSpy.count(), 1); 1079 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1080 QCOMPARE(playerStatusChangedSpy.count(), 6); 1081 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1082 QCOMPARE(playerErrorChangedSpy.count(), 0); 1083 QCOMPARE(persistentStateChangedSpy.count(), 0); 1084 QCOMPARE(playerPlaySpy.count(), 1); 1085 QCOMPARE(playerPauseSpy.count(), 0); 1086 QCOMPARE(playerStopSpy.count(), 1); 1087 QCOMPARE(skipNextTrackSpy.count(), 0); 1088 QCOMPARE(seekSpy.count(), 0); 1089 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1090 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1091 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1092 1093 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 1094 1095 QCOMPARE(playerPlaySpy.wait(100), true); 1096 1097 QCOMPARE(currentTrackChangedSpy.count(), 2); 1098 QCOMPARE(playListModelChangedSpy.count(), 1); 1099 QCOMPARE(playerSourceChangedSpy.count(), 3); 1100 QCOMPARE(urlRoleChangedSpy.count(), 1); 1101 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1102 QCOMPARE(playerStatusChangedSpy.count(), 6); 1103 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1104 QCOMPARE(playerErrorChangedSpy.count(), 0); 1105 QCOMPARE(persistentStateChangedSpy.count(), 0); 1106 QCOMPARE(playerPlaySpy.count(), 2); 1107 QCOMPARE(playerPauseSpy.count(), 0); 1108 QCOMPARE(playerStopSpy.count(), 1); 1109 QCOMPARE(skipNextTrackSpy.count(), 0); 1110 QCOMPARE(seekSpy.count(), 0); 1111 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1112 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1113 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1114 } 1115 1116 void ManageAudioPlayerTest::skipNextTrackWithRandomPlay() 1117 { 1118 Elisa::ElisaConfiguration::self()->setDefaults(); 1119 ManageAudioPlayer myPlayer; 1120 QStandardItemModel myPlayList; 1121 1122 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 1123 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 1124 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 1125 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 1126 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 1127 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 1128 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 1129 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 1130 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 1131 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 1132 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 1133 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 1134 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 1135 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 1136 1137 myPlayList.appendRow(new QStandardItem); 1138 myPlayList.appendRow(new QStandardItem); 1139 myPlayList.appendRow(new QStandardItem); 1140 1141 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 1142 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 1143 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 1144 1145 QCOMPARE(currentTrackChangedSpy.count(), 0); 1146 QCOMPARE(playListModelChangedSpy.count(), 0); 1147 QCOMPARE(playerSourceChangedSpy.count(), 0); 1148 QCOMPARE(urlRoleChangedSpy.count(), 0); 1149 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1150 QCOMPARE(playerStatusChangedSpy.count(), 0); 1151 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1152 QCOMPARE(playerErrorChangedSpy.count(), 0); 1153 QCOMPARE(persistentStateChangedSpy.count(), 0); 1154 QCOMPARE(playerPlaySpy.count(), 0); 1155 QCOMPARE(playerPauseSpy.count(), 0); 1156 QCOMPARE(playerStopSpy.count(), 0); 1157 QCOMPARE(skipNextTrackSpy.count(), 0); 1158 QCOMPARE(seekSpy.count(), 0); 1159 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1160 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1161 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1162 1163 myPlayer.setPlayListModel(&myPlayList); 1164 1165 QCOMPARE(currentTrackChangedSpy.count(), 0); 1166 QCOMPARE(playListModelChangedSpy.count(), 1); 1167 QCOMPARE(playerSourceChangedSpy.count(), 0); 1168 QCOMPARE(urlRoleChangedSpy.count(), 0); 1169 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1170 QCOMPARE(playerStatusChangedSpy.count(), 0); 1171 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1172 QCOMPARE(playerErrorChangedSpy.count(), 0); 1173 QCOMPARE(persistentStateChangedSpy.count(), 0); 1174 QCOMPARE(playerPlaySpy.count(), 0); 1175 QCOMPARE(playerPauseSpy.count(), 0); 1176 QCOMPARE(playerStopSpy.count(), 0); 1177 QCOMPARE(skipNextTrackSpy.count(), 0); 1178 QCOMPARE(seekSpy.count(), 0); 1179 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1180 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1181 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1182 1183 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 1184 1185 QCOMPARE(currentTrackChangedSpy.count(), 1); 1186 QCOMPARE(playListModelChangedSpy.count(), 1); 1187 QCOMPARE(playerSourceChangedSpy.count(), 1); 1188 QCOMPARE(urlRoleChangedSpy.count(), 0); 1189 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1190 QCOMPARE(playerStatusChangedSpy.count(), 0); 1191 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1192 QCOMPARE(playerErrorChangedSpy.count(), 0); 1193 QCOMPARE(persistentStateChangedSpy.count(), 0); 1194 QCOMPARE(playerPlaySpy.count(), 0); 1195 QCOMPARE(playerPauseSpy.count(), 0); 1196 QCOMPARE(playerStopSpy.count(), 0); 1197 QCOMPARE(skipNextTrackSpy.count(), 0); 1198 QCOMPARE(seekSpy.count(), 0); 1199 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1200 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1201 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1202 1203 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 1204 1205 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 1206 1207 QCOMPARE(currentTrackChangedSpy.count(), 1); 1208 QCOMPARE(playListModelChangedSpy.count(), 1); 1209 QCOMPARE(playerSourceChangedSpy.count(), 2); 1210 QCOMPARE(urlRoleChangedSpy.count(), 1); 1211 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1212 QCOMPARE(playerStatusChangedSpy.count(), 0); 1213 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1214 QCOMPARE(playerErrorChangedSpy.count(), 0); 1215 QCOMPARE(persistentStateChangedSpy.count(), 0); 1216 QCOMPARE(playerPlaySpy.count(), 0); 1217 QCOMPARE(playerPauseSpy.count(), 0); 1218 QCOMPARE(playerStopSpy.count(), 0); 1219 QCOMPARE(skipNextTrackSpy.count(), 0); 1220 QCOMPARE(seekSpy.count(), 0); 1221 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1222 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1223 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1224 1225 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 1226 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 1227 1228 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 1229 1230 QCOMPARE(currentTrackChangedSpy.count(), 1); 1231 QCOMPARE(playListModelChangedSpy.count(), 1); 1232 QCOMPARE(playerSourceChangedSpy.count(), 2); 1233 QCOMPARE(urlRoleChangedSpy.count(), 1); 1234 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1235 QCOMPARE(playerStatusChangedSpy.count(), 0); 1236 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1237 QCOMPARE(playerErrorChangedSpy.count(), 0); 1238 QCOMPARE(persistentStateChangedSpy.count(), 0); 1239 QCOMPARE(playerPlaySpy.count(), 0); 1240 QCOMPARE(playerPauseSpy.count(), 0); 1241 QCOMPARE(playerStopSpy.count(), 0); 1242 QCOMPARE(skipNextTrackSpy.count(), 0); 1243 QCOMPARE(seekSpy.count(), 0); 1244 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1245 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1246 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1247 1248 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 1249 1250 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 1251 1252 QCOMPARE(currentTrackChangedSpy.count(), 1); 1253 QCOMPARE(playListModelChangedSpy.count(), 1); 1254 QCOMPARE(playerSourceChangedSpy.count(), 2); 1255 QCOMPARE(urlRoleChangedSpy.count(), 1); 1256 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1257 QCOMPARE(playerStatusChangedSpy.count(), 1); 1258 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1259 QCOMPARE(playerErrorChangedSpy.count(), 0); 1260 QCOMPARE(persistentStateChangedSpy.count(), 0); 1261 QCOMPARE(playerPlaySpy.count(), 0); 1262 QCOMPARE(playerPauseSpy.count(), 0); 1263 QCOMPARE(playerStopSpy.count(), 0); 1264 QCOMPARE(skipNextTrackSpy.count(), 0); 1265 QCOMPARE(seekSpy.count(), 0); 1266 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1267 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1268 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1269 1270 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 1271 1272 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 1273 1274 QCOMPARE(currentTrackChangedSpy.count(), 1); 1275 QCOMPARE(playListModelChangedSpy.count(), 1); 1276 QCOMPARE(playerSourceChangedSpy.count(), 2); 1277 QCOMPARE(urlRoleChangedSpy.count(), 1); 1278 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1279 QCOMPARE(playerStatusChangedSpy.count(), 1); 1280 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1281 QCOMPARE(playerErrorChangedSpy.count(), 0); 1282 QCOMPARE(persistentStateChangedSpy.count(), 0); 1283 QCOMPARE(playerPlaySpy.count(), 0); 1284 QCOMPARE(playerPauseSpy.count(), 0); 1285 QCOMPARE(playerStopSpy.count(), 0); 1286 QCOMPARE(seekSpy.count(), 0); 1287 QCOMPARE(skipNextTrackSpy.count(), 0); 1288 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1289 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1290 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1291 1292 myPlayer.setPlayerError(QMediaPlayer::NoError); 1293 1294 QCOMPARE(currentTrackChangedSpy.count(), 1); 1295 QCOMPARE(playListModelChangedSpy.count(), 1); 1296 QCOMPARE(playerSourceChangedSpy.count(), 2); 1297 QCOMPARE(urlRoleChangedSpy.count(), 1); 1298 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1299 QCOMPARE(playerStatusChangedSpy.count(), 1); 1300 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1301 QCOMPARE(playerErrorChangedSpy.count(), 0); 1302 QCOMPARE(persistentStateChangedSpy.count(), 0); 1303 QCOMPARE(playerPlaySpy.count(), 0); 1304 QCOMPARE(playerPauseSpy.count(), 0); 1305 QCOMPARE(playerStopSpy.count(), 0); 1306 QCOMPARE(skipNextTrackSpy.count(), 0); 1307 QCOMPARE(seekSpy.count(), 0); 1308 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1309 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1310 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1311 1312 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 1313 1314 QCOMPARE(currentTrackChangedSpy.count(), 1); 1315 QCOMPARE(playListModelChangedSpy.count(), 1); 1316 QCOMPARE(playerSourceChangedSpy.count(), 2); 1317 QCOMPARE(urlRoleChangedSpy.count(), 1); 1318 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1319 QCOMPARE(playerStatusChangedSpy.count(), 2); 1320 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1321 QCOMPARE(playerErrorChangedSpy.count(), 0); 1322 QCOMPARE(persistentStateChangedSpy.count(), 0); 1323 QCOMPARE(playerPlaySpy.count(), 0); 1324 QCOMPARE(playerPauseSpy.count(), 0); 1325 QCOMPARE(playerStopSpy.count(), 0); 1326 QCOMPARE(skipNextTrackSpy.count(), 0); 1327 QCOMPARE(seekSpy.count(), 0); 1328 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1329 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1330 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1331 1332 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 1333 1334 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 1335 1336 QCOMPARE(currentTrackChangedSpy.count(), 1); 1337 QCOMPARE(playListModelChangedSpy.count(), 1); 1338 QCOMPARE(playerSourceChangedSpy.count(), 2); 1339 QCOMPARE(urlRoleChangedSpy.count(), 1); 1340 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1341 QCOMPARE(playerStatusChangedSpy.count(), 3); 1342 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1343 QCOMPARE(playerErrorChangedSpy.count(), 0); 1344 QCOMPARE(persistentStateChangedSpy.count(), 0); 1345 QCOMPARE(playerPlaySpy.count(), 0); 1346 QCOMPARE(playerPauseSpy.count(), 0); 1347 QCOMPARE(playerStopSpy.count(), 0); 1348 QCOMPARE(skipNextTrackSpy.count(), 0); 1349 QCOMPARE(seekSpy.count(), 0); 1350 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1351 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1352 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1353 1354 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 1355 1356 myPlayer.playPause(); 1357 1358 QCOMPARE(currentTrackChangedSpy.count(), 1); 1359 QCOMPARE(playListModelChangedSpy.count(), 1); 1360 QCOMPARE(playerSourceChangedSpy.count(), 2); 1361 QCOMPARE(urlRoleChangedSpy.count(), 1); 1362 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1363 QCOMPARE(playerStatusChangedSpy.count(), 3); 1364 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1365 QCOMPARE(playerErrorChangedSpy.count(), 0); 1366 QCOMPARE(persistentStateChangedSpy.count(), 0); 1367 QCOMPARE(playerPlaySpy.count(), 0); 1368 QCOMPARE(playerPauseSpy.count(), 0); 1369 QCOMPARE(playerStopSpy.count(), 0); 1370 QCOMPARE(skipNextTrackSpy.count(), 0); 1371 QCOMPARE(seekSpy.count(), 0); 1372 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1373 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1374 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1375 1376 QCOMPARE(playerPlaySpy.wait(), true); 1377 1378 QCOMPARE(currentTrackChangedSpy.count(), 1); 1379 QCOMPARE(playListModelChangedSpy.count(), 1); 1380 QCOMPARE(playerSourceChangedSpy.count(), 2); 1381 QCOMPARE(urlRoleChangedSpy.count(), 1); 1382 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1383 QCOMPARE(playerStatusChangedSpy.count(), 3); 1384 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1385 QCOMPARE(playerErrorChangedSpy.count(), 0); 1386 QCOMPARE(persistentStateChangedSpy.count(), 0); 1387 QCOMPARE(playerPlaySpy.count(), 1); 1388 QCOMPARE(playerPauseSpy.count(), 0); 1389 QCOMPARE(playerStopSpy.count(), 0); 1390 QCOMPARE(skipNextTrackSpy.count(), 0); 1391 QCOMPARE(seekSpy.count(), 0); 1392 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1393 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1394 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1395 1396 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 1397 1398 QCOMPARE(currentTrackChangedSpy.count(), 1); 1399 QCOMPARE(playListModelChangedSpy.count(), 1); 1400 QCOMPARE(playerSourceChangedSpy.count(), 2); 1401 QCOMPARE(urlRoleChangedSpy.count(), 1); 1402 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1403 QCOMPARE(playerStatusChangedSpy.count(), 3); 1404 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1405 QCOMPARE(playerErrorChangedSpy.count(), 0); 1406 QCOMPARE(persistentStateChangedSpy.count(), 0); 1407 QCOMPARE(playerPlaySpy.count(), 1); 1408 QCOMPARE(playerPauseSpy.count(), 0); 1409 QCOMPARE(playerStopSpy.count(), 0); 1410 QCOMPARE(skipNextTrackSpy.count(), 0); 1411 QCOMPARE(seekSpy.count(), 0); 1412 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 1413 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1414 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1415 1416 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 1417 1418 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 1419 1420 QCOMPARE(currentTrackChangedSpy.count(), 1); 1421 QCOMPARE(playListModelChangedSpy.count(), 1); 1422 QCOMPARE(playerSourceChangedSpy.count(), 2); 1423 QCOMPARE(urlRoleChangedSpy.count(), 1); 1424 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1425 QCOMPARE(playerStatusChangedSpy.count(), 4); 1426 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1427 QCOMPARE(playerErrorChangedSpy.count(), 0); 1428 QCOMPARE(persistentStateChangedSpy.count(), 0); 1429 QCOMPARE(playerPlaySpy.count(), 1); 1430 QCOMPARE(playerPauseSpy.count(), 0); 1431 QCOMPARE(playerStopSpy.count(), 0); 1432 QCOMPARE(skipNextTrackSpy.count(), 0); 1433 QCOMPARE(seekSpy.count(), 0); 1434 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 1435 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1436 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1437 1438 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 1439 1440 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 1441 1442 QCOMPARE(currentTrackChangedSpy.count(), 2); 1443 QCOMPARE(playListModelChangedSpy.count(), 1); 1444 QCOMPARE(playerSourceChangedSpy.count(), 2); 1445 QCOMPARE(urlRoleChangedSpy.count(), 1); 1446 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1447 QCOMPARE(playerStatusChangedSpy.count(), 4); 1448 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1449 QCOMPARE(playerErrorChangedSpy.count(), 0); 1450 QCOMPARE(persistentStateChangedSpy.count(), 0); 1451 QCOMPARE(playerPlaySpy.count(), 1); 1452 QCOMPARE(playerPauseSpy.count(), 0); 1453 QCOMPARE(playerStopSpy.count(), 0); 1454 QCOMPARE(skipNextTrackSpy.count(), 0); 1455 QCOMPARE(seekSpy.count(), 0); 1456 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 1457 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1458 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1459 1460 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 1461 1462 QCOMPARE(playerStopSpy.wait(100), true); 1463 1464 QCOMPARE(currentTrackChangedSpy.count(), 2); 1465 QCOMPARE(playListModelChangedSpy.count(), 1); 1466 QCOMPARE(playerSourceChangedSpy.count(), 2); 1467 QCOMPARE(urlRoleChangedSpy.count(), 1); 1468 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1469 QCOMPARE(playerStatusChangedSpy.count(), 4); 1470 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1471 QCOMPARE(playerErrorChangedSpy.count(), 0); 1472 QCOMPARE(persistentStateChangedSpy.count(), 0); 1473 QCOMPARE(playerPlaySpy.count(), 1); 1474 QCOMPARE(playerPauseSpy.count(), 0); 1475 QCOMPARE(playerStopSpy.count(), 1); 1476 QCOMPARE(skipNextTrackSpy.count(), 0); 1477 QCOMPARE(seekSpy.count(), 0); 1478 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 1479 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1480 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1481 1482 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 1483 1484 QCOMPARE(currentTrackChangedSpy.count(), 2); 1485 QCOMPARE(playListModelChangedSpy.count(), 1); 1486 QCOMPARE(playerSourceChangedSpy.count(), 3); 1487 QCOMPARE(urlRoleChangedSpy.count(), 1); 1488 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1489 QCOMPARE(playerStatusChangedSpy.count(), 4); 1490 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1491 QCOMPARE(playerErrorChangedSpy.count(), 0); 1492 QCOMPARE(persistentStateChangedSpy.count(), 0); 1493 QCOMPARE(playerPlaySpy.count(), 1); 1494 QCOMPARE(playerPauseSpy.count(), 0); 1495 QCOMPARE(playerStopSpy.count(), 1); 1496 QCOMPARE(skipNextTrackSpy.count(), 0); 1497 QCOMPARE(seekSpy.count(), 0); 1498 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1499 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1500 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1501 1502 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 1503 1504 QCOMPARE(skipNextTrackSpy.wait(100), false); 1505 1506 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 1507 1508 QCOMPARE(currentTrackChangedSpy.count(), 2); 1509 QCOMPARE(playListModelChangedSpy.count(), 1); 1510 QCOMPARE(playerSourceChangedSpy.count(), 3); 1511 QCOMPARE(urlRoleChangedSpy.count(), 1); 1512 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1513 QCOMPARE(playerStatusChangedSpy.count(), 5); 1514 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1515 QCOMPARE(playerErrorChangedSpy.count(), 0); 1516 QCOMPARE(persistentStateChangedSpy.count(), 0); 1517 QCOMPARE(playerPlaySpy.count(), 1); 1518 QCOMPARE(playerPauseSpy.count(), 0); 1519 QCOMPARE(playerStopSpy.count(), 1); 1520 QCOMPARE(skipNextTrackSpy.count(), 0); 1521 QCOMPARE(seekSpy.count(), 0); 1522 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1523 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1524 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1525 1526 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 1527 1528 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 1529 1530 QCOMPARE(currentTrackChangedSpy.count(), 2); 1531 QCOMPARE(playListModelChangedSpy.count(), 1); 1532 QCOMPARE(playerSourceChangedSpy.count(), 3); 1533 QCOMPARE(urlRoleChangedSpy.count(), 1); 1534 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1535 QCOMPARE(playerStatusChangedSpy.count(), 6); 1536 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1537 QCOMPARE(playerErrorChangedSpy.count(), 0); 1538 QCOMPARE(persistentStateChangedSpy.count(), 0); 1539 QCOMPARE(playerPlaySpy.count(), 1); 1540 QCOMPARE(playerPauseSpy.count(), 0); 1541 QCOMPARE(playerStopSpy.count(), 1); 1542 QCOMPARE(skipNextTrackSpy.count(), 0); 1543 QCOMPARE(seekSpy.count(), 0); 1544 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1545 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1546 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1547 1548 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 1549 1550 QCOMPARE(playerPlaySpy.wait(100), true); 1551 1552 QCOMPARE(currentTrackChangedSpy.count(), 2); 1553 QCOMPARE(playListModelChangedSpy.count(), 1); 1554 QCOMPARE(playerSourceChangedSpy.count(), 3); 1555 QCOMPARE(urlRoleChangedSpy.count(), 1); 1556 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1557 QCOMPARE(playerStatusChangedSpy.count(), 6); 1558 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1559 QCOMPARE(playerErrorChangedSpy.count(), 0); 1560 QCOMPARE(persistentStateChangedSpy.count(), 0); 1561 QCOMPARE(playerPlaySpy.count(), 2); 1562 QCOMPARE(playerPauseSpy.count(), 0); 1563 QCOMPARE(playerStopSpy.count(), 1); 1564 QCOMPARE(skipNextTrackSpy.count(), 0); 1565 QCOMPARE(seekSpy.count(), 0); 1566 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1567 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1568 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 1569 } 1570 1571 void ManageAudioPlayerTest::skipPreviousTrack() 1572 { 1573 Elisa::ElisaConfiguration::self()->setDefaults(); 1574 ManageAudioPlayer myPlayer; 1575 QStandardItemModel myPlayList; 1576 1577 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 1578 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 1579 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 1580 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 1581 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 1582 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 1583 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 1584 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 1585 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 1586 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 1587 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 1588 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 1589 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 1590 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 1591 1592 myPlayList.appendRow(new QStandardItem); 1593 myPlayList.appendRow(new QStandardItem); 1594 myPlayList.appendRow(new QStandardItem); 1595 1596 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 1597 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 1598 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 1599 1600 QCOMPARE(currentTrackChangedSpy.count(), 0); 1601 QCOMPARE(playListModelChangedSpy.count(), 0); 1602 QCOMPARE(playerSourceChangedSpy.count(), 0); 1603 QCOMPARE(urlRoleChangedSpy.count(), 0); 1604 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1605 QCOMPARE(playerStatusChangedSpy.count(), 0); 1606 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1607 QCOMPARE(playerErrorChangedSpy.count(), 0); 1608 QCOMPARE(persistentStateChangedSpy.count(), 0); 1609 QCOMPARE(playerPlaySpy.count(), 0); 1610 QCOMPARE(playerPauseSpy.count(), 0); 1611 QCOMPARE(playerStopSpy.count(), 0); 1612 QCOMPARE(skipNextTrackSpy.count(), 0); 1613 QCOMPARE(seekSpy.count(), 0); 1614 1615 myPlayer.setPlayListModel(&myPlayList); 1616 1617 QCOMPARE(currentTrackChangedSpy.count(), 0); 1618 QCOMPARE(playListModelChangedSpy.count(), 1); 1619 QCOMPARE(playerSourceChangedSpy.count(), 0); 1620 QCOMPARE(urlRoleChangedSpy.count(), 0); 1621 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1622 QCOMPARE(playerStatusChangedSpy.count(), 0); 1623 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1624 QCOMPARE(playerErrorChangedSpy.count(), 0); 1625 QCOMPARE(persistentStateChangedSpy.count(), 0); 1626 QCOMPARE(playerPlaySpy.count(), 0); 1627 QCOMPARE(playerPauseSpy.count(), 0); 1628 QCOMPARE(playerStopSpy.count(), 0); 1629 QCOMPARE(skipNextTrackSpy.count(), 0); 1630 QCOMPARE(seekSpy.count(), 0); 1631 1632 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 1633 1634 QCOMPARE(currentTrackChangedSpy.count(), 1); 1635 QCOMPARE(playListModelChangedSpy.count(), 1); 1636 QCOMPARE(playerSourceChangedSpy.count(), 1); 1637 QCOMPARE(urlRoleChangedSpy.count(), 0); 1638 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1639 QCOMPARE(playerStatusChangedSpy.count(), 0); 1640 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1641 QCOMPARE(playerErrorChangedSpy.count(), 0); 1642 QCOMPARE(persistentStateChangedSpy.count(), 0); 1643 QCOMPARE(playerPlaySpy.count(), 0); 1644 QCOMPARE(playerPauseSpy.count(), 0); 1645 QCOMPARE(playerStopSpy.count(), 0); 1646 QCOMPARE(skipNextTrackSpy.count(), 0); 1647 QCOMPARE(seekSpy.count(), 0); 1648 1649 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 1650 1651 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 1652 1653 QCOMPARE(currentTrackChangedSpy.count(), 1); 1654 QCOMPARE(playListModelChangedSpy.count(), 1); 1655 QCOMPARE(playerSourceChangedSpy.count(), 2); 1656 QCOMPARE(urlRoleChangedSpy.count(), 1); 1657 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 1658 QCOMPARE(playerStatusChangedSpy.count(), 0); 1659 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1660 QCOMPARE(playerErrorChangedSpy.count(), 0); 1661 QCOMPARE(persistentStateChangedSpy.count(), 0); 1662 QCOMPARE(playerPlaySpy.count(), 0); 1663 QCOMPARE(playerPauseSpy.count(), 0); 1664 QCOMPARE(playerStopSpy.count(), 0); 1665 QCOMPARE(skipNextTrackSpy.count(), 0); 1666 QCOMPARE(seekSpy.count(), 0); 1667 1668 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 1669 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 1670 1671 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 1672 1673 QCOMPARE(currentTrackChangedSpy.count(), 1); 1674 QCOMPARE(playListModelChangedSpy.count(), 1); 1675 QCOMPARE(playListModelChangedSpy.count(), 1); 1676 QCOMPARE(playerSourceChangedSpy.count(), 2); 1677 QCOMPARE(urlRoleChangedSpy.count(), 1); 1678 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1679 QCOMPARE(playerStatusChangedSpy.count(), 0); 1680 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1681 QCOMPARE(playerErrorChangedSpy.count(), 0); 1682 QCOMPARE(persistentStateChangedSpy.count(), 0); 1683 QCOMPARE(playerPlaySpy.count(), 0); 1684 QCOMPARE(playerPauseSpy.count(), 0); 1685 QCOMPARE(playerStopSpy.count(), 0); 1686 QCOMPARE(skipNextTrackSpy.count(), 0); 1687 QCOMPARE(seekSpy.count(), 0); 1688 1689 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 1690 1691 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 1692 1693 QCOMPARE(currentTrackChangedSpy.count(), 1); 1694 QCOMPARE(playListModelChangedSpy.count(), 1); 1695 QCOMPARE(playerSourceChangedSpy.count(), 2); 1696 QCOMPARE(urlRoleChangedSpy.count(), 1); 1697 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1698 QCOMPARE(playerStatusChangedSpy.count(), 1); 1699 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1700 QCOMPARE(playerErrorChangedSpy.count(), 0); 1701 QCOMPARE(persistentStateChangedSpy.count(), 0); 1702 QCOMPARE(playerPlaySpy.count(), 0); 1703 QCOMPARE(playerPauseSpy.count(), 0); 1704 QCOMPARE(playerStopSpy.count(), 0); 1705 QCOMPARE(skipNextTrackSpy.count(), 0); 1706 QCOMPARE(seekSpy.count(), 0); 1707 1708 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 1709 1710 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 1711 1712 QCOMPARE(currentTrackChangedSpy.count(), 1); 1713 QCOMPARE(playListModelChangedSpy.count(), 1); 1714 QCOMPARE(playerSourceChangedSpy.count(), 2); 1715 QCOMPARE(urlRoleChangedSpy.count(), 1); 1716 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1717 QCOMPARE(playerStatusChangedSpy.count(), 1); 1718 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1719 QCOMPARE(playerErrorChangedSpy.count(), 0); 1720 QCOMPARE(persistentStateChangedSpy.count(), 0); 1721 QCOMPARE(playerPlaySpy.count(), 0); 1722 QCOMPARE(playerPauseSpy.count(), 0); 1723 QCOMPARE(playerStopSpy.count(), 0); 1724 QCOMPARE(skipNextTrackSpy.count(), 0); 1725 QCOMPARE(seekSpy.count(), 0); 1726 1727 myPlayer.setPlayerError(QMediaPlayer::NoError); 1728 1729 QCOMPARE(currentTrackChangedSpy.count(), 1); 1730 QCOMPARE(playListModelChangedSpy.count(), 1); 1731 QCOMPARE(playerSourceChangedSpy.count(), 2); 1732 QCOMPARE(urlRoleChangedSpy.count(), 1); 1733 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1734 QCOMPARE(playerStatusChangedSpy.count(), 1); 1735 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1736 QCOMPARE(playerErrorChangedSpy.count(), 0); 1737 QCOMPARE(persistentStateChangedSpy.count(), 0); 1738 QCOMPARE(playerPlaySpy.count(), 0); 1739 QCOMPARE(playerPauseSpy.count(), 0); 1740 QCOMPARE(playerStopSpy.count(), 0); 1741 QCOMPARE(skipNextTrackSpy.count(), 0); 1742 QCOMPARE(seekSpy.count(), 0); 1743 1744 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 1745 1746 QCOMPARE(currentTrackChangedSpy.count(), 1); 1747 QCOMPARE(playListModelChangedSpy.count(), 1); 1748 QCOMPARE(playerSourceChangedSpy.count(), 2); 1749 QCOMPARE(urlRoleChangedSpy.count(), 1); 1750 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1751 QCOMPARE(playerStatusChangedSpy.count(), 2); 1752 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1753 QCOMPARE(playerErrorChangedSpy.count(), 0); 1754 QCOMPARE(persistentStateChangedSpy.count(), 0); 1755 QCOMPARE(playerPlaySpy.count(), 0); 1756 QCOMPARE(playerPauseSpy.count(), 0); 1757 QCOMPARE(playerStopSpy.count(), 0); 1758 QCOMPARE(skipNextTrackSpy.count(), 0); 1759 QCOMPARE(seekSpy.count(), 0); 1760 1761 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 1762 1763 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 1764 1765 QCOMPARE(currentTrackChangedSpy.count(), 1); 1766 QCOMPARE(playListModelChangedSpy.count(), 1); 1767 QCOMPARE(playerSourceChangedSpy.count(), 2); 1768 QCOMPARE(urlRoleChangedSpy.count(), 1); 1769 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1770 QCOMPARE(playerStatusChangedSpy.count(), 3); 1771 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1772 QCOMPARE(playerErrorChangedSpy.count(), 0); 1773 QCOMPARE(persistentStateChangedSpy.count(), 0); 1774 QCOMPARE(playerPlaySpy.count(), 0); 1775 QCOMPARE(playerPauseSpy.count(), 0); 1776 QCOMPARE(playerStopSpy.count(), 0); 1777 QCOMPARE(skipNextTrackSpy.count(), 0); 1778 QCOMPARE(seekSpy.count(), 0); 1779 1780 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 1781 1782 myPlayer.playPause(); 1783 1784 QCOMPARE(currentTrackChangedSpy.count(), 1); 1785 QCOMPARE(playListModelChangedSpy.count(), 1); 1786 QCOMPARE(playerSourceChangedSpy.count(), 2); 1787 QCOMPARE(urlRoleChangedSpy.count(), 1); 1788 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1789 QCOMPARE(playerStatusChangedSpy.count(), 3); 1790 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1791 QCOMPARE(playerErrorChangedSpy.count(), 0); 1792 QCOMPARE(persistentStateChangedSpy.count(), 0); 1793 QCOMPARE(playerPlaySpy.count(), 0); 1794 QCOMPARE(playerPauseSpy.count(), 0); 1795 QCOMPARE(playerStopSpy.count(), 0); 1796 QCOMPARE(skipNextTrackSpy.count(), 0); 1797 QCOMPARE(seekSpy.count(), 0); 1798 1799 QCOMPARE(playerPlaySpy.wait(), true); 1800 1801 QCOMPARE(currentTrackChangedSpy.count(), 1); 1802 QCOMPARE(playListModelChangedSpy.count(), 1); 1803 QCOMPARE(playerSourceChangedSpy.count(), 2); 1804 QCOMPARE(urlRoleChangedSpy.count(), 1); 1805 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1806 QCOMPARE(playerStatusChangedSpy.count(), 3); 1807 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 1808 QCOMPARE(playerErrorChangedSpy.count(), 0); 1809 QCOMPARE(persistentStateChangedSpy.count(), 0); 1810 QCOMPARE(playerPlaySpy.count(), 1); 1811 QCOMPARE(playerPauseSpy.count(), 0); 1812 QCOMPARE(playerStopSpy.count(), 0); 1813 QCOMPARE(skipNextTrackSpy.count(), 0); 1814 QCOMPARE(seekSpy.count(), 0); 1815 1816 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 1817 1818 QCOMPARE(currentTrackChangedSpy.count(), 1); 1819 QCOMPARE(playListModelChangedSpy.count(), 1); 1820 QCOMPARE(playerSourceChangedSpy.count(), 2); 1821 QCOMPARE(urlRoleChangedSpy.count(), 1); 1822 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1823 QCOMPARE(playerStatusChangedSpy.count(), 3); 1824 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1825 QCOMPARE(playerErrorChangedSpy.count(), 0); 1826 QCOMPARE(persistentStateChangedSpy.count(), 0); 1827 QCOMPARE(playerPlaySpy.count(), 1); 1828 QCOMPARE(playerPauseSpy.count(), 0); 1829 QCOMPARE(playerStopSpy.count(), 0); 1830 QCOMPARE(skipNextTrackSpy.count(), 0); 1831 QCOMPARE(seekSpy.count(), 0); 1832 1833 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 1834 1835 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 1836 1837 QCOMPARE(currentTrackChangedSpy.count(), 1); 1838 QCOMPARE(playListModelChangedSpy.count(), 1); 1839 QCOMPARE(playerSourceChangedSpy.count(), 2); 1840 QCOMPARE(urlRoleChangedSpy.count(), 1); 1841 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1842 QCOMPARE(playerStatusChangedSpy.count(), 4); 1843 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1844 QCOMPARE(playerErrorChangedSpy.count(), 0); 1845 QCOMPARE(persistentStateChangedSpy.count(), 0); 1846 QCOMPARE(playerPlaySpy.count(), 1); 1847 QCOMPARE(playerPauseSpy.count(), 0); 1848 QCOMPARE(playerStopSpy.count(), 0); 1849 QCOMPARE(skipNextTrackSpy.count(), 0); 1850 QCOMPARE(seekSpy.count(), 0); 1851 1852 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 1853 1854 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 1855 1856 QCOMPARE(currentTrackChangedSpy.count(), 2); 1857 QCOMPARE(playListModelChangedSpy.count(), 1); 1858 QCOMPARE(playerSourceChangedSpy.count(), 2); 1859 QCOMPARE(urlRoleChangedSpy.count(), 1); 1860 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1861 QCOMPARE(playerStatusChangedSpy.count(), 4); 1862 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1863 QCOMPARE(playerErrorChangedSpy.count(), 0); 1864 QCOMPARE(persistentStateChangedSpy.count(), 0); 1865 QCOMPARE(playerPlaySpy.count(), 1); 1866 QCOMPARE(playerPauseSpy.count(), 0); 1867 QCOMPARE(playerStopSpy.count(), 0); 1868 QCOMPARE(skipNextTrackSpy.count(), 0); 1869 QCOMPARE(seekSpy.count(), 0); 1870 1871 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 1872 1873 QCOMPARE(playerStopSpy.wait(100), true); 1874 1875 QCOMPARE(currentTrackChangedSpy.count(), 2); 1876 QCOMPARE(playListModelChangedSpy.count(), 1); 1877 QCOMPARE(playerSourceChangedSpy.count(), 2); 1878 QCOMPARE(urlRoleChangedSpy.count(), 1); 1879 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1880 QCOMPARE(playerStatusChangedSpy.count(), 4); 1881 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 1882 QCOMPARE(playerErrorChangedSpy.count(), 0); 1883 QCOMPARE(persistentStateChangedSpy.count(), 0); 1884 QCOMPARE(playerPlaySpy.count(), 1); 1885 QCOMPARE(playerPauseSpy.count(), 0); 1886 QCOMPARE(playerStopSpy.count(), 1); 1887 QCOMPARE(skipNextTrackSpy.count(), 0); 1888 QCOMPARE(seekSpy.count(), 0); 1889 1890 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 1891 1892 QCOMPARE(currentTrackChangedSpy.count(), 2); 1893 QCOMPARE(playListModelChangedSpy.count(), 1); 1894 QCOMPARE(playerSourceChangedSpy.count(), 3); 1895 QCOMPARE(urlRoleChangedSpy.count(), 1); 1896 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1897 QCOMPARE(playerStatusChangedSpy.count(), 4); 1898 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1899 QCOMPARE(playerErrorChangedSpy.count(), 0); 1900 QCOMPARE(persistentStateChangedSpy.count(), 0); 1901 QCOMPARE(playerPlaySpy.count(), 1); 1902 QCOMPARE(playerPauseSpy.count(), 0); 1903 QCOMPARE(playerStopSpy.count(), 1); 1904 QCOMPARE(skipNextTrackSpy.count(), 0); 1905 QCOMPARE(seekSpy.count(), 0); 1906 1907 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 1908 1909 QCOMPARE(skipNextTrackSpy.wait(100), false); 1910 1911 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 1912 1913 QCOMPARE(currentTrackChangedSpy.count(), 2); 1914 QCOMPARE(playListModelChangedSpy.count(), 1); 1915 QCOMPARE(playerSourceChangedSpy.count(), 3); 1916 QCOMPARE(urlRoleChangedSpy.count(), 1); 1917 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1918 QCOMPARE(playerStatusChangedSpy.count(), 5); 1919 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1920 QCOMPARE(playerErrorChangedSpy.count(), 0); 1921 QCOMPARE(persistentStateChangedSpy.count(), 0); 1922 QCOMPARE(playerPlaySpy.count(), 1); 1923 QCOMPARE(playerPauseSpy.count(), 0); 1924 QCOMPARE(playerStopSpy.count(), 1); 1925 QCOMPARE(skipNextTrackSpy.count(), 0); 1926 QCOMPARE(seekSpy.count(), 0); 1927 1928 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 1929 1930 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 1931 1932 QCOMPARE(currentTrackChangedSpy.count(), 2); 1933 QCOMPARE(playListModelChangedSpy.count(), 1); 1934 QCOMPARE(playerSourceChangedSpy.count(), 3); 1935 QCOMPARE(urlRoleChangedSpy.count(), 1); 1936 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1937 QCOMPARE(playerStatusChangedSpy.count(), 6); 1938 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1939 QCOMPARE(playerErrorChangedSpy.count(), 0); 1940 QCOMPARE(persistentStateChangedSpy.count(), 0); 1941 QCOMPARE(playerPlaySpy.count(), 1); 1942 QCOMPARE(playerPauseSpy.count(), 0); 1943 QCOMPARE(playerStopSpy.count(), 1); 1944 QCOMPARE(skipNextTrackSpy.count(), 0); 1945 QCOMPARE(seekSpy.count(), 0); 1946 1947 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 1948 1949 QCOMPARE(playerPlaySpy.wait(100), true); 1950 1951 QCOMPARE(currentTrackChangedSpy.count(), 2); 1952 QCOMPARE(playListModelChangedSpy.count(), 1); 1953 QCOMPARE(playerSourceChangedSpy.count(), 3); 1954 QCOMPARE(urlRoleChangedSpy.count(), 1); 1955 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 1956 QCOMPARE(playerStatusChangedSpy.count(), 6); 1957 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 1958 QCOMPARE(playerErrorChangedSpy.count(), 0); 1959 QCOMPARE(persistentStateChangedSpy.count(), 0); 1960 QCOMPARE(playerPlaySpy.count(), 2); 1961 QCOMPARE(playerPauseSpy.count(), 0); 1962 QCOMPARE(playerStopSpy.count(), 1); 1963 QCOMPARE(skipNextTrackSpy.count(), 0); 1964 QCOMPARE(seekSpy.count(), 0); 1965 } 1966 1967 void ManageAudioPlayerTest::playTrackAndskipNextTrack() 1968 { 1969 Elisa::ElisaConfiguration::self()->setDefaults(); 1970 ManageAudioPlayer myPlayer; 1971 QStandardItemModel myPlayList; 1972 1973 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 1974 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 1975 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 1976 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 1977 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 1978 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 1979 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 1980 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 1981 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 1982 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 1983 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 1984 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 1985 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 1986 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 1987 1988 myPlayList.appendRow(new QStandardItem); 1989 myPlayList.appendRow(new QStandardItem); 1990 myPlayList.appendRow(new QStandardItem); 1991 1992 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 1993 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 1994 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 1995 1996 QCOMPARE(currentTrackChangedSpy.count(), 0); 1997 QCOMPARE(playListModelChangedSpy.count(), 0); 1998 QCOMPARE(playerSourceChangedSpy.count(), 0); 1999 QCOMPARE(urlRoleChangedSpy.count(), 0); 2000 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2001 QCOMPARE(playerStatusChangedSpy.count(), 0); 2002 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2003 QCOMPARE(playerErrorChangedSpy.count(), 0); 2004 QCOMPARE(persistentStateChangedSpy.count(), 0); 2005 QCOMPARE(playerPlaySpy.count(), 0); 2006 QCOMPARE(playerPauseSpy.count(), 0); 2007 QCOMPARE(playerStopSpy.count(), 0); 2008 QCOMPARE(skipNextTrackSpy.count(), 0); 2009 QCOMPARE(seekSpy.count(), 0); 2010 2011 myPlayer.setPlayListModel(&myPlayList); 2012 2013 QCOMPARE(currentTrackChangedSpy.count(), 0); 2014 QCOMPARE(playListModelChangedSpy.count(), 1); 2015 QCOMPARE(playerSourceChangedSpy.count(), 0); 2016 QCOMPARE(urlRoleChangedSpy.count(), 0); 2017 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2018 QCOMPARE(playerStatusChangedSpy.count(), 0); 2019 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2020 QCOMPARE(playerErrorChangedSpy.count(), 0); 2021 QCOMPARE(persistentStateChangedSpy.count(), 0); 2022 QCOMPARE(playerPlaySpy.count(), 0); 2023 QCOMPARE(playerPauseSpy.count(), 0); 2024 QCOMPARE(playerStopSpy.count(), 0); 2025 QCOMPARE(skipNextTrackSpy.count(), 0); 2026 QCOMPARE(seekSpy.count(), 0); 2027 2028 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 2029 2030 QCOMPARE(currentTrackChangedSpy.count(), 1); 2031 QCOMPARE(playListModelChangedSpy.count(), 1); 2032 QCOMPARE(playerSourceChangedSpy.count(), 1); 2033 QCOMPARE(urlRoleChangedSpy.count(), 0); 2034 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2035 QCOMPARE(playerStatusChangedSpy.count(), 0); 2036 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2037 QCOMPARE(playerErrorChangedSpy.count(), 0); 2038 QCOMPARE(persistentStateChangedSpy.count(), 0); 2039 QCOMPARE(playerPlaySpy.count(), 0); 2040 QCOMPARE(playerPauseSpy.count(), 0); 2041 QCOMPARE(playerStopSpy.count(), 0); 2042 QCOMPARE(skipNextTrackSpy.count(), 0); 2043 QCOMPARE(seekSpy.count(), 0); 2044 2045 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 2046 2047 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 2048 2049 QCOMPARE(currentTrackChangedSpy.count(), 1); 2050 QCOMPARE(playListModelChangedSpy.count(), 1); 2051 QCOMPARE(playerSourceChangedSpy.count(), 2); 2052 QCOMPARE(urlRoleChangedSpy.count(), 1); 2053 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2054 QCOMPARE(playerStatusChangedSpy.count(), 0); 2055 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2056 QCOMPARE(playerErrorChangedSpy.count(), 0); 2057 QCOMPARE(persistentStateChangedSpy.count(), 0); 2058 QCOMPARE(playerPlaySpy.count(), 0); 2059 QCOMPARE(playerPauseSpy.count(), 0); 2060 QCOMPARE(playerStopSpy.count(), 0); 2061 QCOMPARE(skipNextTrackSpy.count(), 0); 2062 QCOMPARE(seekSpy.count(), 0); 2063 2064 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 2065 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 2066 2067 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 2068 2069 QCOMPARE(currentTrackChangedSpy.count(), 1); 2070 QCOMPARE(playListModelChangedSpy.count(), 1); 2071 QCOMPARE(playerSourceChangedSpy.count(), 2); 2072 QCOMPARE(urlRoleChangedSpy.count(), 1); 2073 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2074 QCOMPARE(playerStatusChangedSpy.count(), 0); 2075 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2076 QCOMPARE(playerErrorChangedSpy.count(), 0); 2077 QCOMPARE(persistentStateChangedSpy.count(), 0); 2078 QCOMPARE(playerPlaySpy.count(), 0); 2079 QCOMPARE(playerPauseSpy.count(), 0); 2080 QCOMPARE(playerStopSpy.count(), 0); 2081 QCOMPARE(skipNextTrackSpy.count(), 0); 2082 QCOMPARE(seekSpy.count(), 0); 2083 2084 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 2085 2086 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 2087 2088 QCOMPARE(currentTrackChangedSpy.count(), 1); 2089 QCOMPARE(playListModelChangedSpy.count(), 1); 2090 QCOMPARE(playerSourceChangedSpy.count(), 2); 2091 QCOMPARE(urlRoleChangedSpy.count(), 1); 2092 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2093 QCOMPARE(playerStatusChangedSpy.count(), 1); 2094 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2095 QCOMPARE(playerErrorChangedSpy.count(), 0); 2096 QCOMPARE(persistentStateChangedSpy.count(), 0); 2097 QCOMPARE(playerPlaySpy.count(), 0); 2098 QCOMPARE(playerPauseSpy.count(), 0); 2099 QCOMPARE(playerStopSpy.count(), 0); 2100 QCOMPARE(skipNextTrackSpy.count(), 0); 2101 QCOMPARE(seekSpy.count(), 0); 2102 2103 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 2104 2105 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 2106 2107 QCOMPARE(currentTrackChangedSpy.count(), 1); 2108 QCOMPARE(playListModelChangedSpy.count(), 1); 2109 QCOMPARE(playerSourceChangedSpy.count(), 2); 2110 QCOMPARE(urlRoleChangedSpy.count(), 1); 2111 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2112 QCOMPARE(playerStatusChangedSpy.count(), 1); 2113 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2114 QCOMPARE(playerErrorChangedSpy.count(), 0); 2115 QCOMPARE(persistentStateChangedSpy.count(), 0); 2116 QCOMPARE(playerPlaySpy.count(), 0); 2117 QCOMPARE(playerPauseSpy.count(), 0); 2118 QCOMPARE(playerStopSpy.count(), 0); 2119 QCOMPARE(skipNextTrackSpy.count(), 0); 2120 QCOMPARE(seekSpy.count(), 0); 2121 2122 myPlayer.setPlayerError(QMediaPlayer::NoError); 2123 2124 QCOMPARE(currentTrackChangedSpy.count(), 1); 2125 QCOMPARE(playListModelChangedSpy.count(), 1); 2126 QCOMPARE(playerSourceChangedSpy.count(), 2); 2127 QCOMPARE(urlRoleChangedSpy.count(), 1); 2128 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2129 QCOMPARE(playerStatusChangedSpy.count(), 1); 2130 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2131 QCOMPARE(playerErrorChangedSpy.count(), 0); 2132 QCOMPARE(persistentStateChangedSpy.count(), 0); 2133 QCOMPARE(playerPlaySpy.count(), 0); 2134 QCOMPARE(playerPauseSpy.count(), 0); 2135 QCOMPARE(playerStopSpy.count(), 0); 2136 QCOMPARE(skipNextTrackSpy.count(), 0); 2137 QCOMPARE(seekSpy.count(), 0); 2138 2139 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 2140 2141 QCOMPARE(currentTrackChangedSpy.count(), 1); 2142 QCOMPARE(playListModelChangedSpy.count(), 1); 2143 QCOMPARE(playerSourceChangedSpy.count(), 2); 2144 QCOMPARE(urlRoleChangedSpy.count(), 1); 2145 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2146 QCOMPARE(playerStatusChangedSpy.count(), 2); 2147 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2148 QCOMPARE(playerErrorChangedSpy.count(), 0); 2149 QCOMPARE(persistentStateChangedSpy.count(), 0); 2150 QCOMPARE(playerPlaySpy.count(), 0); 2151 QCOMPARE(playerPauseSpy.count(), 0); 2152 QCOMPARE(playerStopSpy.count(), 0); 2153 QCOMPARE(skipNextTrackSpy.count(), 0); 2154 QCOMPARE(seekSpy.count(), 0); 2155 2156 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 2157 2158 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 2159 2160 QCOMPARE(currentTrackChangedSpy.count(), 1); 2161 QCOMPARE(playListModelChangedSpy.count(), 1); 2162 QCOMPARE(playerSourceChangedSpy.count(), 2); 2163 QCOMPARE(urlRoleChangedSpy.count(), 1); 2164 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2165 QCOMPARE(playerStatusChangedSpy.count(), 3); 2166 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2167 QCOMPARE(playerErrorChangedSpy.count(), 0); 2168 QCOMPARE(persistentStateChangedSpy.count(), 0); 2169 QCOMPARE(playerPlaySpy.count(), 0); 2170 QCOMPARE(playerPauseSpy.count(), 0); 2171 QCOMPARE(playerStopSpy.count(), 0); 2172 QCOMPARE(skipNextTrackSpy.count(), 0); 2173 QCOMPARE(seekSpy.count(), 0); 2174 2175 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 2176 2177 myPlayer.playPause(); 2178 2179 QCOMPARE(currentTrackChangedSpy.count(), 1); 2180 QCOMPARE(playListModelChangedSpy.count(), 1); 2181 QCOMPARE(playerSourceChangedSpy.count(), 2); 2182 QCOMPARE(urlRoleChangedSpy.count(), 1); 2183 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2184 QCOMPARE(playerStatusChangedSpy.count(), 3); 2185 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2186 QCOMPARE(playerErrorChangedSpy.count(), 0); 2187 QCOMPARE(persistentStateChangedSpy.count(), 0); 2188 QCOMPARE(playerPlaySpy.count(), 0); 2189 QCOMPARE(playerPauseSpy.count(), 0); 2190 QCOMPARE(playerStopSpy.count(), 0); 2191 QCOMPARE(skipNextTrackSpy.count(), 0); 2192 QCOMPARE(seekSpy.count(), 0); 2193 2194 QCOMPARE(playerPlaySpy.wait(), true); 2195 2196 QCOMPARE(currentTrackChangedSpy.count(), 1); 2197 QCOMPARE(playListModelChangedSpy.count(), 1); 2198 QCOMPARE(playerSourceChangedSpy.count(), 2); 2199 QCOMPARE(urlRoleChangedSpy.count(), 1); 2200 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2201 QCOMPARE(playerStatusChangedSpy.count(), 3); 2202 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2203 QCOMPARE(playerErrorChangedSpy.count(), 0); 2204 QCOMPARE(persistentStateChangedSpy.count(), 0); 2205 QCOMPARE(playerPlaySpy.count(), 1); 2206 QCOMPARE(playerPauseSpy.count(), 0); 2207 QCOMPARE(playerStopSpy.count(), 0); 2208 QCOMPARE(skipNextTrackSpy.count(), 0); 2209 QCOMPARE(seekSpy.count(), 0); 2210 2211 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 2212 2213 QCOMPARE(currentTrackChangedSpy.count(), 1); 2214 QCOMPARE(playListModelChangedSpy.count(), 1); 2215 QCOMPARE(playerSourceChangedSpy.count(), 2); 2216 QCOMPARE(urlRoleChangedSpy.count(), 1); 2217 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2218 QCOMPARE(playerStatusChangedSpy.count(), 3); 2219 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 2220 QCOMPARE(playerErrorChangedSpy.count(), 0); 2221 QCOMPARE(persistentStateChangedSpy.count(), 0); 2222 QCOMPARE(playerPlaySpy.count(), 1); 2223 QCOMPARE(playerPauseSpy.count(), 0); 2224 QCOMPARE(playerStopSpy.count(), 0); 2225 QCOMPARE(skipNextTrackSpy.count(), 0); 2226 QCOMPARE(seekSpy.count(), 0); 2227 2228 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 2229 2230 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 2231 2232 QCOMPARE(currentTrackChangedSpy.count(), 1); 2233 QCOMPARE(playListModelChangedSpy.count(), 1); 2234 QCOMPARE(playerSourceChangedSpy.count(), 2); 2235 QCOMPARE(urlRoleChangedSpy.count(), 1); 2236 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2237 QCOMPARE(playerStatusChangedSpy.count(), 4); 2238 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 2239 QCOMPARE(playerErrorChangedSpy.count(), 0); 2240 QCOMPARE(persistentStateChangedSpy.count(), 0); 2241 QCOMPARE(playerPlaySpy.count(), 1); 2242 QCOMPARE(playerPauseSpy.count(), 0); 2243 QCOMPARE(playerStopSpy.count(), 0); 2244 QCOMPARE(skipNextTrackSpy.count(), 0); 2245 QCOMPARE(seekSpy.count(), 0); 2246 2247 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 2248 2249 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 2250 2251 QCOMPARE(currentTrackChangedSpy.count(), 1); 2252 QCOMPARE(playListModelChangedSpy.count(), 1); 2253 QCOMPARE(playerSourceChangedSpy.count(), 2); 2254 QCOMPARE(urlRoleChangedSpy.count(), 1); 2255 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2256 QCOMPARE(playerStatusChangedSpy.count(), 4); 2257 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2258 QCOMPARE(playerErrorChangedSpy.count(), 0); 2259 QCOMPARE(persistentStateChangedSpy.count(), 0); 2260 QCOMPARE(playerPlaySpy.count(), 1); 2261 QCOMPARE(playerPauseSpy.count(), 0); 2262 QCOMPARE(playerStopSpy.count(), 0); 2263 QCOMPARE(skipNextTrackSpy.count(), 0); 2264 QCOMPARE(seekSpy.count(), 0); 2265 2266 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 2267 2268 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 2269 2270 QCOMPARE(currentTrackChangedSpy.count(), 1); 2271 QCOMPARE(playListModelChangedSpy.count(), 1); 2272 QCOMPARE(playerSourceChangedSpy.count(), 2); 2273 QCOMPARE(urlRoleChangedSpy.count(), 1); 2274 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2275 QCOMPARE(playerStatusChangedSpy.count(), 5); 2276 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2277 QCOMPARE(playerErrorChangedSpy.count(), 0); 2278 QCOMPARE(persistentStateChangedSpy.count(), 0); 2279 QCOMPARE(playerPlaySpy.count(), 1); 2280 QCOMPARE(playerPauseSpy.count(), 0); 2281 QCOMPARE(playerStopSpy.count(), 0); 2282 QCOMPARE(skipNextTrackSpy.count(), 0); 2283 QCOMPARE(seekSpy.count(), 0); 2284 2285 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 2286 2287 QCOMPARE(skipNextTrackSpy.wait(100), true); 2288 2289 QCOMPARE(currentTrackChangedSpy.count(), 1); 2290 QCOMPARE(playListModelChangedSpy.count(), 1); 2291 QCOMPARE(playerSourceChangedSpy.count(), 2); 2292 QCOMPARE(urlRoleChangedSpy.count(), 1); 2293 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2294 QCOMPARE(playerStatusChangedSpy.count(), 5); 2295 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2296 QCOMPARE(playerErrorChangedSpy.count(), 0); 2297 QCOMPARE(persistentStateChangedSpy.count(), 0); 2298 QCOMPARE(playerPlaySpy.count(), 1); 2299 QCOMPARE(playerPauseSpy.count(), 0); 2300 QCOMPARE(playerStopSpy.count(), 0); 2301 QCOMPARE(skipNextTrackSpy.count(), 1); 2302 QCOMPARE(seekSpy.count(), 0); 2303 2304 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 2305 2306 QCOMPARE(currentTrackChangedSpy.count(), 2); 2307 QCOMPARE(playListModelChangedSpy.count(), 1); 2308 QCOMPARE(playerSourceChangedSpy.count(), 3); 2309 QCOMPARE(urlRoleChangedSpy.count(), 1); 2310 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2311 QCOMPARE(playerStatusChangedSpy.count(), 5); 2312 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2313 QCOMPARE(playerErrorChangedSpy.count(), 0); 2314 QCOMPARE(persistentStateChangedSpy.count(), 0); 2315 QCOMPARE(playerPlaySpy.count(), 1); 2316 QCOMPARE(playerPauseSpy.count(), 0); 2317 QCOMPARE(playerStopSpy.count(), 0); 2318 QCOMPARE(skipNextTrackSpy.count(), 1); 2319 QCOMPARE(seekSpy.count(), 0); 2320 2321 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 2322 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 2323 2324 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 2325 2326 QCOMPARE(currentTrackChangedSpy.count(), 2); 2327 QCOMPARE(playListModelChangedSpy.count(), 1); 2328 QCOMPARE(playerSourceChangedSpy.count(), 3); 2329 QCOMPARE(urlRoleChangedSpy.count(), 1); 2330 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2331 QCOMPARE(playerStatusChangedSpy.count(), 6); 2332 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2333 QCOMPARE(playerErrorChangedSpy.count(), 0); 2334 QCOMPARE(persistentStateChangedSpy.count(), 0); 2335 QCOMPARE(playerPlaySpy.count(), 1); 2336 QCOMPARE(playerPauseSpy.count(), 0); 2337 QCOMPARE(playerStopSpy.count(), 0); 2338 QCOMPARE(skipNextTrackSpy.count(), 1); 2339 QCOMPARE(seekSpy.count(), 0); 2340 2341 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 2342 2343 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 2344 2345 QCOMPARE(currentTrackChangedSpy.count(), 2); 2346 QCOMPARE(playListModelChangedSpy.count(), 1); 2347 QCOMPARE(playerSourceChangedSpy.count(), 3); 2348 QCOMPARE(urlRoleChangedSpy.count(), 1); 2349 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2350 QCOMPARE(playerStatusChangedSpy.count(), 7); 2351 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2352 QCOMPARE(playerErrorChangedSpy.count(), 0); 2353 QCOMPARE(persistentStateChangedSpy.count(), 0); 2354 QCOMPARE(playerPlaySpy.count(), 1); 2355 QCOMPARE(playerPauseSpy.count(), 0); 2356 QCOMPARE(playerStopSpy.count(), 0); 2357 QCOMPARE(skipNextTrackSpy.count(), 1); 2358 QCOMPARE(seekSpy.count(), 0); 2359 2360 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 2361 2362 QCOMPARE(playerPlaySpy.wait(100), true); 2363 2364 QCOMPARE(currentTrackChangedSpy.count(), 2); 2365 QCOMPARE(playListModelChangedSpy.count(), 1); 2366 QCOMPARE(playerSourceChangedSpy.count(), 3); 2367 QCOMPARE(urlRoleChangedSpy.count(), 1); 2368 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2369 QCOMPARE(playerStatusChangedSpy.count(), 7); 2370 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2371 QCOMPARE(playerErrorChangedSpy.count(), 0); 2372 QCOMPARE(persistentStateChangedSpy.count(), 0); 2373 QCOMPARE(playerPlaySpy.count(), 2); 2374 QCOMPARE(playerPauseSpy.count(), 0); 2375 QCOMPARE(playerStopSpy.count(), 0); 2376 QCOMPARE(skipNextTrackSpy.count(), 1); 2377 QCOMPARE(seekSpy.count(), 0); 2378 2379 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 2380 2381 QCOMPARE(currentTrackChangedSpy.count(), 2); 2382 QCOMPARE(playListModelChangedSpy.count(), 1); 2383 QCOMPARE(playerSourceChangedSpy.count(), 3); 2384 QCOMPARE(urlRoleChangedSpy.count(), 1); 2385 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2386 QCOMPARE(playerStatusChangedSpy.count(), 7); 2387 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 2388 QCOMPARE(playerErrorChangedSpy.count(), 0); 2389 QCOMPARE(persistentStateChangedSpy.count(), 0); 2390 QCOMPARE(playerPlaySpy.count(), 2); 2391 QCOMPARE(playerPauseSpy.count(), 0); 2392 QCOMPARE(playerStopSpy.count(), 0); 2393 QCOMPARE(skipNextTrackSpy.count(), 1); 2394 QCOMPARE(seekSpy.count(), 0); 2395 2396 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 2397 2398 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 2399 2400 QCOMPARE(currentTrackChangedSpy.count(), 2); 2401 QCOMPARE(playListModelChangedSpy.count(), 1); 2402 QCOMPARE(playerSourceChangedSpy.count(), 3); 2403 QCOMPARE(urlRoleChangedSpy.count(), 1); 2404 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2405 QCOMPARE(playerStatusChangedSpy.count(), 8); 2406 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 2407 QCOMPARE(playerErrorChangedSpy.count(), 0); 2408 QCOMPARE(persistentStateChangedSpy.count(), 0); 2409 QCOMPARE(playerPlaySpy.count(), 2); 2410 QCOMPARE(playerPauseSpy.count(), 0); 2411 QCOMPARE(playerStopSpy.count(), 0); 2412 QCOMPARE(skipNextTrackSpy.count(), 1); 2413 QCOMPARE(seekSpy.count(), 0); 2414 2415 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 2416 2417 myPlayer.setCurrentTrack(myPlayList.index(2, 0)); 2418 2419 QCOMPARE(currentTrackChangedSpy.count(), 3); 2420 QCOMPARE(playListModelChangedSpy.count(), 1); 2421 QCOMPARE(playerSourceChangedSpy.count(), 3); 2422 QCOMPARE(urlRoleChangedSpy.count(), 1); 2423 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2424 QCOMPARE(playerStatusChangedSpy.count(), 8); 2425 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 2426 QCOMPARE(playerErrorChangedSpy.count(), 0); 2427 QCOMPARE(persistentStateChangedSpy.count(), 0); 2428 QCOMPARE(playerPlaySpy.count(), 2); 2429 QCOMPARE(playerPauseSpy.count(), 0); 2430 QCOMPARE(playerStopSpy.count(), 0); 2431 QCOMPARE(skipNextTrackSpy.count(), 1); 2432 QCOMPARE(seekSpy.count(), 0); 2433 2434 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(2, 0))); 2435 2436 QCOMPARE(playerStopSpy.wait(100), true); 2437 2438 QCOMPARE(currentTrackChangedSpy.count(), 3); 2439 QCOMPARE(playListModelChangedSpy.count(), 1); 2440 QCOMPARE(playerSourceChangedSpy.count(), 3); 2441 QCOMPARE(urlRoleChangedSpy.count(), 1); 2442 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2443 QCOMPARE(playerStatusChangedSpy.count(), 8); 2444 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 2445 QCOMPARE(playerErrorChangedSpy.count(), 0); 2446 QCOMPARE(persistentStateChangedSpy.count(), 0); 2447 QCOMPARE(playerPlaySpy.count(), 2); 2448 QCOMPARE(playerPauseSpy.count(), 0); 2449 QCOMPARE(playerStopSpy.count(), 1); 2450 QCOMPARE(skipNextTrackSpy.count(), 1); 2451 QCOMPARE(seekSpy.count(), 0); 2452 2453 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 2454 2455 QCOMPARE(currentTrackChangedSpy.count(), 3); 2456 QCOMPARE(playListModelChangedSpy.count(), 1); 2457 QCOMPARE(playerSourceChangedSpy.count(), 4); 2458 QCOMPARE(urlRoleChangedSpy.count(), 1); 2459 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2460 QCOMPARE(playerStatusChangedSpy.count(), 8); 2461 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 2462 QCOMPARE(playerErrorChangedSpy.count(), 0); 2463 QCOMPARE(persistentStateChangedSpy.count(), 0); 2464 QCOMPARE(playerPlaySpy.count(), 2); 2465 QCOMPARE(playerPauseSpy.count(), 0); 2466 QCOMPARE(playerStopSpy.count(), 1); 2467 QCOMPARE(skipNextTrackSpy.count(), 1); 2468 QCOMPARE(seekSpy.count(), 0); 2469 2470 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///3.mp3"))); 2471 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 2472 2473 QCOMPARE(skipNextTrackSpy.wait(100), false); 2474 2475 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 2476 2477 QCOMPARE(currentTrackChangedSpy.count(), 3); 2478 QCOMPARE(playListModelChangedSpy.count(), 1); 2479 QCOMPARE(playerSourceChangedSpy.count(), 4); 2480 QCOMPARE(urlRoleChangedSpy.count(), 1); 2481 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2482 QCOMPARE(playerStatusChangedSpy.count(), 9); 2483 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 2484 QCOMPARE(playerErrorChangedSpy.count(), 0); 2485 QCOMPARE(persistentStateChangedSpy.count(), 0); 2486 QCOMPARE(playerPlaySpy.count(), 2); 2487 QCOMPARE(playerPauseSpy.count(), 0); 2488 QCOMPARE(playerStopSpy.count(), 1); 2489 QCOMPARE(skipNextTrackSpy.count(), 1); 2490 QCOMPARE(seekSpy.count(), 0); 2491 2492 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 2493 2494 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 2495 2496 QCOMPARE(currentTrackChangedSpy.count(), 3); 2497 QCOMPARE(playListModelChangedSpy.count(), 1); 2498 QCOMPARE(playerSourceChangedSpy.count(), 4); 2499 QCOMPARE(urlRoleChangedSpy.count(), 1); 2500 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2501 QCOMPARE(playerStatusChangedSpy.count(), 10); 2502 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 2503 QCOMPARE(playerErrorChangedSpy.count(), 0); 2504 QCOMPARE(persistentStateChangedSpy.count(), 0); 2505 QCOMPARE(playerPlaySpy.count(), 2); 2506 QCOMPARE(playerPauseSpy.count(), 0); 2507 QCOMPARE(playerStopSpy.count(), 1); 2508 QCOMPARE(skipNextTrackSpy.count(), 1); 2509 QCOMPARE(seekSpy.count(), 0); 2510 2511 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 2512 2513 QCOMPARE(playerPlaySpy.wait(100), true); 2514 2515 QCOMPARE(currentTrackChangedSpy.count(), 3); 2516 QCOMPARE(playListModelChangedSpy.count(), 1); 2517 QCOMPARE(playerSourceChangedSpy.count(), 4); 2518 QCOMPARE(urlRoleChangedSpy.count(), 1); 2519 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2520 QCOMPARE(playerStatusChangedSpy.count(), 10); 2521 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 2522 QCOMPARE(playerErrorChangedSpy.count(), 0); 2523 QCOMPARE(persistentStateChangedSpy.count(), 0); 2524 QCOMPARE(playerPlaySpy.count(), 3); 2525 QCOMPARE(playerPauseSpy.count(), 0); 2526 QCOMPARE(playerStopSpy.count(), 1); 2527 QCOMPARE(skipNextTrackSpy.count(), 1); 2528 QCOMPARE(seekSpy.count(), 0); 2529 2530 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 2531 2532 QCOMPARE(currentTrackChangedSpy.count(), 3); 2533 QCOMPARE(playListModelChangedSpy.count(), 1); 2534 QCOMPARE(playerSourceChangedSpy.count(), 4); 2535 QCOMPARE(urlRoleChangedSpy.count(), 1); 2536 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2537 QCOMPARE(playerStatusChangedSpy.count(), 10); 2538 QCOMPARE(playerPlaybackStateChangedSpy.count(), 5); 2539 QCOMPARE(playerErrorChangedSpy.count(), 0); 2540 QCOMPARE(persistentStateChangedSpy.count(), 0); 2541 QCOMPARE(playerPlaySpy.count(), 3); 2542 QCOMPARE(playerPauseSpy.count(), 0); 2543 QCOMPARE(playerStopSpy.count(), 1); 2544 QCOMPARE(skipNextTrackSpy.count(), 1); 2545 QCOMPARE(seekSpy.count(), 0); 2546 2547 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 2548 } 2549 2550 void ManageAudioPlayerTest::playTrackAndskipPreviousTrack() 2551 { 2552 Elisa::ElisaConfiguration::self()->setDefaults(); 2553 ManageAudioPlayer myPlayer; 2554 QStandardItemModel myPlayList; 2555 2556 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 2557 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 2558 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 2559 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 2560 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 2561 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 2562 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 2563 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 2564 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 2565 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 2566 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 2567 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 2568 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 2569 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 2570 2571 myPlayList.appendRow(new QStandardItem); 2572 myPlayList.appendRow(new QStandardItem); 2573 myPlayList.appendRow(new QStandardItem); 2574 2575 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 2576 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 2577 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 2578 2579 QCOMPARE(currentTrackChangedSpy.count(), 0); 2580 QCOMPARE(playListModelChangedSpy.count(), 0); 2581 QCOMPARE(playerSourceChangedSpy.count(), 0); 2582 QCOMPARE(urlRoleChangedSpy.count(), 0); 2583 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2584 QCOMPARE(playerStatusChangedSpy.count(), 0); 2585 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2586 QCOMPARE(playerErrorChangedSpy.count(), 0); 2587 QCOMPARE(persistentStateChangedSpy.count(), 0); 2588 QCOMPARE(playerPlaySpy.count(), 0); 2589 QCOMPARE(playerPauseSpy.count(), 0); 2590 QCOMPARE(playerStopSpy.count(), 0); 2591 QCOMPARE(skipNextTrackSpy.count(), 0); 2592 QCOMPARE(seekSpy.count(), 0); 2593 2594 myPlayer.setPlayListModel(&myPlayList); 2595 2596 QCOMPARE(currentTrackChangedSpy.count(), 0); 2597 QCOMPARE(playListModelChangedSpy.count(), 1); 2598 QCOMPARE(playerSourceChangedSpy.count(), 0); 2599 QCOMPARE(urlRoleChangedSpy.count(), 0); 2600 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2601 QCOMPARE(playerStatusChangedSpy.count(), 0); 2602 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2603 QCOMPARE(playerErrorChangedSpy.count(), 0); 2604 QCOMPARE(persistentStateChangedSpy.count(), 0); 2605 QCOMPARE(playerPlaySpy.count(), 0); 2606 QCOMPARE(playerPauseSpy.count(), 0); 2607 QCOMPARE(playerStopSpy.count(), 0); 2608 QCOMPARE(skipNextTrackSpy.count(), 0); 2609 QCOMPARE(seekSpy.count(), 0); 2610 2611 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 2612 2613 QCOMPARE(currentTrackChangedSpy.count(), 1); 2614 QCOMPARE(playListModelChangedSpy.count(), 1); 2615 QCOMPARE(playerSourceChangedSpy.count(), 1); 2616 QCOMPARE(urlRoleChangedSpy.count(), 0); 2617 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2618 QCOMPARE(playerStatusChangedSpy.count(), 0); 2619 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2620 QCOMPARE(playerErrorChangedSpy.count(), 0); 2621 QCOMPARE(persistentStateChangedSpy.count(), 0); 2622 QCOMPARE(playerPlaySpy.count(), 0); 2623 QCOMPARE(playerPauseSpy.count(), 0); 2624 QCOMPARE(playerStopSpy.count(), 0); 2625 QCOMPARE(skipNextTrackSpy.count(), 0); 2626 QCOMPARE(seekSpy.count(), 0); 2627 2628 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 2629 2630 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 2631 2632 QCOMPARE(currentTrackChangedSpy.count(), 1); 2633 QCOMPARE(playListModelChangedSpy.count(), 1); 2634 QCOMPARE(playerSourceChangedSpy.count(), 2); 2635 QCOMPARE(urlRoleChangedSpy.count(), 1); 2636 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 2637 QCOMPARE(playerStatusChangedSpy.count(), 0); 2638 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2639 QCOMPARE(playerErrorChangedSpy.count(), 0); 2640 QCOMPARE(persistentStateChangedSpy.count(), 0); 2641 QCOMPARE(playerPlaySpy.count(), 0); 2642 QCOMPARE(playerPauseSpy.count(), 0); 2643 QCOMPARE(playerStopSpy.count(), 0); 2644 QCOMPARE(skipNextTrackSpy.count(), 0); 2645 QCOMPARE(seekSpy.count(), 0); 2646 2647 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 2648 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 2649 2650 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 2651 2652 QCOMPARE(currentTrackChangedSpy.count(), 1); 2653 QCOMPARE(playListModelChangedSpy.count(), 1); 2654 QCOMPARE(playerSourceChangedSpy.count(), 2); 2655 QCOMPARE(urlRoleChangedSpy.count(), 1); 2656 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2657 QCOMPARE(playerStatusChangedSpy.count(), 0); 2658 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2659 QCOMPARE(playerErrorChangedSpy.count(), 0); 2660 QCOMPARE(persistentStateChangedSpy.count(), 0); 2661 QCOMPARE(playerPlaySpy.count(), 0); 2662 QCOMPARE(playerPauseSpy.count(), 0); 2663 QCOMPARE(playerStopSpy.count(), 0); 2664 QCOMPARE(skipNextTrackSpy.count(), 0); 2665 QCOMPARE(seekSpy.count(), 0); 2666 2667 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 2668 2669 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 2670 2671 QCOMPARE(currentTrackChangedSpy.count(), 1); 2672 QCOMPARE(playListModelChangedSpy.count(), 1); 2673 QCOMPARE(playerSourceChangedSpy.count(), 2); 2674 QCOMPARE(urlRoleChangedSpy.count(), 1); 2675 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2676 QCOMPARE(playerStatusChangedSpy.count(), 1); 2677 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2678 QCOMPARE(playerErrorChangedSpy.count(), 0); 2679 QCOMPARE(persistentStateChangedSpy.count(), 0); 2680 QCOMPARE(playerPlaySpy.count(), 0); 2681 QCOMPARE(playerPauseSpy.count(), 0); 2682 QCOMPARE(playerStopSpy.count(), 0); 2683 QCOMPARE(skipNextTrackSpy.count(), 0); 2684 QCOMPARE(seekSpy.count(), 0); 2685 2686 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 2687 2688 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 2689 2690 QCOMPARE(currentTrackChangedSpy.count(), 1); 2691 QCOMPARE(playListModelChangedSpy.count(), 1); 2692 QCOMPARE(playerSourceChangedSpy.count(), 2); 2693 QCOMPARE(urlRoleChangedSpy.count(), 1); 2694 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2695 QCOMPARE(playerStatusChangedSpy.count(), 1); 2696 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2697 QCOMPARE(playerErrorChangedSpy.count(), 0); 2698 QCOMPARE(persistentStateChangedSpy.count(), 0); 2699 QCOMPARE(playerPlaySpy.count(), 0); 2700 QCOMPARE(playerPauseSpy.count(), 0); 2701 QCOMPARE(playerStopSpy.count(), 0); 2702 QCOMPARE(skipNextTrackSpy.count(), 0); 2703 QCOMPARE(seekSpy.count(), 0); 2704 2705 myPlayer.setPlayerError(QMediaPlayer::NoError); 2706 2707 QCOMPARE(currentTrackChangedSpy.count(), 1); 2708 QCOMPARE(playListModelChangedSpy.count(), 1); 2709 QCOMPARE(playerSourceChangedSpy.count(), 2); 2710 QCOMPARE(urlRoleChangedSpy.count(), 1); 2711 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2712 QCOMPARE(playerStatusChangedSpy.count(), 1); 2713 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2714 QCOMPARE(playerErrorChangedSpy.count(), 0); 2715 QCOMPARE(persistentStateChangedSpy.count(), 0); 2716 QCOMPARE(playerPlaySpy.count(), 0); 2717 QCOMPARE(playerPauseSpy.count(), 0); 2718 QCOMPARE(playerStopSpy.count(), 0); 2719 QCOMPARE(skipNextTrackSpy.count(), 0); 2720 QCOMPARE(seekSpy.count(), 0); 2721 2722 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 2723 2724 QCOMPARE(currentTrackChangedSpy.count(), 1); 2725 QCOMPARE(playListModelChangedSpy.count(), 1); 2726 QCOMPARE(playerSourceChangedSpy.count(), 2); 2727 QCOMPARE(urlRoleChangedSpy.count(), 1); 2728 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2729 QCOMPARE(playerStatusChangedSpy.count(), 2); 2730 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2731 QCOMPARE(playerErrorChangedSpy.count(), 0); 2732 QCOMPARE(persistentStateChangedSpy.count(), 0); 2733 QCOMPARE(playerPlaySpy.count(), 0); 2734 QCOMPARE(playerPauseSpy.count(), 0); 2735 QCOMPARE(playerStopSpy.count(), 0); 2736 QCOMPARE(skipNextTrackSpy.count(), 0); 2737 QCOMPARE(seekSpy.count(), 0); 2738 2739 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 2740 2741 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 2742 2743 QCOMPARE(currentTrackChangedSpy.count(), 1); 2744 QCOMPARE(playListModelChangedSpy.count(), 1); 2745 QCOMPARE(playerSourceChangedSpy.count(), 2); 2746 QCOMPARE(urlRoleChangedSpy.count(), 1); 2747 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2748 QCOMPARE(playerStatusChangedSpy.count(), 3); 2749 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2750 QCOMPARE(playerErrorChangedSpy.count(), 0); 2751 QCOMPARE(persistentStateChangedSpy.count(), 0); 2752 QCOMPARE(playerPlaySpy.count(), 0); 2753 QCOMPARE(playerPauseSpy.count(), 0); 2754 QCOMPARE(playerStopSpy.count(), 0); 2755 QCOMPARE(skipNextTrackSpy.count(), 0); 2756 QCOMPARE(seekSpy.count(), 0); 2757 2758 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 2759 2760 myPlayer.playPause(); 2761 2762 QCOMPARE(currentTrackChangedSpy.count(), 1); 2763 QCOMPARE(playListModelChangedSpy.count(), 1); 2764 QCOMPARE(playerSourceChangedSpy.count(), 2); 2765 QCOMPARE(urlRoleChangedSpy.count(), 1); 2766 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2767 QCOMPARE(playerStatusChangedSpy.count(), 3); 2768 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2769 QCOMPARE(playerErrorChangedSpy.count(), 0); 2770 QCOMPARE(persistentStateChangedSpy.count(), 0); 2771 QCOMPARE(playerPlaySpy.count(), 0); 2772 QCOMPARE(playerPauseSpy.count(), 0); 2773 QCOMPARE(playerStopSpy.count(), 0); 2774 QCOMPARE(skipNextTrackSpy.count(), 0); 2775 QCOMPARE(seekSpy.count(), 0); 2776 2777 QCOMPARE(playerPlaySpy.wait(), true); 2778 2779 QCOMPARE(currentTrackChangedSpy.count(), 1); 2780 QCOMPARE(playListModelChangedSpy.count(), 1); 2781 QCOMPARE(playerSourceChangedSpy.count(), 2); 2782 QCOMPARE(urlRoleChangedSpy.count(), 1); 2783 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2784 QCOMPARE(playerStatusChangedSpy.count(), 3); 2785 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 2786 QCOMPARE(playerErrorChangedSpy.count(), 0); 2787 QCOMPARE(persistentStateChangedSpy.count(), 0); 2788 QCOMPARE(playerPlaySpy.count(), 1); 2789 QCOMPARE(playerPauseSpy.count(), 0); 2790 QCOMPARE(playerStopSpy.count(), 0); 2791 QCOMPARE(skipNextTrackSpy.count(), 0); 2792 QCOMPARE(seekSpy.count(), 0); 2793 2794 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 2795 2796 QCOMPARE(currentTrackChangedSpy.count(), 1); 2797 QCOMPARE(playListModelChangedSpy.count(), 1); 2798 QCOMPARE(playerSourceChangedSpy.count(), 2); 2799 QCOMPARE(urlRoleChangedSpy.count(), 1); 2800 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2801 QCOMPARE(playerStatusChangedSpy.count(), 3); 2802 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 2803 QCOMPARE(playerErrorChangedSpy.count(), 0); 2804 QCOMPARE(persistentStateChangedSpy.count(), 0); 2805 QCOMPARE(playerPlaySpy.count(), 1); 2806 QCOMPARE(playerPauseSpy.count(), 0); 2807 QCOMPARE(playerStopSpy.count(), 0); 2808 QCOMPARE(skipNextTrackSpy.count(), 0); 2809 QCOMPARE(seekSpy.count(), 0); 2810 2811 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 2812 2813 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 2814 2815 QCOMPARE(currentTrackChangedSpy.count(), 1); 2816 QCOMPARE(playListModelChangedSpy.count(), 1); 2817 QCOMPARE(playerSourceChangedSpy.count(), 2); 2818 QCOMPARE(urlRoleChangedSpy.count(), 1); 2819 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2820 QCOMPARE(playerStatusChangedSpy.count(), 4); 2821 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 2822 QCOMPARE(playerErrorChangedSpy.count(), 0); 2823 QCOMPARE(persistentStateChangedSpy.count(), 0); 2824 QCOMPARE(playerPlaySpy.count(), 1); 2825 QCOMPARE(playerPauseSpy.count(), 0); 2826 QCOMPARE(playerStopSpy.count(), 0); 2827 QCOMPARE(skipNextTrackSpy.count(), 0); 2828 QCOMPARE(seekSpy.count(), 0); 2829 2830 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 2831 2832 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 2833 2834 QCOMPARE(currentTrackChangedSpy.count(), 1); 2835 QCOMPARE(playListModelChangedSpy.count(), 1); 2836 QCOMPARE(playerSourceChangedSpy.count(), 2); 2837 QCOMPARE(urlRoleChangedSpy.count(), 1); 2838 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2839 QCOMPARE(playerStatusChangedSpy.count(), 4); 2840 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2841 QCOMPARE(playerErrorChangedSpy.count(), 0); 2842 QCOMPARE(persistentStateChangedSpy.count(), 0); 2843 QCOMPARE(playerPlaySpy.count(), 1); 2844 QCOMPARE(playerPauseSpy.count(), 0); 2845 QCOMPARE(playerStopSpy.count(), 0); 2846 QCOMPARE(skipNextTrackSpy.count(), 0); 2847 QCOMPARE(seekSpy.count(), 0); 2848 2849 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 2850 2851 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 2852 2853 QCOMPARE(currentTrackChangedSpy.count(), 1); 2854 QCOMPARE(playListModelChangedSpy.count(), 1); 2855 QCOMPARE(playerSourceChangedSpy.count(), 2); 2856 QCOMPARE(urlRoleChangedSpy.count(), 1); 2857 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2858 QCOMPARE(playerStatusChangedSpy.count(), 5); 2859 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2860 QCOMPARE(playerErrorChangedSpy.count(), 0); 2861 QCOMPARE(persistentStateChangedSpy.count(), 0); 2862 QCOMPARE(playerPlaySpy.count(), 1); 2863 QCOMPARE(playerPauseSpy.count(), 0); 2864 QCOMPARE(playerStopSpy.count(), 0); 2865 QCOMPARE(skipNextTrackSpy.count(), 0); 2866 QCOMPARE(seekSpy.count(), 0); 2867 2868 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 2869 2870 QCOMPARE(skipNextTrackSpy.wait(100), true); 2871 2872 QCOMPARE(currentTrackChangedSpy.count(), 1); 2873 QCOMPARE(playListModelChangedSpy.count(), 1); 2874 QCOMPARE(playerSourceChangedSpy.count(), 2); 2875 QCOMPARE(urlRoleChangedSpy.count(), 1); 2876 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2877 QCOMPARE(playerStatusChangedSpy.count(), 5); 2878 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2879 QCOMPARE(playerErrorChangedSpy.count(), 0); 2880 QCOMPARE(persistentStateChangedSpy.count(), 0); 2881 QCOMPARE(playerPlaySpy.count(), 1); 2882 QCOMPARE(playerPauseSpy.count(), 0); 2883 QCOMPARE(playerStopSpy.count(), 0); 2884 QCOMPARE(skipNextTrackSpy.count(), 1); 2885 QCOMPARE(seekSpy.count(), 0); 2886 2887 myPlayer.setCurrentTrack(myPlayList.index(2, 0)); 2888 2889 QCOMPARE(currentTrackChangedSpy.count(), 2); 2890 QCOMPARE(playListModelChangedSpy.count(), 1); 2891 QCOMPARE(playerSourceChangedSpy.count(), 3); 2892 QCOMPARE(urlRoleChangedSpy.count(), 1); 2893 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2894 QCOMPARE(playerStatusChangedSpy.count(), 5); 2895 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2896 QCOMPARE(playerErrorChangedSpy.count(), 0); 2897 QCOMPARE(persistentStateChangedSpy.count(), 0); 2898 QCOMPARE(playerPlaySpy.count(), 1); 2899 QCOMPARE(playerPauseSpy.count(), 0); 2900 QCOMPARE(playerStopSpy.count(), 0); 2901 QCOMPARE(skipNextTrackSpy.count(), 1); 2902 QCOMPARE(seekSpy.count(), 0); 2903 2904 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(2, 0))); 2905 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///3.mp3"))); 2906 2907 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 2908 2909 QCOMPARE(currentTrackChangedSpy.count(), 2); 2910 QCOMPARE(playListModelChangedSpy.count(), 1); 2911 QCOMPARE(playerSourceChangedSpy.count(), 3); 2912 QCOMPARE(urlRoleChangedSpy.count(), 1); 2913 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2914 QCOMPARE(playerStatusChangedSpy.count(), 6); 2915 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2916 QCOMPARE(playerErrorChangedSpy.count(), 0); 2917 QCOMPARE(persistentStateChangedSpy.count(), 0); 2918 QCOMPARE(playerPlaySpy.count(), 1); 2919 QCOMPARE(playerPauseSpy.count(), 0); 2920 QCOMPARE(playerStopSpy.count(), 0); 2921 QCOMPARE(skipNextTrackSpy.count(), 1); 2922 QCOMPARE(seekSpy.count(), 0); 2923 2924 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 2925 2926 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 2927 2928 QCOMPARE(currentTrackChangedSpy.count(), 2); 2929 QCOMPARE(playListModelChangedSpy.count(), 1); 2930 QCOMPARE(playerSourceChangedSpy.count(), 3); 2931 QCOMPARE(urlRoleChangedSpy.count(), 1); 2932 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2933 QCOMPARE(playerStatusChangedSpy.count(), 7); 2934 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2935 QCOMPARE(playerErrorChangedSpy.count(), 0); 2936 QCOMPARE(persistentStateChangedSpy.count(), 0); 2937 QCOMPARE(playerPlaySpy.count(), 1); 2938 QCOMPARE(playerPauseSpy.count(), 0); 2939 QCOMPARE(playerStopSpy.count(), 0); 2940 QCOMPARE(skipNextTrackSpy.count(), 1); 2941 QCOMPARE(seekSpy.count(), 0); 2942 2943 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 2944 2945 QCOMPARE(playerPlaySpy.wait(100), true); 2946 2947 QCOMPARE(currentTrackChangedSpy.count(), 2); 2948 QCOMPARE(playListModelChangedSpy.count(), 1); 2949 QCOMPARE(playerSourceChangedSpy.count(), 3); 2950 QCOMPARE(urlRoleChangedSpy.count(), 1); 2951 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2952 QCOMPARE(playerStatusChangedSpy.count(), 7); 2953 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 2954 QCOMPARE(playerErrorChangedSpy.count(), 0); 2955 QCOMPARE(persistentStateChangedSpy.count(), 0); 2956 QCOMPARE(playerPlaySpy.count(), 2); 2957 QCOMPARE(playerPauseSpy.count(), 0); 2958 QCOMPARE(playerStopSpy.count(), 0); 2959 QCOMPARE(skipNextTrackSpy.count(), 1); 2960 QCOMPARE(seekSpy.count(), 0); 2961 2962 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 2963 2964 QCOMPARE(currentTrackChangedSpy.count(), 2); 2965 QCOMPARE(playListModelChangedSpy.count(), 1); 2966 QCOMPARE(playerSourceChangedSpy.count(), 3); 2967 QCOMPARE(urlRoleChangedSpy.count(), 1); 2968 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2969 QCOMPARE(playerStatusChangedSpy.count(), 7); 2970 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 2971 QCOMPARE(playerErrorChangedSpy.count(), 0); 2972 QCOMPARE(persistentStateChangedSpy.count(), 0); 2973 QCOMPARE(playerPlaySpy.count(), 2); 2974 QCOMPARE(playerPauseSpy.count(), 0); 2975 QCOMPARE(playerStopSpy.count(), 0); 2976 QCOMPARE(skipNextTrackSpy.count(), 1); 2977 QCOMPARE(seekSpy.count(), 0); 2978 2979 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 2980 2981 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 2982 2983 QCOMPARE(currentTrackChangedSpy.count(), 2); 2984 QCOMPARE(playListModelChangedSpy.count(), 1); 2985 QCOMPARE(playerSourceChangedSpy.count(), 3); 2986 QCOMPARE(urlRoleChangedSpy.count(), 1); 2987 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 2988 QCOMPARE(playerStatusChangedSpy.count(), 8); 2989 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 2990 QCOMPARE(playerErrorChangedSpy.count(), 0); 2991 QCOMPARE(persistentStateChangedSpy.count(), 0); 2992 QCOMPARE(playerPlaySpy.count(), 2); 2993 QCOMPARE(playerPauseSpy.count(), 0); 2994 QCOMPARE(playerStopSpy.count(), 0); 2995 QCOMPARE(skipNextTrackSpy.count(), 1); 2996 QCOMPARE(seekSpy.count(), 0); 2997 2998 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 2999 3000 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 3001 3002 QCOMPARE(currentTrackChangedSpy.count(), 3); 3003 QCOMPARE(playListModelChangedSpy.count(), 1); 3004 QCOMPARE(playerSourceChangedSpy.count(), 3); 3005 QCOMPARE(urlRoleChangedSpy.count(), 1); 3006 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3007 QCOMPARE(playerStatusChangedSpy.count(), 8); 3008 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 3009 QCOMPARE(playerErrorChangedSpy.count(), 0); 3010 QCOMPARE(persistentStateChangedSpy.count(), 0); 3011 QCOMPARE(playerPlaySpy.count(), 2); 3012 QCOMPARE(playerPauseSpy.count(), 0); 3013 QCOMPARE(playerStopSpy.count(), 0); 3014 QCOMPARE(skipNextTrackSpy.count(), 1); 3015 QCOMPARE(seekSpy.count(), 0); 3016 3017 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 3018 3019 QCOMPARE(playerStopSpy.wait(100), true); 3020 3021 QCOMPARE(currentTrackChangedSpy.count(), 3); 3022 QCOMPARE(playListModelChangedSpy.count(), 1); 3023 QCOMPARE(playerSourceChangedSpy.count(), 3); 3024 QCOMPARE(urlRoleChangedSpy.count(), 1); 3025 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3026 QCOMPARE(playerStatusChangedSpy.count(), 8); 3027 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 3028 QCOMPARE(playerErrorChangedSpy.count(), 0); 3029 QCOMPARE(persistentStateChangedSpy.count(), 0); 3030 QCOMPARE(playerPlaySpy.count(), 2); 3031 QCOMPARE(playerPauseSpy.count(), 0); 3032 QCOMPARE(playerStopSpy.count(), 1); 3033 QCOMPARE(skipNextTrackSpy.count(), 1); 3034 QCOMPARE(seekSpy.count(), 0); 3035 3036 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 3037 3038 QCOMPARE(currentTrackChangedSpy.count(), 3); 3039 QCOMPARE(playListModelChangedSpy.count(), 1); 3040 QCOMPARE(playerSourceChangedSpy.count(), 4); 3041 QCOMPARE(urlRoleChangedSpy.count(), 1); 3042 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3043 QCOMPARE(playerStatusChangedSpy.count(), 8); 3044 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3045 QCOMPARE(playerErrorChangedSpy.count(), 0); 3046 QCOMPARE(persistentStateChangedSpy.count(), 0); 3047 QCOMPARE(playerPlaySpy.count(), 2); 3048 QCOMPARE(playerPauseSpy.count(), 0); 3049 QCOMPARE(playerStopSpy.count(), 1); 3050 QCOMPARE(skipNextTrackSpy.count(), 1); 3051 QCOMPARE(seekSpy.count(), 0); 3052 3053 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 3054 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 3055 3056 QCOMPARE(skipNextTrackSpy.wait(100), false); 3057 3058 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 3059 3060 QCOMPARE(currentTrackChangedSpy.count(), 3); 3061 QCOMPARE(playListModelChangedSpy.count(), 1); 3062 QCOMPARE(playerSourceChangedSpy.count(), 4); 3063 QCOMPARE(urlRoleChangedSpy.count(), 1); 3064 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3065 QCOMPARE(playerStatusChangedSpy.count(), 9); 3066 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3067 QCOMPARE(playerErrorChangedSpy.count(), 0); 3068 QCOMPARE(persistentStateChangedSpy.count(), 0); 3069 QCOMPARE(playerPlaySpy.count(), 2); 3070 QCOMPARE(playerPauseSpy.count(), 0); 3071 QCOMPARE(playerStopSpy.count(), 1); 3072 QCOMPARE(skipNextTrackSpy.count(), 1); 3073 QCOMPARE(seekSpy.count(), 0); 3074 3075 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 3076 3077 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 3078 3079 QCOMPARE(currentTrackChangedSpy.count(), 3); 3080 QCOMPARE(playListModelChangedSpy.count(), 1); 3081 QCOMPARE(playerSourceChangedSpy.count(), 4); 3082 QCOMPARE(urlRoleChangedSpy.count(), 1); 3083 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3084 QCOMPARE(playerStatusChangedSpy.count(), 10); 3085 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3086 QCOMPARE(playerErrorChangedSpy.count(), 0); 3087 QCOMPARE(persistentStateChangedSpy.count(), 0); 3088 QCOMPARE(playerPlaySpy.count(), 2); 3089 QCOMPARE(playerPauseSpy.count(), 0); 3090 QCOMPARE(playerStopSpy.count(), 1); 3091 QCOMPARE(skipNextTrackSpy.count(), 1); 3092 QCOMPARE(seekSpy.count(), 0); 3093 3094 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 3095 3096 QCOMPARE(playerPlaySpy.wait(100), true); 3097 3098 QCOMPARE(currentTrackChangedSpy.count(), 3); 3099 QCOMPARE(playListModelChangedSpy.count(), 1); 3100 QCOMPARE(playerSourceChangedSpy.count(), 4); 3101 QCOMPARE(urlRoleChangedSpy.count(), 1); 3102 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3103 QCOMPARE(playerStatusChangedSpy.count(), 10); 3104 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3105 QCOMPARE(playerErrorChangedSpy.count(), 0); 3106 QCOMPARE(persistentStateChangedSpy.count(), 0); 3107 QCOMPARE(playerPlaySpy.count(), 3); 3108 QCOMPARE(playerPauseSpy.count(), 0); 3109 QCOMPARE(playerStopSpy.count(), 1); 3110 QCOMPARE(skipNextTrackSpy.count(), 1); 3111 QCOMPARE(seekSpy.count(), 0); 3112 3113 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 3114 3115 QCOMPARE(currentTrackChangedSpy.count(), 3); 3116 QCOMPARE(playListModelChangedSpy.count(), 1); 3117 QCOMPARE(playerSourceChangedSpy.count(), 4); 3118 QCOMPARE(urlRoleChangedSpy.count(), 1); 3119 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3120 QCOMPARE(playerStatusChangedSpy.count(), 10); 3121 QCOMPARE(playerPlaybackStateChangedSpy.count(), 5); 3122 QCOMPARE(playerErrorChangedSpy.count(), 0); 3123 QCOMPARE(persistentStateChangedSpy.count(), 0); 3124 QCOMPARE(playerPlaySpy.count(), 3); 3125 QCOMPARE(playerPauseSpy.count(), 0); 3126 QCOMPARE(playerStopSpy.count(), 1); 3127 QCOMPARE(skipNextTrackSpy.count(), 1); 3128 QCOMPARE(seekSpy.count(), 0); 3129 3130 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 3131 } 3132 3133 void ManageAudioPlayerTest::skipNextTrackAndPlayTrack() 3134 { 3135 Elisa::ElisaConfiguration::self()->setDefaults(); 3136 ManageAudioPlayer myPlayer; 3137 QStandardItemModel myPlayList; 3138 3139 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 3140 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 3141 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 3142 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 3143 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 3144 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 3145 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 3146 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 3147 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 3148 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 3149 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 3150 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 3151 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 3152 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 3153 3154 myPlayList.appendRow(new QStandardItem); 3155 myPlayList.appendRow(new QStandardItem); 3156 myPlayList.appendRow(new QStandardItem); 3157 3158 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 3159 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 3160 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 3161 3162 QCOMPARE(currentTrackChangedSpy.count(), 0); 3163 QCOMPARE(playListModelChangedSpy.count(), 0); 3164 QCOMPARE(playerSourceChangedSpy.count(), 0); 3165 QCOMPARE(urlRoleChangedSpy.count(), 0); 3166 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3167 QCOMPARE(playerStatusChangedSpy.count(), 0); 3168 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3169 QCOMPARE(playerErrorChangedSpy.count(), 0); 3170 QCOMPARE(persistentStateChangedSpy.count(), 0); 3171 QCOMPARE(playerPlaySpy.count(), 0); 3172 QCOMPARE(playerPauseSpy.count(), 0); 3173 QCOMPARE(playerStopSpy.count(), 0); 3174 QCOMPARE(skipNextTrackSpy.count(), 0); 3175 QCOMPARE(seekSpy.count(), 0); 3176 3177 myPlayer.setPlayListModel(&myPlayList); 3178 3179 QCOMPARE(currentTrackChangedSpy.count(), 0); 3180 QCOMPARE(playListModelChangedSpy.count(), 1); 3181 QCOMPARE(playerSourceChangedSpy.count(), 0); 3182 QCOMPARE(urlRoleChangedSpy.count(), 0); 3183 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3184 QCOMPARE(playerStatusChangedSpy.count(), 0); 3185 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3186 QCOMPARE(playerErrorChangedSpy.count(), 0); 3187 QCOMPARE(persistentStateChangedSpy.count(), 0); 3188 QCOMPARE(playerPlaySpy.count(), 0); 3189 QCOMPARE(playerPauseSpy.count(), 0); 3190 QCOMPARE(playerStopSpy.count(), 0); 3191 QCOMPARE(skipNextTrackSpy.count(), 0); 3192 QCOMPARE(seekSpy.count(), 0); 3193 3194 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 3195 3196 QCOMPARE(currentTrackChangedSpy.count(), 1); 3197 QCOMPARE(playListModelChangedSpy.count(), 1); 3198 QCOMPARE(playerSourceChangedSpy.count(), 1); 3199 QCOMPARE(urlRoleChangedSpy.count(), 0); 3200 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3201 QCOMPARE(playerStatusChangedSpy.count(), 0); 3202 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3203 QCOMPARE(playerErrorChangedSpy.count(), 0); 3204 QCOMPARE(persistentStateChangedSpy.count(), 0); 3205 QCOMPARE(playerPlaySpy.count(), 0); 3206 QCOMPARE(playerPauseSpy.count(), 0); 3207 QCOMPARE(playerStopSpy.count(), 0); 3208 QCOMPARE(skipNextTrackSpy.count(), 0); 3209 QCOMPARE(seekSpy.count(), 0); 3210 3211 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 3212 3213 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 3214 3215 QCOMPARE(currentTrackChangedSpy.count(), 1); 3216 QCOMPARE(playListModelChangedSpy.count(), 1); 3217 QCOMPARE(playerSourceChangedSpy.count(), 2); 3218 QCOMPARE(urlRoleChangedSpy.count(), 1); 3219 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3220 QCOMPARE(playerStatusChangedSpy.count(), 0); 3221 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3222 QCOMPARE(playerErrorChangedSpy.count(), 0); 3223 QCOMPARE(persistentStateChangedSpy.count(), 0); 3224 QCOMPARE(playerPlaySpy.count(), 0); 3225 QCOMPARE(playerPauseSpy.count(), 0); 3226 QCOMPARE(playerStopSpy.count(), 0); 3227 QCOMPARE(skipNextTrackSpy.count(), 0); 3228 QCOMPARE(seekSpy.count(), 0); 3229 3230 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 3231 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 3232 3233 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 3234 3235 QCOMPARE(currentTrackChangedSpy.count(), 1); 3236 QCOMPARE(playListModelChangedSpy.count(), 1); 3237 QCOMPARE(playerSourceChangedSpy.count(), 2); 3238 QCOMPARE(urlRoleChangedSpy.count(), 1); 3239 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3240 QCOMPARE(playerStatusChangedSpy.count(), 0); 3241 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3242 QCOMPARE(playerErrorChangedSpy.count(), 0); 3243 QCOMPARE(persistentStateChangedSpy.count(), 0); 3244 QCOMPARE(playerPlaySpy.count(), 0); 3245 QCOMPARE(playerPauseSpy.count(), 0); 3246 QCOMPARE(playerStopSpy.count(), 0); 3247 QCOMPARE(skipNextTrackSpy.count(), 0); 3248 QCOMPARE(seekSpy.count(), 0); 3249 3250 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 3251 3252 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 3253 3254 QCOMPARE(currentTrackChangedSpy.count(), 1); 3255 QCOMPARE(playListModelChangedSpy.count(), 1); 3256 QCOMPARE(playerSourceChangedSpy.count(), 2); 3257 QCOMPARE(urlRoleChangedSpy.count(), 1); 3258 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3259 QCOMPARE(playerStatusChangedSpy.count(), 1); 3260 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3261 QCOMPARE(playerErrorChangedSpy.count(), 0); 3262 QCOMPARE(persistentStateChangedSpy.count(), 0); 3263 QCOMPARE(playerPlaySpy.count(), 0); 3264 QCOMPARE(playerPauseSpy.count(), 0); 3265 QCOMPARE(playerStopSpy.count(), 0); 3266 QCOMPARE(skipNextTrackSpy.count(), 0); 3267 QCOMPARE(seekSpy.count(), 0); 3268 3269 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 3270 3271 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 3272 3273 QCOMPARE(currentTrackChangedSpy.count(), 1); 3274 QCOMPARE(playListModelChangedSpy.count(), 1); 3275 QCOMPARE(playerSourceChangedSpy.count(), 2); 3276 QCOMPARE(urlRoleChangedSpy.count(), 1); 3277 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3278 QCOMPARE(playerStatusChangedSpy.count(), 1); 3279 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3280 QCOMPARE(playerErrorChangedSpy.count(), 0); 3281 QCOMPARE(persistentStateChangedSpy.count(), 0); 3282 QCOMPARE(playerPlaySpy.count(), 0); 3283 QCOMPARE(playerPauseSpy.count(), 0); 3284 QCOMPARE(playerStopSpy.count(), 0); 3285 QCOMPARE(skipNextTrackSpy.count(), 0); 3286 QCOMPARE(seekSpy.count(), 0); 3287 3288 myPlayer.setPlayerError(QMediaPlayer::NoError); 3289 3290 QCOMPARE(currentTrackChangedSpy.count(), 1); 3291 QCOMPARE(playListModelChangedSpy.count(), 1); 3292 QCOMPARE(playerSourceChangedSpy.count(), 2); 3293 QCOMPARE(urlRoleChangedSpy.count(), 1); 3294 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3295 QCOMPARE(playerStatusChangedSpy.count(), 1); 3296 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3297 QCOMPARE(playerErrorChangedSpy.count(), 0); 3298 QCOMPARE(persistentStateChangedSpy.count(), 0); 3299 QCOMPARE(playerPlaySpy.count(), 0); 3300 QCOMPARE(playerPauseSpy.count(), 0); 3301 QCOMPARE(playerStopSpy.count(), 0); 3302 QCOMPARE(skipNextTrackSpy.count(), 0); 3303 QCOMPARE(seekSpy.count(), 0); 3304 3305 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 3306 3307 QCOMPARE(currentTrackChangedSpy.count(), 1); 3308 QCOMPARE(playListModelChangedSpy.count(), 1); 3309 QCOMPARE(playerSourceChangedSpy.count(), 2); 3310 QCOMPARE(urlRoleChangedSpy.count(), 1); 3311 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3312 QCOMPARE(playerStatusChangedSpy.count(), 2); 3313 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3314 QCOMPARE(playerErrorChangedSpy.count(), 0); 3315 QCOMPARE(persistentStateChangedSpy.count(), 0); 3316 QCOMPARE(playerPlaySpy.count(), 0); 3317 QCOMPARE(playerPauseSpy.count(), 0); 3318 QCOMPARE(playerStopSpy.count(), 0); 3319 QCOMPARE(skipNextTrackSpy.count(), 0); 3320 QCOMPARE(seekSpy.count(), 0); 3321 3322 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 3323 3324 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 3325 3326 QCOMPARE(currentTrackChangedSpy.count(), 1); 3327 QCOMPARE(playListModelChangedSpy.count(), 1); 3328 QCOMPARE(playerSourceChangedSpy.count(), 2); 3329 QCOMPARE(urlRoleChangedSpy.count(), 1); 3330 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3331 QCOMPARE(playerStatusChangedSpy.count(), 3); 3332 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3333 QCOMPARE(playerErrorChangedSpy.count(), 0); 3334 QCOMPARE(persistentStateChangedSpy.count(), 0); 3335 QCOMPARE(playerPlaySpy.count(), 0); 3336 QCOMPARE(playerPauseSpy.count(), 0); 3337 QCOMPARE(playerStopSpy.count(), 0); 3338 QCOMPARE(skipNextTrackSpy.count(), 0); 3339 QCOMPARE(seekSpy.count(), 0); 3340 3341 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 3342 3343 myPlayer.playPause(); 3344 3345 QCOMPARE(currentTrackChangedSpy.count(), 1); 3346 QCOMPARE(playListModelChangedSpy.count(), 1); 3347 QCOMPARE(playerSourceChangedSpy.count(), 2); 3348 QCOMPARE(urlRoleChangedSpy.count(), 1); 3349 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3350 QCOMPARE(playerStatusChangedSpy.count(), 3); 3351 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3352 QCOMPARE(playerErrorChangedSpy.count(), 0); 3353 QCOMPARE(persistentStateChangedSpy.count(), 0); 3354 QCOMPARE(playerPlaySpy.count(), 0); 3355 QCOMPARE(playerPauseSpy.count(), 0); 3356 QCOMPARE(playerStopSpy.count(), 0); 3357 QCOMPARE(skipNextTrackSpy.count(), 0); 3358 QCOMPARE(seekSpy.count(), 0); 3359 3360 QCOMPARE(playerPlaySpy.wait(), true); 3361 3362 QCOMPARE(currentTrackChangedSpy.count(), 1); 3363 QCOMPARE(playListModelChangedSpy.count(), 1); 3364 QCOMPARE(playerSourceChangedSpy.count(), 2); 3365 QCOMPARE(urlRoleChangedSpy.count(), 1); 3366 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3367 QCOMPARE(playerStatusChangedSpy.count(), 3); 3368 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3369 QCOMPARE(playerErrorChangedSpy.count(), 0); 3370 QCOMPARE(persistentStateChangedSpy.count(), 0); 3371 QCOMPARE(playerPlaySpy.count(), 1); 3372 QCOMPARE(playerPauseSpy.count(), 0); 3373 QCOMPARE(playerStopSpy.count(), 0); 3374 QCOMPARE(skipNextTrackSpy.count(), 0); 3375 QCOMPARE(seekSpy.count(), 0); 3376 3377 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 3378 3379 QCOMPARE(currentTrackChangedSpy.count(), 1); 3380 QCOMPARE(playListModelChangedSpy.count(), 1); 3381 QCOMPARE(playerSourceChangedSpy.count(), 2); 3382 QCOMPARE(urlRoleChangedSpy.count(), 1); 3383 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3384 QCOMPARE(playerStatusChangedSpy.count(), 3); 3385 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 3386 QCOMPARE(playerErrorChangedSpy.count(), 0); 3387 QCOMPARE(persistentStateChangedSpy.count(), 0); 3388 QCOMPARE(playerPlaySpy.count(), 1); 3389 QCOMPARE(playerPauseSpy.count(), 0); 3390 QCOMPARE(playerStopSpy.count(), 0); 3391 QCOMPARE(skipNextTrackSpy.count(), 0); 3392 QCOMPARE(seekSpy.count(), 0); 3393 3394 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 3395 3396 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 3397 3398 QCOMPARE(currentTrackChangedSpy.count(), 1); 3399 QCOMPARE(playListModelChangedSpy.count(), 1); 3400 QCOMPARE(playerSourceChangedSpy.count(), 2); 3401 QCOMPARE(urlRoleChangedSpy.count(), 1); 3402 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3403 QCOMPARE(playerStatusChangedSpy.count(), 4); 3404 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 3405 QCOMPARE(playerErrorChangedSpy.count(), 0); 3406 QCOMPARE(persistentStateChangedSpy.count(), 0); 3407 QCOMPARE(playerPlaySpy.count(), 1); 3408 QCOMPARE(playerPauseSpy.count(), 0); 3409 QCOMPARE(playerStopSpy.count(), 0); 3410 QCOMPARE(skipNextTrackSpy.count(), 0); 3411 QCOMPARE(seekSpy.count(), 0); 3412 3413 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 3414 3415 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 3416 3417 QCOMPARE(currentTrackChangedSpy.count(), 2); 3418 QCOMPARE(playListModelChangedSpy.count(), 1); 3419 QCOMPARE(playerSourceChangedSpy.count(), 2); 3420 QCOMPARE(urlRoleChangedSpy.count(), 1); 3421 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3422 QCOMPARE(playerStatusChangedSpy.count(), 4); 3423 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 3424 QCOMPARE(playerErrorChangedSpy.count(), 0); 3425 QCOMPARE(persistentStateChangedSpy.count(), 0); 3426 QCOMPARE(playerPlaySpy.count(), 1); 3427 QCOMPARE(playerPauseSpy.count(), 0); 3428 QCOMPARE(playerStopSpy.count(), 0); 3429 QCOMPARE(skipNextTrackSpy.count(), 0); 3430 QCOMPARE(seekSpy.count(), 0); 3431 3432 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 3433 3434 QCOMPARE(playerStopSpy.wait(100), true); 3435 3436 QCOMPARE(currentTrackChangedSpy.count(), 2); 3437 QCOMPARE(playListModelChangedSpy.count(), 1); 3438 QCOMPARE(playerSourceChangedSpy.count(), 2); 3439 QCOMPARE(urlRoleChangedSpy.count(), 1); 3440 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3441 QCOMPARE(playerStatusChangedSpy.count(), 4); 3442 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 3443 QCOMPARE(playerErrorChangedSpy.count(), 0); 3444 QCOMPARE(persistentStateChangedSpy.count(), 0); 3445 QCOMPARE(playerPlaySpy.count(), 1); 3446 QCOMPARE(playerPauseSpy.count(), 0); 3447 QCOMPARE(playerStopSpy.count(), 1); 3448 QCOMPARE(skipNextTrackSpy.count(), 0); 3449 QCOMPARE(seekSpy.count(), 0); 3450 3451 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 3452 3453 QCOMPARE(currentTrackChangedSpy.count(), 2); 3454 QCOMPARE(playListModelChangedSpy.count(), 1); 3455 QCOMPARE(playerSourceChangedSpy.count(), 3); 3456 QCOMPARE(urlRoleChangedSpy.count(), 1); 3457 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3458 QCOMPARE(playerStatusChangedSpy.count(), 4); 3459 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 3460 QCOMPARE(playerErrorChangedSpy.count(), 0); 3461 QCOMPARE(persistentStateChangedSpy.count(), 0); 3462 QCOMPARE(playerPlaySpy.count(), 1); 3463 QCOMPARE(playerPauseSpy.count(), 0); 3464 QCOMPARE(playerStopSpy.count(), 1); 3465 QCOMPARE(skipNextTrackSpy.count(), 0); 3466 QCOMPARE(seekSpy.count(), 0); 3467 3468 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 3469 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 3470 3471 QCOMPARE(skipNextTrackSpy.wait(100), false); 3472 3473 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 3474 3475 QCOMPARE(currentTrackChangedSpy.count(), 2); 3476 QCOMPARE(playListModelChangedSpy.count(), 1); 3477 QCOMPARE(playerSourceChangedSpy.count(), 3); 3478 QCOMPARE(urlRoleChangedSpy.count(), 1); 3479 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3480 QCOMPARE(playerStatusChangedSpy.count(), 5); 3481 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 3482 QCOMPARE(playerErrorChangedSpy.count(), 0); 3483 QCOMPARE(persistentStateChangedSpy.count(), 0); 3484 QCOMPARE(playerPlaySpy.count(), 1); 3485 QCOMPARE(playerPauseSpy.count(), 0); 3486 QCOMPARE(playerStopSpy.count(), 1); 3487 QCOMPARE(skipNextTrackSpy.count(), 0); 3488 QCOMPARE(seekSpy.count(), 0); 3489 3490 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 3491 3492 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 3493 3494 QCOMPARE(currentTrackChangedSpy.count(), 2); 3495 QCOMPARE(playListModelChangedSpy.count(), 1); 3496 QCOMPARE(playerSourceChangedSpy.count(), 3); 3497 QCOMPARE(urlRoleChangedSpy.count(), 1); 3498 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3499 QCOMPARE(playerStatusChangedSpy.count(), 6); 3500 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 3501 QCOMPARE(playerErrorChangedSpy.count(), 0); 3502 QCOMPARE(persistentStateChangedSpy.count(), 0); 3503 QCOMPARE(playerPlaySpy.count(), 1); 3504 QCOMPARE(playerPauseSpy.count(), 0); 3505 QCOMPARE(playerStopSpy.count(), 1); 3506 QCOMPARE(skipNextTrackSpy.count(), 0); 3507 QCOMPARE(seekSpy.count(), 0); 3508 3509 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 3510 3511 QCOMPARE(playerPlaySpy.wait(100), true); 3512 3513 QCOMPARE(currentTrackChangedSpy.count(), 2); 3514 QCOMPARE(playListModelChangedSpy.count(), 1); 3515 QCOMPARE(playerSourceChangedSpy.count(), 3); 3516 QCOMPARE(urlRoleChangedSpy.count(), 1); 3517 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3518 QCOMPARE(playerStatusChangedSpy.count(), 6); 3519 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 3520 QCOMPARE(playerErrorChangedSpy.count(), 0); 3521 QCOMPARE(persistentStateChangedSpy.count(), 0); 3522 QCOMPARE(playerPlaySpy.count(), 2); 3523 QCOMPARE(playerPauseSpy.count(), 0); 3524 QCOMPARE(playerStopSpy.count(), 1); 3525 QCOMPARE(skipNextTrackSpy.count(), 0); 3526 QCOMPARE(seekSpy.count(), 0); 3527 3528 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 3529 3530 QCOMPARE(currentTrackChangedSpy.count(), 2); 3531 QCOMPARE(playListModelChangedSpy.count(), 1); 3532 QCOMPARE(playerSourceChangedSpy.count(), 3); 3533 QCOMPARE(urlRoleChangedSpy.count(), 1); 3534 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3535 QCOMPARE(playerStatusChangedSpy.count(), 6); 3536 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 3537 QCOMPARE(playerErrorChangedSpy.count(), 0); 3538 QCOMPARE(persistentStateChangedSpy.count(), 0); 3539 QCOMPARE(playerPlaySpy.count(), 2); 3540 QCOMPARE(playerPauseSpy.count(), 0); 3541 QCOMPARE(playerStopSpy.count(), 1); 3542 QCOMPARE(skipNextTrackSpy.count(), 0); 3543 QCOMPARE(seekSpy.count(), 0); 3544 3545 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 3546 3547 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 3548 3549 QCOMPARE(currentTrackChangedSpy.count(), 2); 3550 QCOMPARE(playListModelChangedSpy.count(), 1); 3551 QCOMPARE(playerSourceChangedSpy.count(), 3); 3552 QCOMPARE(urlRoleChangedSpy.count(), 1); 3553 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3554 QCOMPARE(playerStatusChangedSpy.count(), 7); 3555 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 3556 QCOMPARE(playerErrorChangedSpy.count(), 0); 3557 QCOMPARE(persistentStateChangedSpy.count(), 0); 3558 QCOMPARE(playerPlaySpy.count(), 2); 3559 QCOMPARE(playerPauseSpy.count(), 0); 3560 QCOMPARE(playerStopSpy.count(), 1); 3561 QCOMPARE(skipNextTrackSpy.count(), 0); 3562 QCOMPARE(seekSpy.count(), 0); 3563 3564 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 3565 3566 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 3567 3568 QCOMPARE(currentTrackChangedSpy.count(), 2); 3569 QCOMPARE(playListModelChangedSpy.count(), 1); 3570 QCOMPARE(playerSourceChangedSpy.count(), 3); 3571 QCOMPARE(urlRoleChangedSpy.count(), 1); 3572 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3573 QCOMPARE(playerStatusChangedSpy.count(), 7); 3574 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3575 QCOMPARE(playerErrorChangedSpy.count(), 0); 3576 QCOMPARE(persistentStateChangedSpy.count(), 0); 3577 QCOMPARE(playerPlaySpy.count(), 2); 3578 QCOMPARE(playerPauseSpy.count(), 0); 3579 QCOMPARE(playerStopSpy.count(), 1); 3580 QCOMPARE(skipNextTrackSpy.count(), 0); 3581 QCOMPARE(seekSpy.count(), 0); 3582 3583 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 3584 3585 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 3586 3587 QCOMPARE(currentTrackChangedSpy.count(), 2); 3588 QCOMPARE(playListModelChangedSpy.count(), 1); 3589 QCOMPARE(playerSourceChangedSpy.count(), 3); 3590 QCOMPARE(urlRoleChangedSpy.count(), 1); 3591 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3592 QCOMPARE(playerStatusChangedSpy.count(), 8); 3593 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3594 QCOMPARE(playerErrorChangedSpy.count(), 0); 3595 QCOMPARE(persistentStateChangedSpy.count(), 0); 3596 QCOMPARE(playerPlaySpy.count(), 2); 3597 QCOMPARE(playerPauseSpy.count(), 0); 3598 QCOMPARE(playerStopSpy.count(), 1); 3599 QCOMPARE(skipNextTrackSpy.count(), 0); 3600 QCOMPARE(seekSpy.count(), 0); 3601 3602 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 3603 3604 QCOMPARE(skipNextTrackSpy.wait(100), true); 3605 3606 QCOMPARE(currentTrackChangedSpy.count(), 2); 3607 QCOMPARE(playListModelChangedSpy.count(), 1); 3608 QCOMPARE(playerSourceChangedSpy.count(), 3); 3609 QCOMPARE(urlRoleChangedSpy.count(), 1); 3610 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3611 QCOMPARE(playerStatusChangedSpy.count(), 8); 3612 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3613 QCOMPARE(playerErrorChangedSpy.count(), 0); 3614 QCOMPARE(persistentStateChangedSpy.count(), 0); 3615 QCOMPARE(playerPlaySpy.count(), 2); 3616 QCOMPARE(playerPauseSpy.count(), 0); 3617 QCOMPARE(playerStopSpy.count(), 1); 3618 QCOMPARE(skipNextTrackSpy.count(), 1); 3619 QCOMPARE(seekSpy.count(), 0); 3620 3621 myPlayer.setCurrentTrack(myPlayList.index(2, 0)); 3622 3623 QCOMPARE(currentTrackChangedSpy.count(), 3); 3624 QCOMPARE(playListModelChangedSpy.count(), 1); 3625 QCOMPARE(playerSourceChangedSpy.count(), 4); 3626 QCOMPARE(urlRoleChangedSpy.count(), 1); 3627 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3628 QCOMPARE(playerStatusChangedSpy.count(), 8); 3629 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3630 QCOMPARE(playerErrorChangedSpy.count(), 0); 3631 QCOMPARE(persistentStateChangedSpy.count(), 0); 3632 QCOMPARE(playerPlaySpy.count(), 2); 3633 QCOMPARE(playerPauseSpy.count(), 0); 3634 QCOMPARE(playerStopSpy.count(), 1); 3635 QCOMPARE(skipNextTrackSpy.count(), 1); 3636 QCOMPARE(seekSpy.count(), 0); 3637 3638 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(2, 0))); 3639 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///3.mp3"))); 3640 3641 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 3642 3643 QCOMPARE(currentTrackChangedSpy.count(), 3); 3644 QCOMPARE(playListModelChangedSpy.count(), 1); 3645 QCOMPARE(playerSourceChangedSpy.count(), 4); 3646 QCOMPARE(urlRoleChangedSpy.count(), 1); 3647 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3648 QCOMPARE(playerStatusChangedSpy.count(), 9); 3649 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3650 QCOMPARE(playerErrorChangedSpy.count(), 0); 3651 QCOMPARE(persistentStateChangedSpy.count(), 0); 3652 QCOMPARE(playerPlaySpy.count(), 2); 3653 QCOMPARE(playerPauseSpy.count(), 0); 3654 QCOMPARE(playerStopSpy.count(), 1); 3655 QCOMPARE(skipNextTrackSpy.count(), 1); 3656 QCOMPARE(seekSpy.count(), 0); 3657 3658 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 3659 3660 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 3661 3662 QCOMPARE(currentTrackChangedSpy.count(), 3); 3663 QCOMPARE(playListModelChangedSpy.count(), 1); 3664 QCOMPARE(playerSourceChangedSpy.count(), 4); 3665 QCOMPARE(urlRoleChangedSpy.count(), 1); 3666 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3667 QCOMPARE(playerStatusChangedSpy.count(), 10); 3668 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3669 QCOMPARE(playerErrorChangedSpy.count(), 0); 3670 QCOMPARE(persistentStateChangedSpy.count(), 0); 3671 QCOMPARE(playerPlaySpy.count(), 2); 3672 QCOMPARE(playerPauseSpy.count(), 0); 3673 QCOMPARE(playerStopSpy.count(), 1); 3674 QCOMPARE(skipNextTrackSpy.count(), 1); 3675 QCOMPARE(seekSpy.count(), 0); 3676 3677 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 3678 3679 QCOMPARE(playerPlaySpy.wait(100), true); 3680 3681 QCOMPARE(currentTrackChangedSpy.count(), 3); 3682 QCOMPARE(playListModelChangedSpy.count(), 1); 3683 QCOMPARE(playerSourceChangedSpy.count(), 4); 3684 QCOMPARE(urlRoleChangedSpy.count(), 1); 3685 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3686 QCOMPARE(playerStatusChangedSpy.count(), 10); 3687 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 3688 QCOMPARE(playerErrorChangedSpy.count(), 0); 3689 QCOMPARE(persistentStateChangedSpy.count(), 0); 3690 QCOMPARE(playerPlaySpy.count(), 3); 3691 QCOMPARE(playerPauseSpy.count(), 0); 3692 QCOMPARE(playerStopSpy.count(), 1); 3693 QCOMPARE(skipNextTrackSpy.count(), 1); 3694 QCOMPARE(seekSpy.count(), 0); 3695 } 3696 3697 void ManageAudioPlayerTest::skipPreviousTrackAndPlayTrack() 3698 { 3699 Elisa::ElisaConfiguration::self()->setDefaults(); 3700 ManageAudioPlayer myPlayer; 3701 QStandardItemModel myPlayList; 3702 3703 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 3704 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 3705 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 3706 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 3707 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 3708 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 3709 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 3710 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 3711 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 3712 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 3713 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 3714 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 3715 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 3716 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 3717 3718 myPlayList.appendRow(new QStandardItem); 3719 myPlayList.appendRow(new QStandardItem); 3720 myPlayList.appendRow(new QStandardItem); 3721 3722 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 3723 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 3724 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 3725 3726 QCOMPARE(currentTrackChangedSpy.count(), 0); 3727 QCOMPARE(playListModelChangedSpy.count(), 0); 3728 QCOMPARE(playerSourceChangedSpy.count(), 0); 3729 QCOMPARE(urlRoleChangedSpy.count(), 0); 3730 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3731 QCOMPARE(playerStatusChangedSpy.count(), 0); 3732 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3733 QCOMPARE(playerErrorChangedSpy.count(), 0); 3734 QCOMPARE(persistentStateChangedSpy.count(), 0); 3735 QCOMPARE(playerPlaySpy.count(), 0); 3736 QCOMPARE(playerPauseSpy.count(), 0); 3737 QCOMPARE(playerStopSpy.count(), 0); 3738 QCOMPARE(skipNextTrackSpy.count(), 0); 3739 QCOMPARE(seekSpy.count(), 0); 3740 3741 myPlayer.setPlayListModel(&myPlayList); 3742 3743 QCOMPARE(currentTrackChangedSpy.count(), 0); 3744 QCOMPARE(playListModelChangedSpy.count(), 1); 3745 QCOMPARE(playerSourceChangedSpy.count(), 0); 3746 QCOMPARE(urlRoleChangedSpy.count(), 0); 3747 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3748 QCOMPARE(playerStatusChangedSpy.count(), 0); 3749 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3750 QCOMPARE(playerErrorChangedSpy.count(), 0); 3751 QCOMPARE(persistentStateChangedSpy.count(), 0); 3752 QCOMPARE(playerPlaySpy.count(), 0); 3753 QCOMPARE(playerPauseSpy.count(), 0); 3754 QCOMPARE(playerStopSpy.count(), 0); 3755 QCOMPARE(skipNextTrackSpy.count(), 0); 3756 QCOMPARE(seekSpy.count(), 0); 3757 3758 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 3759 3760 QCOMPARE(currentTrackChangedSpy.count(), 1); 3761 QCOMPARE(playListModelChangedSpy.count(), 1); 3762 QCOMPARE(playerSourceChangedSpy.count(), 1); 3763 QCOMPARE(urlRoleChangedSpy.count(), 0); 3764 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3765 QCOMPARE(playerStatusChangedSpy.count(), 0); 3766 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3767 QCOMPARE(playerErrorChangedSpy.count(), 0); 3768 QCOMPARE(persistentStateChangedSpy.count(), 0); 3769 QCOMPARE(playerPlaySpy.count(), 0); 3770 QCOMPARE(playerPauseSpy.count(), 0); 3771 QCOMPARE(playerStopSpy.count(), 0); 3772 QCOMPARE(skipNextTrackSpy.count(), 0); 3773 QCOMPARE(seekSpy.count(), 0); 3774 3775 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 3776 3777 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 3778 3779 QCOMPARE(currentTrackChangedSpy.count(), 1); 3780 QCOMPARE(playListModelChangedSpy.count(), 1); 3781 QCOMPARE(playerSourceChangedSpy.count(), 2); 3782 QCOMPARE(urlRoleChangedSpy.count(), 1); 3783 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 3784 QCOMPARE(playerStatusChangedSpy.count(), 0); 3785 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3786 QCOMPARE(playerErrorChangedSpy.count(), 0); 3787 QCOMPARE(persistentStateChangedSpy.count(), 0); 3788 QCOMPARE(playerPlaySpy.count(), 0); 3789 QCOMPARE(playerPauseSpy.count(), 0); 3790 QCOMPARE(playerStopSpy.count(), 0); 3791 QCOMPARE(skipNextTrackSpy.count(), 0); 3792 QCOMPARE(seekSpy.count(), 0); 3793 3794 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 3795 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 3796 3797 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 3798 3799 QCOMPARE(currentTrackChangedSpy.count(), 1); 3800 QCOMPARE(playListModelChangedSpy.count(), 1); 3801 QCOMPARE(playerSourceChangedSpy.count(), 2); 3802 QCOMPARE(urlRoleChangedSpy.count(), 1); 3803 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3804 QCOMPARE(playerStatusChangedSpy.count(), 0); 3805 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3806 QCOMPARE(playerErrorChangedSpy.count(), 0); 3807 QCOMPARE(persistentStateChangedSpy.count(), 0); 3808 QCOMPARE(playerPlaySpy.count(), 0); 3809 QCOMPARE(playerPauseSpy.count(), 0); 3810 QCOMPARE(playerStopSpy.count(), 0); 3811 QCOMPARE(skipNextTrackSpy.count(), 0); 3812 QCOMPARE(seekSpy.count(), 0); 3813 3814 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 3815 3816 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 3817 3818 QCOMPARE(currentTrackChangedSpy.count(), 1); 3819 QCOMPARE(playListModelChangedSpy.count(), 1); 3820 QCOMPARE(playerSourceChangedSpy.count(), 2); 3821 QCOMPARE(urlRoleChangedSpy.count(), 1); 3822 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3823 QCOMPARE(playerStatusChangedSpy.count(), 1); 3824 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3825 QCOMPARE(playerErrorChangedSpy.count(), 0); 3826 QCOMPARE(persistentStateChangedSpy.count(), 0); 3827 QCOMPARE(playerPlaySpy.count(), 0); 3828 QCOMPARE(playerPauseSpy.count(), 0); 3829 QCOMPARE(playerStopSpy.count(), 0); 3830 QCOMPARE(skipNextTrackSpy.count(), 0); 3831 QCOMPARE(seekSpy.count(), 0); 3832 3833 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 3834 3835 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 3836 3837 QCOMPARE(currentTrackChangedSpy.count(), 1); 3838 QCOMPARE(playListModelChangedSpy.count(), 1); 3839 QCOMPARE(playerSourceChangedSpy.count(), 2); 3840 QCOMPARE(urlRoleChangedSpy.count(), 1); 3841 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3842 QCOMPARE(playerStatusChangedSpy.count(), 1); 3843 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3844 QCOMPARE(playerErrorChangedSpy.count(), 0); 3845 QCOMPARE(persistentStateChangedSpy.count(), 0); 3846 QCOMPARE(playerPlaySpy.count(), 0); 3847 QCOMPARE(playerPauseSpy.count(), 0); 3848 QCOMPARE(playerStopSpy.count(), 0); 3849 QCOMPARE(skipNextTrackSpy.count(), 0); 3850 QCOMPARE(seekSpy.count(), 0); 3851 3852 myPlayer.setPlayerError(QMediaPlayer::NoError); 3853 3854 QCOMPARE(currentTrackChangedSpy.count(), 1); 3855 QCOMPARE(playListModelChangedSpy.count(), 1); 3856 QCOMPARE(playerSourceChangedSpy.count(), 2); 3857 QCOMPARE(urlRoleChangedSpy.count(), 1); 3858 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3859 QCOMPARE(playerStatusChangedSpy.count(), 1); 3860 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3861 QCOMPARE(playerErrorChangedSpy.count(), 0); 3862 QCOMPARE(persistentStateChangedSpy.count(), 0); 3863 QCOMPARE(playerPlaySpy.count(), 0); 3864 QCOMPARE(playerPauseSpy.count(), 0); 3865 QCOMPARE(playerStopSpy.count(), 0); 3866 QCOMPARE(skipNextTrackSpy.count(), 0); 3867 QCOMPARE(seekSpy.count(), 0); 3868 3869 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 3870 3871 QCOMPARE(currentTrackChangedSpy.count(), 1); 3872 QCOMPARE(playListModelChangedSpy.count(), 1); 3873 QCOMPARE(playerSourceChangedSpy.count(), 2); 3874 QCOMPARE(urlRoleChangedSpy.count(), 1); 3875 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3876 QCOMPARE(playerStatusChangedSpy.count(), 2); 3877 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3878 QCOMPARE(playerErrorChangedSpy.count(), 0); 3879 QCOMPARE(persistentStateChangedSpy.count(), 0); 3880 QCOMPARE(playerPlaySpy.count(), 0); 3881 QCOMPARE(playerPauseSpy.count(), 0); 3882 QCOMPARE(playerStopSpy.count(), 0); 3883 QCOMPARE(skipNextTrackSpy.count(), 0); 3884 QCOMPARE(seekSpy.count(), 0); 3885 3886 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 3887 3888 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 3889 3890 QCOMPARE(currentTrackChangedSpy.count(), 1); 3891 QCOMPARE(playListModelChangedSpy.count(), 1); 3892 QCOMPARE(playerSourceChangedSpy.count(), 2); 3893 QCOMPARE(urlRoleChangedSpy.count(), 1); 3894 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3895 QCOMPARE(playerStatusChangedSpy.count(), 3); 3896 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3897 QCOMPARE(playerErrorChangedSpy.count(), 0); 3898 QCOMPARE(persistentStateChangedSpy.count(), 0); 3899 QCOMPARE(playerPlaySpy.count(), 0); 3900 QCOMPARE(playerPauseSpy.count(), 0); 3901 QCOMPARE(playerStopSpy.count(), 0); 3902 QCOMPARE(skipNextTrackSpy.count(), 0); 3903 QCOMPARE(seekSpy.count(), 0); 3904 3905 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 3906 3907 myPlayer.playPause(); 3908 3909 QCOMPARE(currentTrackChangedSpy.count(), 1); 3910 QCOMPARE(playListModelChangedSpy.count(), 1); 3911 QCOMPARE(playerSourceChangedSpy.count(), 2); 3912 QCOMPARE(urlRoleChangedSpy.count(), 1); 3913 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3914 QCOMPARE(playerStatusChangedSpy.count(), 3); 3915 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3916 QCOMPARE(playerErrorChangedSpy.count(), 0); 3917 QCOMPARE(persistentStateChangedSpy.count(), 0); 3918 QCOMPARE(playerPlaySpy.count(), 0); 3919 QCOMPARE(playerPauseSpy.count(), 0); 3920 QCOMPARE(playerStopSpy.count(), 0); 3921 QCOMPARE(skipNextTrackSpy.count(), 0); 3922 QCOMPARE(seekSpy.count(), 0); 3923 3924 QCOMPARE(playerPlaySpy.wait(), true); 3925 3926 QCOMPARE(currentTrackChangedSpy.count(), 1); 3927 QCOMPARE(playListModelChangedSpy.count(), 1); 3928 QCOMPARE(playerSourceChangedSpy.count(), 2); 3929 QCOMPARE(urlRoleChangedSpy.count(), 1); 3930 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3931 QCOMPARE(playerStatusChangedSpy.count(), 3); 3932 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 3933 QCOMPARE(playerErrorChangedSpy.count(), 0); 3934 QCOMPARE(persistentStateChangedSpy.count(), 0); 3935 QCOMPARE(playerPlaySpy.count(), 1); 3936 QCOMPARE(playerPauseSpy.count(), 0); 3937 QCOMPARE(playerStopSpy.count(), 0); 3938 QCOMPARE(skipNextTrackSpy.count(), 0); 3939 QCOMPARE(seekSpy.count(), 0); 3940 3941 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 3942 3943 QCOMPARE(currentTrackChangedSpy.count(), 1); 3944 QCOMPARE(playListModelChangedSpy.count(), 1); 3945 QCOMPARE(playerSourceChangedSpy.count(), 2); 3946 QCOMPARE(urlRoleChangedSpy.count(), 1); 3947 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3948 QCOMPARE(playerStatusChangedSpy.count(), 3); 3949 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 3950 QCOMPARE(playerErrorChangedSpy.count(), 0); 3951 QCOMPARE(persistentStateChangedSpy.count(), 0); 3952 QCOMPARE(playerPlaySpy.count(), 1); 3953 QCOMPARE(playerPauseSpy.count(), 0); 3954 QCOMPARE(playerStopSpy.count(), 0); 3955 QCOMPARE(skipNextTrackSpy.count(), 0); 3956 QCOMPARE(seekSpy.count(), 0); 3957 3958 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 3959 3960 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 3961 3962 QCOMPARE(currentTrackChangedSpy.count(), 1); 3963 QCOMPARE(playListModelChangedSpy.count(), 1); 3964 QCOMPARE(playerSourceChangedSpy.count(), 2); 3965 QCOMPARE(urlRoleChangedSpy.count(), 1); 3966 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3967 QCOMPARE(playerStatusChangedSpy.count(), 4); 3968 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 3969 QCOMPARE(playerErrorChangedSpy.count(), 0); 3970 QCOMPARE(persistentStateChangedSpy.count(), 0); 3971 QCOMPARE(playerPlaySpy.count(), 1); 3972 QCOMPARE(playerPauseSpy.count(), 0); 3973 QCOMPARE(playerStopSpy.count(), 0); 3974 QCOMPARE(skipNextTrackSpy.count(), 0); 3975 QCOMPARE(seekSpy.count(), 0); 3976 3977 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 3978 3979 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 3980 3981 QCOMPARE(currentTrackChangedSpy.count(), 2); 3982 QCOMPARE(playListModelChangedSpy.count(), 1); 3983 QCOMPARE(playerSourceChangedSpy.count(), 2); 3984 QCOMPARE(urlRoleChangedSpy.count(), 1); 3985 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 3986 QCOMPARE(playerStatusChangedSpy.count(), 4); 3987 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 3988 QCOMPARE(playerErrorChangedSpy.count(), 0); 3989 QCOMPARE(persistentStateChangedSpy.count(), 0); 3990 QCOMPARE(playerPlaySpy.count(), 1); 3991 QCOMPARE(playerPauseSpy.count(), 0); 3992 QCOMPARE(playerStopSpy.count(), 0); 3993 QCOMPARE(skipNextTrackSpy.count(), 0); 3994 QCOMPARE(seekSpy.count(), 0); 3995 3996 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 3997 3998 QCOMPARE(playerStopSpy.wait(100), true); 3999 4000 QCOMPARE(currentTrackChangedSpy.count(), 2); 4001 QCOMPARE(playListModelChangedSpy.count(), 1); 4002 QCOMPARE(playerSourceChangedSpy.count(), 2); 4003 QCOMPARE(urlRoleChangedSpy.count(), 1); 4004 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4005 QCOMPARE(playerStatusChangedSpy.count(), 4); 4006 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 4007 QCOMPARE(playerErrorChangedSpy.count(), 0); 4008 QCOMPARE(persistentStateChangedSpy.count(), 0); 4009 QCOMPARE(playerPlaySpy.count(), 1); 4010 QCOMPARE(playerPauseSpy.count(), 0); 4011 QCOMPARE(playerStopSpy.count(), 1); 4012 QCOMPARE(skipNextTrackSpy.count(), 0); 4013 QCOMPARE(seekSpy.count(), 0); 4014 4015 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 4016 4017 QCOMPARE(currentTrackChangedSpy.count(), 2); 4018 QCOMPARE(playListModelChangedSpy.count(), 1); 4019 QCOMPARE(playerSourceChangedSpy.count(), 3); 4020 QCOMPARE(urlRoleChangedSpy.count(), 1); 4021 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4022 QCOMPARE(playerStatusChangedSpy.count(), 4); 4023 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4024 QCOMPARE(playerErrorChangedSpy.count(), 0); 4025 QCOMPARE(persistentStateChangedSpy.count(), 0); 4026 QCOMPARE(playerPlaySpy.count(), 1); 4027 QCOMPARE(playerPauseSpy.count(), 0); 4028 QCOMPARE(playerStopSpy.count(), 1); 4029 QCOMPARE(skipNextTrackSpy.count(), 0); 4030 QCOMPARE(seekSpy.count(), 0); 4031 4032 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 4033 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 4034 4035 QCOMPARE(skipNextTrackSpy.wait(100), false); 4036 4037 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 4038 4039 QCOMPARE(currentTrackChangedSpy.count(), 2); 4040 QCOMPARE(playListModelChangedSpy.count(), 1); 4041 QCOMPARE(playerSourceChangedSpy.count(), 3); 4042 QCOMPARE(urlRoleChangedSpy.count(), 1); 4043 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4044 QCOMPARE(playerStatusChangedSpy.count(), 5); 4045 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4046 QCOMPARE(playerErrorChangedSpy.count(), 0); 4047 QCOMPARE(persistentStateChangedSpy.count(), 0); 4048 QCOMPARE(playerPlaySpy.count(), 1); 4049 QCOMPARE(playerPauseSpy.count(), 0); 4050 QCOMPARE(playerStopSpy.count(), 1); 4051 QCOMPARE(skipNextTrackSpy.count(), 0); 4052 QCOMPARE(seekSpy.count(), 0); 4053 4054 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 4055 4056 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 4057 4058 QCOMPARE(currentTrackChangedSpy.count(), 2); 4059 QCOMPARE(playListModelChangedSpy.count(), 1); 4060 QCOMPARE(playerSourceChangedSpy.count(), 3); 4061 QCOMPARE(urlRoleChangedSpy.count(), 1); 4062 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4063 QCOMPARE(playerStatusChangedSpy.count(), 6); 4064 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4065 QCOMPARE(playerErrorChangedSpy.count(), 0); 4066 QCOMPARE(persistentStateChangedSpy.count(), 0); 4067 QCOMPARE(playerPlaySpy.count(), 1); 4068 QCOMPARE(playerPauseSpy.count(), 0); 4069 QCOMPARE(playerStopSpy.count(), 1); 4070 QCOMPARE(skipNextTrackSpy.count(), 0); 4071 QCOMPARE(seekSpy.count(), 0); 4072 4073 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 4074 4075 QCOMPARE(playerPlaySpy.wait(100), true); 4076 4077 QCOMPARE(currentTrackChangedSpy.count(), 2); 4078 QCOMPARE(playListModelChangedSpy.count(), 1); 4079 QCOMPARE(playerSourceChangedSpy.count(), 3); 4080 QCOMPARE(urlRoleChangedSpy.count(), 1); 4081 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4082 QCOMPARE(playerStatusChangedSpy.count(), 6); 4083 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4084 QCOMPARE(playerErrorChangedSpy.count(), 0); 4085 QCOMPARE(persistentStateChangedSpy.count(), 0); 4086 QCOMPARE(playerPlaySpy.count(), 2); 4087 QCOMPARE(playerPauseSpy.count(), 0); 4088 QCOMPARE(playerStopSpy.count(), 1); 4089 QCOMPARE(skipNextTrackSpy.count(), 0); 4090 QCOMPARE(seekSpy.count(), 0); 4091 4092 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 4093 4094 QCOMPARE(currentTrackChangedSpy.count(), 2); 4095 QCOMPARE(playListModelChangedSpy.count(), 1); 4096 QCOMPARE(playerSourceChangedSpy.count(), 3); 4097 QCOMPARE(urlRoleChangedSpy.count(), 1); 4098 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4099 QCOMPARE(playerStatusChangedSpy.count(), 6); 4100 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 4101 QCOMPARE(playerErrorChangedSpy.count(), 0); 4102 QCOMPARE(persistentStateChangedSpy.count(), 0); 4103 QCOMPARE(playerPlaySpy.count(), 2); 4104 QCOMPARE(playerPauseSpy.count(), 0); 4105 QCOMPARE(playerStopSpy.count(), 1); 4106 QCOMPARE(skipNextTrackSpy.count(), 0); 4107 QCOMPARE(seekSpy.count(), 0); 4108 4109 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 4110 4111 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 4112 4113 QCOMPARE(currentTrackChangedSpy.count(), 2); 4114 QCOMPARE(playListModelChangedSpy.count(), 1); 4115 QCOMPARE(playerSourceChangedSpy.count(), 3); 4116 QCOMPARE(urlRoleChangedSpy.count(), 1); 4117 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4118 QCOMPARE(playerStatusChangedSpy.count(), 7); 4119 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 4120 QCOMPARE(playerErrorChangedSpy.count(), 0); 4121 QCOMPARE(persistentStateChangedSpy.count(), 0); 4122 QCOMPARE(playerPlaySpy.count(), 2); 4123 QCOMPARE(playerPauseSpy.count(), 0); 4124 QCOMPARE(playerStopSpy.count(), 1); 4125 QCOMPARE(skipNextTrackSpy.count(), 0); 4126 QCOMPARE(seekSpy.count(), 0); 4127 4128 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 4129 4130 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 4131 4132 QCOMPARE(currentTrackChangedSpy.count(), 2); 4133 QCOMPARE(playListModelChangedSpy.count(), 1); 4134 QCOMPARE(playerSourceChangedSpy.count(), 3); 4135 QCOMPARE(urlRoleChangedSpy.count(), 1); 4136 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4137 QCOMPARE(playerStatusChangedSpy.count(), 7); 4138 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 4139 QCOMPARE(playerErrorChangedSpy.count(), 0); 4140 QCOMPARE(persistentStateChangedSpy.count(), 0); 4141 QCOMPARE(playerPlaySpy.count(), 2); 4142 QCOMPARE(playerPauseSpy.count(), 0); 4143 QCOMPARE(playerStopSpy.count(), 1); 4144 QCOMPARE(skipNextTrackSpy.count(), 0); 4145 QCOMPARE(seekSpy.count(), 0); 4146 4147 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 4148 4149 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 4150 4151 QCOMPARE(currentTrackChangedSpy.count(), 2); 4152 QCOMPARE(playListModelChangedSpy.count(), 1); 4153 QCOMPARE(playerSourceChangedSpy.count(), 3); 4154 QCOMPARE(urlRoleChangedSpy.count(), 1); 4155 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4156 QCOMPARE(playerStatusChangedSpy.count(), 8); 4157 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 4158 QCOMPARE(playerErrorChangedSpy.count(), 0); 4159 QCOMPARE(persistentStateChangedSpy.count(), 0); 4160 QCOMPARE(playerPlaySpy.count(), 2); 4161 QCOMPARE(playerPauseSpy.count(), 0); 4162 QCOMPARE(playerStopSpy.count(), 1); 4163 QCOMPARE(skipNextTrackSpy.count(), 0); 4164 QCOMPARE(seekSpy.count(), 0); 4165 4166 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 4167 4168 QCOMPARE(skipNextTrackSpy.wait(100), true); 4169 4170 QCOMPARE(currentTrackChangedSpy.count(), 2); 4171 QCOMPARE(playListModelChangedSpy.count(), 1); 4172 QCOMPARE(playerSourceChangedSpy.count(), 3); 4173 QCOMPARE(urlRoleChangedSpy.count(), 1); 4174 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4175 QCOMPARE(playerStatusChangedSpy.count(), 8); 4176 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 4177 QCOMPARE(playerErrorChangedSpy.count(), 0); 4178 QCOMPARE(persistentStateChangedSpy.count(), 0); 4179 QCOMPARE(playerPlaySpy.count(), 2); 4180 QCOMPARE(playerPauseSpy.count(), 0); 4181 QCOMPARE(playerStopSpy.count(), 1); 4182 QCOMPARE(skipNextTrackSpy.count(), 1); 4183 QCOMPARE(seekSpy.count(), 0); 4184 4185 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 4186 4187 QCOMPARE(currentTrackChangedSpy.count(), 3); 4188 QCOMPARE(playListModelChangedSpy.count(), 1); 4189 QCOMPARE(playerSourceChangedSpy.count(), 4); 4190 QCOMPARE(urlRoleChangedSpy.count(), 1); 4191 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4192 QCOMPARE(playerStatusChangedSpy.count(), 8); 4193 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 4194 QCOMPARE(playerErrorChangedSpy.count(), 0); 4195 QCOMPARE(persistentStateChangedSpy.count(), 0); 4196 QCOMPARE(playerPlaySpy.count(), 2); 4197 QCOMPARE(playerPauseSpy.count(), 0); 4198 QCOMPARE(playerStopSpy.count(), 1); 4199 QCOMPARE(skipNextTrackSpy.count(), 1); 4200 QCOMPARE(seekSpy.count(), 0); 4201 4202 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 4203 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 4204 4205 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 4206 4207 QCOMPARE(currentTrackChangedSpy.count(), 3); 4208 QCOMPARE(playListModelChangedSpy.count(), 1); 4209 QCOMPARE(playerSourceChangedSpy.count(), 4); 4210 QCOMPARE(urlRoleChangedSpy.count(), 1); 4211 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4212 QCOMPARE(playerStatusChangedSpy.count(), 9); 4213 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 4214 QCOMPARE(playerErrorChangedSpy.count(), 0); 4215 QCOMPARE(persistentStateChangedSpy.count(), 0); 4216 QCOMPARE(playerPlaySpy.count(), 2); 4217 QCOMPARE(playerPauseSpy.count(), 0); 4218 QCOMPARE(playerStopSpy.count(), 1); 4219 QCOMPARE(skipNextTrackSpy.count(), 1); 4220 QCOMPARE(seekSpy.count(), 0); 4221 4222 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 4223 4224 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 4225 4226 QCOMPARE(currentTrackChangedSpy.count(), 3); 4227 QCOMPARE(playListModelChangedSpy.count(), 1); 4228 QCOMPARE(playerSourceChangedSpy.count(), 4); 4229 QCOMPARE(urlRoleChangedSpy.count(), 1); 4230 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4231 QCOMPARE(playerStatusChangedSpy.count(), 10); 4232 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 4233 QCOMPARE(playerErrorChangedSpy.count(), 0); 4234 QCOMPARE(persistentStateChangedSpy.count(), 0); 4235 QCOMPARE(playerPlaySpy.count(), 2); 4236 QCOMPARE(playerPauseSpy.count(), 0); 4237 QCOMPARE(playerStopSpy.count(), 1); 4238 QCOMPARE(skipNextTrackSpy.count(), 1); 4239 QCOMPARE(seekSpy.count(), 0); 4240 4241 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 4242 4243 QCOMPARE(playerPlaySpy.wait(100), true); 4244 4245 QCOMPARE(currentTrackChangedSpy.count(), 3); 4246 QCOMPARE(playListModelChangedSpy.count(), 1); 4247 QCOMPARE(playerSourceChangedSpy.count(), 4); 4248 QCOMPARE(urlRoleChangedSpy.count(), 1); 4249 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4250 QCOMPARE(playerStatusChangedSpy.count(), 10); 4251 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 4252 QCOMPARE(playerErrorChangedSpy.count(), 0); 4253 QCOMPARE(persistentStateChangedSpy.count(), 0); 4254 QCOMPARE(playerPlaySpy.count(), 3); 4255 QCOMPARE(playerPauseSpy.count(), 0); 4256 QCOMPARE(playerStopSpy.count(), 1); 4257 QCOMPARE(skipNextTrackSpy.count(), 1); 4258 QCOMPARE(seekSpy.count(), 0); 4259 } 4260 4261 void ManageAudioPlayerTest::playLastCase() 4262 { 4263 Elisa::ElisaConfiguration::self()->setDefaults(); 4264 ManageAudioPlayer myPlayer; 4265 QStandardItemModel myPlayList; 4266 4267 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 4268 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 4269 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 4270 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 4271 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 4272 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 4273 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 4274 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 4275 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 4276 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 4277 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 4278 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 4279 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 4280 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 4281 4282 myPlayList.appendRow(new QStandardItem); 4283 myPlayList.appendRow(new QStandardItem); 4284 myPlayList.appendRow(new QStandardItem); 4285 4286 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 4287 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 4288 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 4289 4290 QCOMPARE(currentTrackChangedSpy.count(), 0); 4291 QCOMPARE(playListModelChangedSpy.count(), 0); 4292 QCOMPARE(playerSourceChangedSpy.count(), 0); 4293 QCOMPARE(urlRoleChangedSpy.count(), 0); 4294 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4295 QCOMPARE(playerStatusChangedSpy.count(), 0); 4296 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4297 QCOMPARE(playerErrorChangedSpy.count(), 0); 4298 QCOMPARE(persistentStateChangedSpy.count(), 0); 4299 QCOMPARE(playerPlaySpy.count(), 0); 4300 QCOMPARE(playerPauseSpy.count(), 0); 4301 QCOMPARE(playerStopSpy.count(), 0); 4302 QCOMPARE(skipNextTrackSpy.count(), 0); 4303 QCOMPARE(seekSpy.count(), 0); 4304 4305 myPlayer.setPlayListModel(&myPlayList); 4306 4307 QCOMPARE(currentTrackChangedSpy.count(), 0); 4308 QCOMPARE(playListModelChangedSpy.count(), 1); 4309 QCOMPARE(playerSourceChangedSpy.count(), 0); 4310 QCOMPARE(urlRoleChangedSpy.count(), 0); 4311 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4312 QCOMPARE(playerStatusChangedSpy.count(), 0); 4313 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4314 QCOMPARE(playerErrorChangedSpy.count(), 0); 4315 QCOMPARE(persistentStateChangedSpy.count(), 0); 4316 QCOMPARE(playerPlaySpy.count(), 0); 4317 QCOMPARE(playerPauseSpy.count(), 0); 4318 QCOMPARE(playerStopSpy.count(), 0); 4319 QCOMPARE(skipNextTrackSpy.count(), 0); 4320 QCOMPARE(seekSpy.count(), 0); 4321 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4322 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4323 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4324 4325 myPlayer.setCurrentTrack(myPlayList.index(2, 0)); 4326 4327 QCOMPARE(currentTrackChangedSpy.count(), 1); 4328 QCOMPARE(playListModelChangedSpy.count(), 1); 4329 QCOMPARE(playerSourceChangedSpy.count(), 1); 4330 QCOMPARE(urlRoleChangedSpy.count(), 0); 4331 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4332 QCOMPARE(playerStatusChangedSpy.count(), 0); 4333 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4334 QCOMPARE(playerErrorChangedSpy.count(), 0); 4335 QCOMPARE(persistentStateChangedSpy.count(), 0); 4336 QCOMPARE(playerPlaySpy.count(), 0); 4337 QCOMPARE(playerPauseSpy.count(), 0); 4338 QCOMPARE(playerStopSpy.count(), 0); 4339 QCOMPARE(skipNextTrackSpy.count(), 0); 4340 QCOMPARE(seekSpy.count(), 0); 4341 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4342 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4343 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4344 4345 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(2, 0))); 4346 4347 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 4348 4349 QCOMPARE(currentTrackChangedSpy.count(), 1); 4350 QCOMPARE(playListModelChangedSpy.count(), 1); 4351 QCOMPARE(playerSourceChangedSpy.count(), 2); 4352 QCOMPARE(urlRoleChangedSpy.count(), 1); 4353 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4354 QCOMPARE(playerStatusChangedSpy.count(), 0); 4355 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4356 QCOMPARE(playerErrorChangedSpy.count(), 0); 4357 QCOMPARE(persistentStateChangedSpy.count(), 0); 4358 QCOMPARE(playerPlaySpy.count(), 0); 4359 QCOMPARE(playerPauseSpy.count(), 0); 4360 QCOMPARE(playerStopSpy.count(), 0); 4361 QCOMPARE(skipNextTrackSpy.count(), 0); 4362 QCOMPARE(seekSpy.count(), 0); 4363 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4364 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4365 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4366 4367 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 4368 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///3.mp3"))); 4369 4370 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 4371 4372 QCOMPARE(currentTrackChangedSpy.count(), 1); 4373 QCOMPARE(playListModelChangedSpy.count(), 1); 4374 QCOMPARE(playerSourceChangedSpy.count(), 2); 4375 QCOMPARE(urlRoleChangedSpy.count(), 1); 4376 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4377 QCOMPARE(playerStatusChangedSpy.count(), 0); 4378 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4379 QCOMPARE(playerErrorChangedSpy.count(), 0); 4380 QCOMPARE(persistentStateChangedSpy.count(), 0); 4381 QCOMPARE(playerPlaySpy.count(), 0); 4382 QCOMPARE(playerPauseSpy.count(), 0); 4383 QCOMPARE(playerStopSpy.count(), 0); 4384 QCOMPARE(skipNextTrackSpy.count(), 0); 4385 QCOMPARE(seekSpy.count(), 0); 4386 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4387 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4388 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4389 4390 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 4391 4392 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 4393 4394 QCOMPARE(currentTrackChangedSpy.count(), 1); 4395 QCOMPARE(playListModelChangedSpy.count(), 1); 4396 QCOMPARE(playerSourceChangedSpy.count(), 2); 4397 QCOMPARE(urlRoleChangedSpy.count(), 1); 4398 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4399 QCOMPARE(playerStatusChangedSpy.count(), 1); 4400 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4401 QCOMPARE(playerErrorChangedSpy.count(), 0); 4402 QCOMPARE(persistentStateChangedSpy.count(), 0); 4403 QCOMPARE(playerPlaySpy.count(), 0); 4404 QCOMPARE(playerPauseSpy.count(), 0); 4405 QCOMPARE(playerStopSpy.count(), 0); 4406 QCOMPARE(skipNextTrackSpy.count(), 0); 4407 QCOMPARE(seekSpy.count(), 0); 4408 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4409 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4410 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4411 4412 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 4413 4414 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 4415 4416 QCOMPARE(currentTrackChangedSpy.count(), 1); 4417 QCOMPARE(playListModelChangedSpy.count(), 1); 4418 QCOMPARE(playerSourceChangedSpy.count(), 2); 4419 QCOMPARE(urlRoleChangedSpy.count(), 1); 4420 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4421 QCOMPARE(playerStatusChangedSpy.count(), 1); 4422 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4423 QCOMPARE(playerErrorChangedSpy.count(), 0); 4424 QCOMPARE(persistentStateChangedSpy.count(), 0); 4425 QCOMPARE(playerPlaySpy.count(), 0); 4426 QCOMPARE(playerPauseSpy.count(), 0); 4427 QCOMPARE(playerStopSpy.count(), 0); 4428 QCOMPARE(skipNextTrackSpy.count(), 0); 4429 QCOMPARE(seekSpy.count(), 0); 4430 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4431 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4432 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4433 4434 myPlayer.setPlayerError(QMediaPlayer::NoError); 4435 4436 QCOMPARE(currentTrackChangedSpy.count(), 1); 4437 QCOMPARE(playListModelChangedSpy.count(), 1); 4438 QCOMPARE(playerSourceChangedSpy.count(), 2); 4439 QCOMPARE(urlRoleChangedSpy.count(), 1); 4440 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4441 QCOMPARE(playerStatusChangedSpy.count(), 1); 4442 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4443 QCOMPARE(playerErrorChangedSpy.count(), 0); 4444 QCOMPARE(persistentStateChangedSpy.count(), 0); 4445 QCOMPARE(playerPlaySpy.count(), 0); 4446 QCOMPARE(playerPauseSpy.count(), 0); 4447 QCOMPARE(playerStopSpy.count(), 0); 4448 QCOMPARE(skipNextTrackSpy.count(), 0); 4449 QCOMPARE(seekSpy.count(), 0); 4450 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4451 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4452 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4453 4454 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 4455 4456 QCOMPARE(currentTrackChangedSpy.count(), 1); 4457 QCOMPARE(playListModelChangedSpy.count(), 1); 4458 QCOMPARE(playerSourceChangedSpy.count(), 2); 4459 QCOMPARE(urlRoleChangedSpy.count(), 1); 4460 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4461 QCOMPARE(playerStatusChangedSpy.count(), 2); 4462 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4463 QCOMPARE(playerErrorChangedSpy.count(), 0); 4464 QCOMPARE(persistentStateChangedSpy.count(), 0); 4465 QCOMPARE(playerPlaySpy.count(), 0); 4466 QCOMPARE(playerPauseSpy.count(), 0); 4467 QCOMPARE(playerStopSpy.count(), 0); 4468 QCOMPARE(skipNextTrackSpy.count(), 0); 4469 QCOMPARE(seekSpy.count(), 0); 4470 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4471 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4472 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4473 4474 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 4475 4476 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 4477 4478 QCOMPARE(currentTrackChangedSpy.count(), 1); 4479 QCOMPARE(playListModelChangedSpy.count(), 1); 4480 QCOMPARE(playerSourceChangedSpy.count(), 2); 4481 QCOMPARE(urlRoleChangedSpy.count(), 1); 4482 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4483 QCOMPARE(playerStatusChangedSpy.count(), 3); 4484 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4485 QCOMPARE(playerErrorChangedSpy.count(), 0); 4486 QCOMPARE(persistentStateChangedSpy.count(), 0); 4487 QCOMPARE(playerPlaySpy.count(), 0); 4488 QCOMPARE(playerPauseSpy.count(), 0); 4489 QCOMPARE(playerStopSpy.count(), 0); 4490 QCOMPARE(skipNextTrackSpy.count(), 0); 4491 QCOMPARE(seekSpy.count(), 0); 4492 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4493 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4494 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4495 4496 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 4497 4498 myPlayer.playPause(); 4499 4500 QCOMPARE(currentTrackChangedSpy.count(), 1); 4501 QCOMPARE(playListModelChangedSpy.count(), 1); 4502 QCOMPARE(playerSourceChangedSpy.count(), 2); 4503 QCOMPARE(urlRoleChangedSpy.count(), 1); 4504 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4505 QCOMPARE(playerStatusChangedSpy.count(), 3); 4506 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4507 QCOMPARE(playerErrorChangedSpy.count(), 0); 4508 QCOMPARE(persistentStateChangedSpy.count(), 0); 4509 QCOMPARE(playerPlaySpy.count(), 0); 4510 QCOMPARE(playerPauseSpy.count(), 0); 4511 QCOMPARE(playerStopSpy.count(), 0); 4512 QCOMPARE(skipNextTrackSpy.count(), 0); 4513 QCOMPARE(seekSpy.count(), 0); 4514 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4515 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4516 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4517 4518 QCOMPARE(playerPlaySpy.wait(), true); 4519 4520 QCOMPARE(currentTrackChangedSpy.count(), 1); 4521 QCOMPARE(playListModelChangedSpy.count(), 1); 4522 QCOMPARE(playerSourceChangedSpy.count(), 2); 4523 QCOMPARE(urlRoleChangedSpy.count(), 1); 4524 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4525 QCOMPARE(playerStatusChangedSpy.count(), 3); 4526 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4527 QCOMPARE(playerErrorChangedSpy.count(), 0); 4528 QCOMPARE(persistentStateChangedSpy.count(), 0); 4529 QCOMPARE(playerPlaySpy.count(), 1); 4530 QCOMPARE(playerPauseSpy.count(), 0); 4531 QCOMPARE(playerStopSpy.count(), 0); 4532 QCOMPARE(skipNextTrackSpy.count(), 0); 4533 QCOMPARE(seekSpy.count(), 0); 4534 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4535 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4536 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4537 4538 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 4539 4540 QCOMPARE(currentTrackChangedSpy.count(), 1); 4541 QCOMPARE(playListModelChangedSpy.count(), 1); 4542 QCOMPARE(playerSourceChangedSpy.count(), 2); 4543 QCOMPARE(urlRoleChangedSpy.count(), 1); 4544 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4545 QCOMPARE(playerStatusChangedSpy.count(), 3); 4546 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 4547 QCOMPARE(playerErrorChangedSpy.count(), 0); 4548 QCOMPARE(persistentStateChangedSpy.count(), 0); 4549 QCOMPARE(playerPlaySpy.count(), 1); 4550 QCOMPARE(playerPauseSpy.count(), 0); 4551 QCOMPARE(playerStopSpy.count(), 0); 4552 QCOMPARE(skipNextTrackSpy.count(), 0); 4553 QCOMPARE(seekSpy.count(), 0); 4554 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4555 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4556 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 4557 4558 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 4559 4560 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 4561 4562 QCOMPARE(currentTrackChangedSpy.count(), 1); 4563 QCOMPARE(playListModelChangedSpy.count(), 1); 4564 QCOMPARE(playerSourceChangedSpy.count(), 2); 4565 QCOMPARE(urlRoleChangedSpy.count(), 1); 4566 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4567 QCOMPARE(playerStatusChangedSpy.count(), 4); 4568 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 4569 QCOMPARE(playerErrorChangedSpy.count(), 0); 4570 QCOMPARE(persistentStateChangedSpy.count(), 0); 4571 QCOMPARE(playerPlaySpy.count(), 1); 4572 QCOMPARE(playerPauseSpy.count(), 0); 4573 QCOMPARE(playerStopSpy.count(), 0); 4574 QCOMPARE(skipNextTrackSpy.count(), 0); 4575 QCOMPARE(seekSpy.count(), 0); 4576 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4577 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4578 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 4579 4580 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 4581 4582 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 4583 4584 QCOMPARE(currentTrackChangedSpy.count(), 1); 4585 QCOMPARE(playListModelChangedSpy.count(), 1); 4586 QCOMPARE(playerSourceChangedSpy.count(), 2); 4587 QCOMPARE(urlRoleChangedSpy.count(), 1); 4588 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4589 QCOMPARE(playerStatusChangedSpy.count(), 4); 4590 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4591 QCOMPARE(playerErrorChangedSpy.count(), 0); 4592 QCOMPARE(persistentStateChangedSpy.count(), 0); 4593 QCOMPARE(playerPlaySpy.count(), 1); 4594 QCOMPARE(playerPauseSpy.count(), 0); 4595 QCOMPARE(playerStopSpy.count(), 0); 4596 QCOMPARE(skipNextTrackSpy.count(), 0); 4597 QCOMPARE(seekSpy.count(), 0); 4598 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4599 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4600 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4601 4602 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 4603 4604 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 4605 4606 QCOMPARE(currentTrackChangedSpy.count(), 1); 4607 QCOMPARE(playListModelChangedSpy.count(), 1); 4608 QCOMPARE(playerSourceChangedSpy.count(), 2); 4609 QCOMPARE(urlRoleChangedSpy.count(), 1); 4610 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4611 QCOMPARE(playerStatusChangedSpy.count(), 5); 4612 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4613 QCOMPARE(playerErrorChangedSpy.count(), 0); 4614 QCOMPARE(persistentStateChangedSpy.count(), 0); 4615 QCOMPARE(playerPlaySpy.count(), 1); 4616 QCOMPARE(playerPauseSpy.count(), 0); 4617 QCOMPARE(playerStopSpy.count(), 0); 4618 QCOMPARE(skipNextTrackSpy.count(), 0); 4619 QCOMPARE(seekSpy.count(), 0); 4620 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4621 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4622 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4623 4624 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 4625 4626 QCOMPARE(skipNextTrackSpy.wait(100), true); 4627 4628 QCOMPARE(currentTrackChangedSpy.count(), 1); 4629 QCOMPARE(playListModelChangedSpy.count(), 1); 4630 QCOMPARE(playerSourceChangedSpy.count(), 2); 4631 QCOMPARE(urlRoleChangedSpy.count(), 1); 4632 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4633 QCOMPARE(playerStatusChangedSpy.count(), 5); 4634 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4635 QCOMPARE(playerErrorChangedSpy.count(), 0); 4636 QCOMPARE(persistentStateChangedSpy.count(), 0); 4637 QCOMPARE(playerPlaySpy.count(), 1); 4638 QCOMPARE(playerPauseSpy.count(), 0); 4639 QCOMPARE(playerStopSpy.count(), 0); 4640 QCOMPARE(skipNextTrackSpy.count(), 1); 4641 QCOMPARE(seekSpy.count(), 0); 4642 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4643 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4644 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4645 4646 myPlayer.playListFinished(); 4647 4648 QCOMPARE(currentTrackChangedSpy.count(), 1); 4649 QCOMPARE(playListModelChangedSpy.count(), 1); 4650 QCOMPARE(playerSourceChangedSpy.count(), 2); 4651 QCOMPARE(urlRoleChangedSpy.count(), 1); 4652 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4653 QCOMPARE(playerStatusChangedSpy.count(), 5); 4654 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4655 QCOMPARE(playerErrorChangedSpy.count(), 0); 4656 QCOMPARE(persistentStateChangedSpy.count(), 0); 4657 QCOMPARE(playerPlaySpy.count(), 1); 4658 QCOMPARE(playerPauseSpy.count(), 0); 4659 QCOMPARE(playerStopSpy.count(), 0); 4660 QCOMPARE(skipNextTrackSpy.count(), 1); 4661 QCOMPARE(seekSpy.count(), 0); 4662 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4663 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4664 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4665 4666 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 4667 4668 QCOMPARE(currentTrackChangedSpy.count(), 2); 4669 QCOMPARE(playListModelChangedSpy.count(), 1); 4670 QCOMPARE(playerSourceChangedSpy.count(), 3); 4671 QCOMPARE(urlRoleChangedSpy.count(), 1); 4672 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4673 QCOMPARE(playerStatusChangedSpy.count(), 5); 4674 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4675 QCOMPARE(playerErrorChangedSpy.count(), 0); 4676 QCOMPARE(persistentStateChangedSpy.count(), 0); 4677 QCOMPARE(playerPlaySpy.count(), 1); 4678 QCOMPARE(playerPauseSpy.count(), 0); 4679 QCOMPARE(playerStopSpy.count(), 0); 4680 QCOMPARE(skipNextTrackSpy.count(), 1); 4681 QCOMPARE(seekSpy.count(), 0); 4682 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4683 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4684 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4685 4686 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 4687 4688 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 4689 4690 QCOMPARE(currentTrackChangedSpy.count(), 2); 4691 QCOMPARE(playListModelChangedSpy.count(), 1); 4692 QCOMPARE(playerSourceChangedSpy.count(), 3); 4693 QCOMPARE(urlRoleChangedSpy.count(), 1); 4694 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4695 QCOMPARE(playerStatusChangedSpy.count(), 6); 4696 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4697 QCOMPARE(playerErrorChangedSpy.count(), 0); 4698 QCOMPARE(persistentStateChangedSpy.count(), 0); 4699 QCOMPARE(playerPlaySpy.count(), 1); 4700 QCOMPARE(playerPauseSpy.count(), 0); 4701 QCOMPARE(playerStopSpy.count(), 0); 4702 QCOMPARE(skipNextTrackSpy.count(), 1); 4703 QCOMPARE(seekSpy.count(), 0); 4704 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4705 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4706 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4707 4708 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 4709 4710 QCOMPARE(playerPlaySpy.wait(100), false); 4711 4712 QCOMPARE(currentTrackChangedSpy.count(), 2); 4713 QCOMPARE(playListModelChangedSpy.count(), 1); 4714 QCOMPARE(playerSourceChangedSpy.count(), 3); 4715 QCOMPARE(urlRoleChangedSpy.count(), 1); 4716 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4717 QCOMPARE(playerStatusChangedSpy.count(), 6); 4718 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 4719 QCOMPARE(playerErrorChangedSpy.count(), 0); 4720 QCOMPARE(persistentStateChangedSpy.count(), 0); 4721 QCOMPARE(playerPlaySpy.count(), 1); 4722 QCOMPARE(playerPauseSpy.count(), 0); 4723 QCOMPARE(playerStopSpy.count(), 0); 4724 QCOMPARE(skipNextTrackSpy.count(), 1); 4725 QCOMPARE(seekSpy.count(), 0); 4726 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4727 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4728 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4729 } 4730 4731 void ManageAudioPlayerTest::playSingleAndClearPlayListTrack() 4732 { 4733 Elisa::ElisaConfiguration::self()->setDefaults(); 4734 ManageAudioPlayer myPlayer; 4735 QStandardItemModel myPlayList; 4736 4737 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 4738 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 4739 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 4740 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 4741 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 4742 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 4743 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 4744 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 4745 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 4746 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 4747 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 4748 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 4749 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 4750 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 4751 4752 myPlayList.appendRow(new QStandardItem); 4753 4754 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 4755 4756 QCOMPARE(currentTrackChangedSpy.count(), 0); 4757 QCOMPARE(playListModelChangedSpy.count(), 0); 4758 QCOMPARE(playerSourceChangedSpy.count(), 0); 4759 QCOMPARE(urlRoleChangedSpy.count(), 0); 4760 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4761 QCOMPARE(playerStatusChangedSpy.count(), 0); 4762 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4763 QCOMPARE(playerErrorChangedSpy.count(), 0); 4764 QCOMPARE(persistentStateChangedSpy.count(), 0); 4765 QCOMPARE(playerPlaySpy.count(), 0); 4766 QCOMPARE(playerPauseSpy.count(), 0); 4767 QCOMPARE(playerStopSpy.count(), 0); 4768 QCOMPARE(skipNextTrackSpy.count(), 0); 4769 QCOMPARE(seekSpy.count(), 0); 4770 4771 myPlayer.setPlayListModel(&myPlayList); 4772 4773 QCOMPARE(currentTrackChangedSpy.count(), 0); 4774 QCOMPARE(playListModelChangedSpy.count(), 1); 4775 QCOMPARE(playerSourceChangedSpy.count(), 0); 4776 QCOMPARE(urlRoleChangedSpy.count(), 0); 4777 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4778 QCOMPARE(playerStatusChangedSpy.count(), 0); 4779 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4780 QCOMPARE(playerErrorChangedSpy.count(), 0); 4781 QCOMPARE(persistentStateChangedSpy.count(), 0); 4782 QCOMPARE(playerPlaySpy.count(), 0); 4783 QCOMPARE(playerPauseSpy.count(), 0); 4784 QCOMPARE(playerStopSpy.count(), 0); 4785 QCOMPARE(skipNextTrackSpy.count(), 0); 4786 QCOMPARE(seekSpy.count(), 0); 4787 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4788 4789 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 4790 4791 QCOMPARE(currentTrackChangedSpy.count(), 1); 4792 QCOMPARE(playListModelChangedSpy.count(), 1); 4793 QCOMPARE(playerSourceChangedSpy.count(), 1); 4794 QCOMPARE(urlRoleChangedSpy.count(), 0); 4795 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4796 QCOMPARE(playerStatusChangedSpy.count(), 0); 4797 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4798 QCOMPARE(playerErrorChangedSpy.count(), 0); 4799 QCOMPARE(persistentStateChangedSpy.count(), 0); 4800 QCOMPARE(playerPlaySpy.count(), 0); 4801 QCOMPARE(playerPauseSpy.count(), 0); 4802 QCOMPARE(playerStopSpy.count(), 0); 4803 QCOMPARE(skipNextTrackSpy.count(), 0); 4804 QCOMPARE(seekSpy.count(), 0); 4805 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4806 4807 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 4808 4809 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 4810 4811 QCOMPARE(currentTrackChangedSpy.count(), 1); 4812 QCOMPARE(playListModelChangedSpy.count(), 1); 4813 QCOMPARE(playerSourceChangedSpy.count(), 2); 4814 QCOMPARE(urlRoleChangedSpy.count(), 1); 4815 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 4816 QCOMPARE(playerStatusChangedSpy.count(), 0); 4817 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4818 QCOMPARE(playerErrorChangedSpy.count(), 0); 4819 QCOMPARE(persistentStateChangedSpy.count(), 0); 4820 QCOMPARE(playerPlaySpy.count(), 0); 4821 QCOMPARE(playerPauseSpy.count(), 0); 4822 QCOMPARE(playerStopSpy.count(), 0); 4823 QCOMPARE(skipNextTrackSpy.count(), 0); 4824 QCOMPARE(seekSpy.count(), 0); 4825 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4826 4827 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 4828 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 4829 4830 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 4831 4832 QCOMPARE(currentTrackChangedSpy.count(), 1); 4833 QCOMPARE(playListModelChangedSpy.count(), 1); 4834 QCOMPARE(playerSourceChangedSpy.count(), 2); 4835 QCOMPARE(urlRoleChangedSpy.count(), 1); 4836 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4837 QCOMPARE(playerStatusChangedSpy.count(), 0); 4838 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4839 QCOMPARE(playerErrorChangedSpy.count(), 0); 4840 QCOMPARE(persistentStateChangedSpy.count(), 0); 4841 QCOMPARE(playerPlaySpy.count(), 0); 4842 QCOMPARE(playerPauseSpy.count(), 0); 4843 QCOMPARE(playerStopSpy.count(), 0); 4844 QCOMPARE(skipNextTrackSpy.count(), 0); 4845 QCOMPARE(seekSpy.count(), 0); 4846 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4847 4848 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 4849 4850 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 4851 4852 QCOMPARE(currentTrackChangedSpy.count(), 1); 4853 QCOMPARE(playListModelChangedSpy.count(), 1); 4854 QCOMPARE(playerSourceChangedSpy.count(), 2); 4855 QCOMPARE(urlRoleChangedSpy.count(), 1); 4856 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4857 QCOMPARE(playerStatusChangedSpy.count(), 1); 4858 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4859 QCOMPARE(playerErrorChangedSpy.count(), 0); 4860 QCOMPARE(persistentStateChangedSpy.count(), 0); 4861 QCOMPARE(playerPlaySpy.count(), 0); 4862 QCOMPARE(playerPauseSpy.count(), 0); 4863 QCOMPARE(playerStopSpy.count(), 0); 4864 QCOMPARE(skipNextTrackSpy.count(), 0); 4865 QCOMPARE(seekSpy.count(), 0); 4866 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4867 4868 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 4869 4870 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 4871 4872 QCOMPARE(currentTrackChangedSpy.count(), 1); 4873 QCOMPARE(playListModelChangedSpy.count(), 1); 4874 QCOMPARE(playerSourceChangedSpy.count(), 2); 4875 QCOMPARE(urlRoleChangedSpy.count(), 1); 4876 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4877 QCOMPARE(playerStatusChangedSpy.count(), 1); 4878 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4879 QCOMPARE(playerErrorChangedSpy.count(), 0); 4880 QCOMPARE(persistentStateChangedSpy.count(), 0); 4881 QCOMPARE(playerPlaySpy.count(), 0); 4882 QCOMPARE(playerPauseSpy.count(), 0); 4883 QCOMPARE(playerStopSpy.count(), 0); 4884 QCOMPARE(skipNextTrackSpy.count(), 0); 4885 QCOMPARE(seekSpy.count(), 0); 4886 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4887 4888 myPlayer.setPlayerError(QMediaPlayer::NoError); 4889 4890 QCOMPARE(currentTrackChangedSpy.count(), 1); 4891 QCOMPARE(playListModelChangedSpy.count(), 1); 4892 QCOMPARE(playerSourceChangedSpy.count(), 2); 4893 QCOMPARE(urlRoleChangedSpy.count(), 1); 4894 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4895 QCOMPARE(playerStatusChangedSpy.count(), 1); 4896 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4897 QCOMPARE(playerErrorChangedSpy.count(), 0); 4898 QCOMPARE(persistentStateChangedSpy.count(), 0); 4899 QCOMPARE(playerPlaySpy.count(), 0); 4900 QCOMPARE(playerPauseSpy.count(), 0); 4901 QCOMPARE(playerStopSpy.count(), 0); 4902 QCOMPARE(skipNextTrackSpy.count(), 0); 4903 QCOMPARE(seekSpy.count(), 0); 4904 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4905 4906 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 4907 4908 QCOMPARE(currentTrackChangedSpy.count(), 1); 4909 QCOMPARE(playListModelChangedSpy.count(), 1); 4910 QCOMPARE(playerSourceChangedSpy.count(), 2); 4911 QCOMPARE(urlRoleChangedSpy.count(), 1); 4912 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4913 QCOMPARE(playerStatusChangedSpy.count(), 2); 4914 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4915 QCOMPARE(playerErrorChangedSpy.count(), 0); 4916 QCOMPARE(persistentStateChangedSpy.count(), 0); 4917 QCOMPARE(playerPlaySpy.count(), 0); 4918 QCOMPARE(playerPauseSpy.count(), 0); 4919 QCOMPARE(playerStopSpy.count(), 0); 4920 QCOMPARE(skipNextTrackSpy.count(), 0); 4921 QCOMPARE(seekSpy.count(), 0); 4922 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4923 4924 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 4925 4926 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 4927 4928 QCOMPARE(currentTrackChangedSpy.count(), 1); 4929 QCOMPARE(playListModelChangedSpy.count(), 1); 4930 QCOMPARE(playerSourceChangedSpy.count(), 2); 4931 QCOMPARE(urlRoleChangedSpy.count(), 1); 4932 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4933 QCOMPARE(playerStatusChangedSpy.count(), 3); 4934 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4935 QCOMPARE(playerErrorChangedSpy.count(), 0); 4936 QCOMPARE(persistentStateChangedSpy.count(), 0); 4937 QCOMPARE(playerPlaySpy.count(), 0); 4938 QCOMPARE(playerPauseSpy.count(), 0); 4939 QCOMPARE(playerStopSpy.count(), 0); 4940 QCOMPARE(skipNextTrackSpy.count(), 0); 4941 QCOMPARE(seekSpy.count(), 0); 4942 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4943 4944 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 4945 4946 myPlayer.playPause(); 4947 4948 QCOMPARE(currentTrackChangedSpy.count(), 1); 4949 QCOMPARE(playListModelChangedSpy.count(), 1); 4950 QCOMPARE(playerSourceChangedSpy.count(), 2); 4951 QCOMPARE(urlRoleChangedSpy.count(), 1); 4952 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4953 QCOMPARE(playerStatusChangedSpy.count(), 3); 4954 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4955 QCOMPARE(playerErrorChangedSpy.count(), 0); 4956 QCOMPARE(persistentStateChangedSpy.count(), 0); 4957 QCOMPARE(playerPlaySpy.count(), 0); 4958 QCOMPARE(playerPauseSpy.count(), 0); 4959 QCOMPARE(playerStopSpy.count(), 0); 4960 QCOMPARE(skipNextTrackSpy.count(), 0); 4961 QCOMPARE(seekSpy.count(), 0); 4962 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4963 4964 QCOMPARE(playerPlaySpy.wait(), true); 4965 4966 QCOMPARE(currentTrackChangedSpy.count(), 1); 4967 QCOMPARE(playListModelChangedSpy.count(), 1); 4968 QCOMPARE(playerSourceChangedSpy.count(), 2); 4969 QCOMPARE(urlRoleChangedSpy.count(), 1); 4970 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4971 QCOMPARE(playerStatusChangedSpy.count(), 3); 4972 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 4973 QCOMPARE(playerErrorChangedSpy.count(), 0); 4974 QCOMPARE(persistentStateChangedSpy.count(), 0); 4975 QCOMPARE(playerPlaySpy.count(), 1); 4976 QCOMPARE(playerPauseSpy.count(), 0); 4977 QCOMPARE(playerStopSpy.count(), 0); 4978 QCOMPARE(skipNextTrackSpy.count(), 0); 4979 QCOMPARE(seekSpy.count(), 0); 4980 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 4981 4982 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 4983 4984 QCOMPARE(currentTrackChangedSpy.count(), 1); 4985 QCOMPARE(playListModelChangedSpy.count(), 1); 4986 QCOMPARE(playerSourceChangedSpy.count(), 2); 4987 QCOMPARE(urlRoleChangedSpy.count(), 1); 4988 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 4989 QCOMPARE(playerStatusChangedSpy.count(), 3); 4990 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 4991 QCOMPARE(playerErrorChangedSpy.count(), 0); 4992 QCOMPARE(persistentStateChangedSpy.count(), 0); 4993 QCOMPARE(playerPlaySpy.count(), 1); 4994 QCOMPARE(playerPauseSpy.count(), 0); 4995 QCOMPARE(playerStopSpy.count(), 0); 4996 QCOMPARE(skipNextTrackSpy.count(), 0); 4997 QCOMPARE(seekSpy.count(), 0); 4998 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 4999 5000 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 5001 5002 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 5003 5004 QCOMPARE(currentTrackChangedSpy.count(), 1); 5005 QCOMPARE(playListModelChangedSpy.count(), 1); 5006 QCOMPARE(playerSourceChangedSpy.count(), 2); 5007 QCOMPARE(urlRoleChangedSpy.count(), 1); 5008 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5009 QCOMPARE(playerStatusChangedSpy.count(), 4); 5010 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 5011 QCOMPARE(playerErrorChangedSpy.count(), 0); 5012 QCOMPARE(persistentStateChangedSpy.count(), 0); 5013 QCOMPARE(playerPlaySpy.count(), 1); 5014 QCOMPARE(playerPauseSpy.count(), 0); 5015 QCOMPARE(playerStopSpy.count(), 0); 5016 QCOMPARE(skipNextTrackSpy.count(), 0); 5017 QCOMPARE(seekSpy.count(), 0); 5018 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 5019 5020 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 5021 5022 myPlayer.setCurrentTrack({}); 5023 5024 QCOMPARE(currentTrackChangedSpy.count(), 2); 5025 QCOMPARE(playListModelChangedSpy.count(), 1); 5026 QCOMPARE(playerSourceChangedSpy.count(), 2); 5027 QCOMPARE(urlRoleChangedSpy.count(), 1); 5028 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5029 QCOMPARE(playerStatusChangedSpy.count(), 4); 5030 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 5031 QCOMPARE(playerErrorChangedSpy.count(), 0); 5032 QCOMPARE(persistentStateChangedSpy.count(), 0); 5033 QCOMPARE(playerPlaySpy.count(), 1); 5034 QCOMPARE(playerPauseSpy.count(), 0); 5035 QCOMPARE(playerStopSpy.count(), 0); 5036 QCOMPARE(skipNextTrackSpy.count(), 0); 5037 QCOMPARE(seekSpy.count(), 0); 5038 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 5039 5040 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex{}); 5041 5042 QCOMPARE(playerStopSpy.wait(300), true); 5043 5044 QCOMPARE(currentTrackChangedSpy.count(), 2); 5045 QCOMPARE(playListModelChangedSpy.count(), 1); 5046 QCOMPARE(playerSourceChangedSpy.count(), 2); 5047 QCOMPARE(urlRoleChangedSpy.count(), 1); 5048 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5049 QCOMPARE(playerStatusChangedSpy.count(), 4); 5050 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 5051 QCOMPARE(playerErrorChangedSpy.count(), 0); 5052 QCOMPARE(persistentStateChangedSpy.count(), 0); 5053 QCOMPARE(playerPlaySpy.count(), 1); 5054 QCOMPARE(playerPauseSpy.count(), 0); 5055 QCOMPARE(playerStopSpy.count(), 1); 5056 QCOMPARE(skipNextTrackSpy.count(), 0); 5057 QCOMPARE(seekSpy.count(), 0); 5058 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 5059 5060 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 5061 5062 QCOMPARE(currentTrackChangedSpy.count(), 2); 5063 QCOMPARE(playListModelChangedSpy.count(), 1); 5064 QCOMPARE(playerSourceChangedSpy.count(), 3); 5065 QCOMPARE(urlRoleChangedSpy.count(), 1); 5066 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5067 QCOMPARE(playerStatusChangedSpy.count(), 4); 5068 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5069 QCOMPARE(playerErrorChangedSpy.count(), 0); 5070 QCOMPARE(persistentStateChangedSpy.count(), 0); 5071 QCOMPARE(playerPlaySpy.count(), 1); 5072 QCOMPARE(playerPauseSpy.count(), 0); 5073 QCOMPARE(playerStopSpy.count(), 1); 5074 QCOMPARE(skipNextTrackSpy.count(), 0); 5075 QCOMPARE(seekSpy.count(), 0); 5076 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5077 5078 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 5079 5080 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 5081 5082 QCOMPARE(currentTrackChangedSpy.count(), 3); 5083 QCOMPARE(playListModelChangedSpy.count(), 1); 5084 QCOMPARE(playerSourceChangedSpy.count(), 4); 5085 QCOMPARE(urlRoleChangedSpy.count(), 1); 5086 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5087 QCOMPARE(playerStatusChangedSpy.count(), 4); 5088 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5089 QCOMPARE(playerErrorChangedSpy.count(), 0); 5090 QCOMPARE(persistentStateChangedSpy.count(), 0); 5091 QCOMPARE(playerPlaySpy.count(), 1); 5092 QCOMPARE(playerPauseSpy.count(), 0); 5093 QCOMPARE(playerStopSpy.count(), 1); 5094 QCOMPARE(skipNextTrackSpy.count(), 0); 5095 QCOMPARE(seekSpy.count(), 0); 5096 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5097 5098 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 5099 5100 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 5101 5102 QCOMPARE(currentTrackChangedSpy.count(), 3); 5103 QCOMPARE(playListModelChangedSpy.count(), 1); 5104 QCOMPARE(playerSourceChangedSpy.count(), 4); 5105 QCOMPARE(urlRoleChangedSpy.count(), 1); 5106 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5107 QCOMPARE(playerStatusChangedSpy.count(), 5); 5108 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5109 QCOMPARE(playerErrorChangedSpy.count(), 0); 5110 QCOMPARE(persistentStateChangedSpy.count(), 0); 5111 QCOMPARE(playerPlaySpy.count(), 1); 5112 QCOMPARE(playerPauseSpy.count(), 0); 5113 QCOMPARE(playerStopSpy.count(), 1); 5114 QCOMPARE(skipNextTrackSpy.count(), 0); 5115 QCOMPARE(seekSpy.count(), 0); 5116 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5117 5118 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 5119 5120 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 5121 5122 QCOMPARE(currentTrackChangedSpy.count(), 3); 5123 QCOMPARE(playListModelChangedSpy.count(), 1); 5124 QCOMPARE(playerSourceChangedSpy.count(), 4); 5125 QCOMPARE(urlRoleChangedSpy.count(), 1); 5126 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5127 QCOMPARE(playerStatusChangedSpy.count(), 6); 5128 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5129 QCOMPARE(playerErrorChangedSpy.count(), 0); 5130 QCOMPARE(persistentStateChangedSpy.count(), 0); 5131 QCOMPARE(playerPlaySpy.count(), 1); 5132 QCOMPARE(playerPauseSpy.count(), 0); 5133 QCOMPARE(playerStopSpy.count(), 1); 5134 QCOMPARE(skipNextTrackSpy.count(), 0); 5135 QCOMPARE(seekSpy.count(), 0); 5136 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5137 5138 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 5139 5140 QCOMPARE(playerPlaySpy.wait(300), false); 5141 5142 QCOMPARE(currentTrackChangedSpy.count(), 3); 5143 QCOMPARE(playListModelChangedSpy.count(), 1); 5144 QCOMPARE(playerSourceChangedSpy.count(), 4); 5145 QCOMPARE(urlRoleChangedSpy.count(), 1); 5146 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5147 QCOMPARE(playerStatusChangedSpy.count(), 6); 5148 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5149 QCOMPARE(playerErrorChangedSpy.count(), 0); 5150 QCOMPARE(persistentStateChangedSpy.count(), 0); 5151 QCOMPARE(playerPlaySpy.count(), 1); 5152 QCOMPARE(playerPauseSpy.count(), 0); 5153 QCOMPARE(playerStopSpy.count(), 1); 5154 QCOMPARE(skipNextTrackSpy.count(), 0); 5155 QCOMPARE(seekSpy.count(), 0); 5156 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5157 } 5158 5159 void ManageAudioPlayerTest::playSingleTrack() 5160 { 5161 Elisa::ElisaConfiguration::self()->setDefaults(); 5162 ManageAudioPlayer myPlayer; 5163 QStandardItemModel myPlayList; 5164 5165 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 5166 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 5167 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 5168 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 5169 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 5170 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 5171 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 5172 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 5173 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 5174 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 5175 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 5176 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 5177 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 5178 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 5179 5180 myPlayList.appendRow(new QStandardItem); 5181 5182 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 5183 5184 QCOMPARE(currentTrackChangedSpy.count(), 0); 5185 QCOMPARE(playListModelChangedSpy.count(), 0); 5186 QCOMPARE(playerSourceChangedSpy.count(), 0); 5187 QCOMPARE(urlRoleChangedSpy.count(), 0); 5188 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5189 QCOMPARE(playerStatusChangedSpy.count(), 0); 5190 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5191 QCOMPARE(playerErrorChangedSpy.count(), 0); 5192 QCOMPARE(persistentStateChangedSpy.count(), 0); 5193 QCOMPARE(playerPlaySpy.count(), 0); 5194 QCOMPARE(playerPauseSpy.count(), 0); 5195 QCOMPARE(playerStopSpy.count(), 0); 5196 QCOMPARE(skipNextTrackSpy.count(), 0); 5197 QCOMPARE(seekSpy.count(), 0); 5198 5199 myPlayer.setPlayListModel(&myPlayList); 5200 5201 QCOMPARE(currentTrackChangedSpy.count(), 0); 5202 QCOMPARE(playListModelChangedSpy.count(), 1); 5203 QCOMPARE(playerSourceChangedSpy.count(), 0); 5204 QCOMPARE(urlRoleChangedSpy.count(), 0); 5205 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5206 QCOMPARE(playerStatusChangedSpy.count(), 0); 5207 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5208 QCOMPARE(playerErrorChangedSpy.count(), 0); 5209 QCOMPARE(persistentStateChangedSpy.count(), 0); 5210 QCOMPARE(playerPlaySpy.count(), 0); 5211 QCOMPARE(playerPauseSpy.count(), 0); 5212 QCOMPARE(playerStopSpy.count(), 0); 5213 QCOMPARE(skipNextTrackSpy.count(), 0); 5214 QCOMPARE(seekSpy.count(), 0); 5215 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5216 5217 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 5218 5219 QCOMPARE(currentTrackChangedSpy.count(), 1); 5220 QCOMPARE(playListModelChangedSpy.count(), 1); 5221 QCOMPARE(playerSourceChangedSpy.count(), 1); 5222 QCOMPARE(urlRoleChangedSpy.count(), 0); 5223 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5224 QCOMPARE(playerStatusChangedSpy.count(), 0); 5225 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5226 QCOMPARE(playerErrorChangedSpy.count(), 0); 5227 QCOMPARE(persistentStateChangedSpy.count(), 0); 5228 QCOMPARE(playerPlaySpy.count(), 0); 5229 QCOMPARE(playerPauseSpy.count(), 0); 5230 QCOMPARE(playerStopSpy.count(), 0); 5231 QCOMPARE(skipNextTrackSpy.count(), 0); 5232 QCOMPARE(seekSpy.count(), 0); 5233 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5234 5235 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 5236 5237 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 5238 5239 QCOMPARE(currentTrackChangedSpy.count(), 1); 5240 QCOMPARE(playListModelChangedSpy.count(), 1); 5241 QCOMPARE(playerSourceChangedSpy.count(), 2); 5242 QCOMPARE(urlRoleChangedSpy.count(), 1); 5243 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5244 QCOMPARE(playerStatusChangedSpy.count(), 0); 5245 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5246 QCOMPARE(playerErrorChangedSpy.count(), 0); 5247 QCOMPARE(persistentStateChangedSpy.count(), 0); 5248 QCOMPARE(playerPlaySpy.count(), 0); 5249 QCOMPARE(playerPauseSpy.count(), 0); 5250 QCOMPARE(playerStopSpy.count(), 0); 5251 QCOMPARE(skipNextTrackSpy.count(), 0); 5252 QCOMPARE(seekSpy.count(), 0); 5253 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5254 5255 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 5256 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 5257 5258 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 5259 5260 QCOMPARE(currentTrackChangedSpy.count(), 1); 5261 QCOMPARE(playListModelChangedSpy.count(), 1); 5262 QCOMPARE(playerSourceChangedSpy.count(), 2); 5263 QCOMPARE(urlRoleChangedSpy.count(), 1); 5264 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5265 QCOMPARE(playerStatusChangedSpy.count(), 0); 5266 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5267 QCOMPARE(playerErrorChangedSpy.count(), 0); 5268 QCOMPARE(persistentStateChangedSpy.count(), 0); 5269 QCOMPARE(playerPlaySpy.count(), 0); 5270 QCOMPARE(playerPauseSpy.count(), 0); 5271 QCOMPARE(playerStopSpy.count(), 0); 5272 QCOMPARE(skipNextTrackSpy.count(), 0); 5273 QCOMPARE(seekSpy.count(), 0); 5274 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5275 5276 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 5277 5278 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 5279 5280 QCOMPARE(currentTrackChangedSpy.count(), 1); 5281 QCOMPARE(playListModelChangedSpy.count(), 1); 5282 QCOMPARE(playerSourceChangedSpy.count(), 2); 5283 QCOMPARE(urlRoleChangedSpy.count(), 1); 5284 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5285 QCOMPARE(playerStatusChangedSpy.count(), 1); 5286 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5287 QCOMPARE(playerErrorChangedSpy.count(), 0); 5288 QCOMPARE(persistentStateChangedSpy.count(), 0); 5289 QCOMPARE(playerPlaySpy.count(), 0); 5290 QCOMPARE(playerPauseSpy.count(), 0); 5291 QCOMPARE(playerStopSpy.count(), 0); 5292 QCOMPARE(skipNextTrackSpy.count(), 0); 5293 QCOMPARE(seekSpy.count(), 0); 5294 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5295 5296 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 5297 5298 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 5299 5300 QCOMPARE(currentTrackChangedSpy.count(), 1); 5301 QCOMPARE(playListModelChangedSpy.count(), 1); 5302 QCOMPARE(playerSourceChangedSpy.count(), 2); 5303 QCOMPARE(urlRoleChangedSpy.count(), 1); 5304 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5305 QCOMPARE(playerStatusChangedSpy.count(), 1); 5306 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5307 QCOMPARE(playerErrorChangedSpy.count(), 0); 5308 QCOMPARE(persistentStateChangedSpy.count(), 0); 5309 QCOMPARE(playerPlaySpy.count(), 0); 5310 QCOMPARE(playerPauseSpy.count(), 0); 5311 QCOMPARE(playerStopSpy.count(), 0); 5312 QCOMPARE(skipNextTrackSpy.count(), 0); 5313 QCOMPARE(seekSpy.count(), 0); 5314 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5315 5316 myPlayer.setPlayerError(QMediaPlayer::NoError); 5317 5318 QCOMPARE(currentTrackChangedSpy.count(), 1); 5319 QCOMPARE(playListModelChangedSpy.count(), 1); 5320 QCOMPARE(playerSourceChangedSpy.count(), 2); 5321 QCOMPARE(urlRoleChangedSpy.count(), 1); 5322 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5323 QCOMPARE(playerStatusChangedSpy.count(), 1); 5324 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5325 QCOMPARE(playerErrorChangedSpy.count(), 0); 5326 QCOMPARE(persistentStateChangedSpy.count(), 0); 5327 QCOMPARE(playerPlaySpy.count(), 0); 5328 QCOMPARE(playerPauseSpy.count(), 0); 5329 QCOMPARE(playerStopSpy.count(), 0); 5330 QCOMPARE(skipNextTrackSpy.count(), 0); 5331 QCOMPARE(seekSpy.count(), 0); 5332 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5333 5334 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 5335 5336 QCOMPARE(currentTrackChangedSpy.count(), 1); 5337 QCOMPARE(playListModelChangedSpy.count(), 1); 5338 QCOMPARE(playerSourceChangedSpy.count(), 2); 5339 QCOMPARE(urlRoleChangedSpy.count(), 1); 5340 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5341 QCOMPARE(playerStatusChangedSpy.count(), 2); 5342 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5343 QCOMPARE(playerErrorChangedSpy.count(), 0); 5344 QCOMPARE(persistentStateChangedSpy.count(), 0); 5345 QCOMPARE(playerPlaySpy.count(), 0); 5346 QCOMPARE(playerPauseSpy.count(), 0); 5347 QCOMPARE(playerStopSpy.count(), 0); 5348 QCOMPARE(skipNextTrackSpy.count(), 0); 5349 QCOMPARE(seekSpy.count(), 0); 5350 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5351 5352 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 5353 5354 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 5355 5356 QCOMPARE(currentTrackChangedSpy.count(), 1); 5357 QCOMPARE(playListModelChangedSpy.count(), 1); 5358 QCOMPARE(playerSourceChangedSpy.count(), 2); 5359 QCOMPARE(urlRoleChangedSpy.count(), 1); 5360 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5361 QCOMPARE(playerStatusChangedSpy.count(), 3); 5362 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5363 QCOMPARE(playerErrorChangedSpy.count(), 0); 5364 QCOMPARE(persistentStateChangedSpy.count(), 0); 5365 QCOMPARE(playerPlaySpy.count(), 0); 5366 QCOMPARE(playerPauseSpy.count(), 0); 5367 QCOMPARE(playerStopSpy.count(), 0); 5368 QCOMPARE(skipNextTrackSpy.count(), 0); 5369 QCOMPARE(seekSpy.count(), 0); 5370 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5371 5372 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 5373 5374 myPlayer.playPause(); 5375 5376 QCOMPARE(currentTrackChangedSpy.count(), 1); 5377 QCOMPARE(playListModelChangedSpy.count(), 1); 5378 QCOMPARE(playerSourceChangedSpy.count(), 2); 5379 QCOMPARE(urlRoleChangedSpy.count(), 1); 5380 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5381 QCOMPARE(playerStatusChangedSpy.count(), 3); 5382 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5383 QCOMPARE(playerErrorChangedSpy.count(), 0); 5384 QCOMPARE(persistentStateChangedSpy.count(), 0); 5385 QCOMPARE(playerPlaySpy.count(), 0); 5386 QCOMPARE(playerPauseSpy.count(), 0); 5387 QCOMPARE(playerStopSpy.count(), 0); 5388 QCOMPARE(skipNextTrackSpy.count(), 0); 5389 QCOMPARE(seekSpy.count(), 0); 5390 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5391 5392 QCOMPARE(playerPlaySpy.wait(), true); 5393 5394 QCOMPARE(currentTrackChangedSpy.count(), 1); 5395 QCOMPARE(playListModelChangedSpy.count(), 1); 5396 QCOMPARE(playerSourceChangedSpy.count(), 2); 5397 QCOMPARE(urlRoleChangedSpy.count(), 1); 5398 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5399 QCOMPARE(playerStatusChangedSpy.count(), 3); 5400 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5401 QCOMPARE(playerErrorChangedSpy.count(), 0); 5402 QCOMPARE(persistentStateChangedSpy.count(), 0); 5403 QCOMPARE(playerPlaySpy.count(), 1); 5404 QCOMPARE(playerPauseSpy.count(), 0); 5405 QCOMPARE(playerStopSpy.count(), 0); 5406 QCOMPARE(skipNextTrackSpy.count(), 0); 5407 QCOMPARE(seekSpy.count(), 0); 5408 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5409 5410 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 5411 5412 QCOMPARE(currentTrackChangedSpy.count(), 1); 5413 QCOMPARE(playListModelChangedSpy.count(), 1); 5414 QCOMPARE(playerSourceChangedSpy.count(), 2); 5415 QCOMPARE(urlRoleChangedSpy.count(), 1); 5416 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5417 QCOMPARE(playerStatusChangedSpy.count(), 3); 5418 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 5419 QCOMPARE(playerErrorChangedSpy.count(), 0); 5420 QCOMPARE(persistentStateChangedSpy.count(), 0); 5421 QCOMPARE(playerPlaySpy.count(), 1); 5422 QCOMPARE(playerPauseSpy.count(), 0); 5423 QCOMPARE(playerStopSpy.count(), 0); 5424 QCOMPARE(skipNextTrackSpy.count(), 0); 5425 QCOMPARE(seekSpy.count(), 0); 5426 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 5427 5428 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 5429 5430 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 5431 5432 QCOMPARE(currentTrackChangedSpy.count(), 1); 5433 QCOMPARE(playListModelChangedSpy.count(), 1); 5434 QCOMPARE(playerSourceChangedSpy.count(), 2); 5435 QCOMPARE(urlRoleChangedSpy.count(), 1); 5436 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5437 QCOMPARE(playerStatusChangedSpy.count(), 4); 5438 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 5439 QCOMPARE(playerErrorChangedSpy.count(), 0); 5440 QCOMPARE(persistentStateChangedSpy.count(), 0); 5441 QCOMPARE(playerPlaySpy.count(), 1); 5442 QCOMPARE(playerPauseSpy.count(), 0); 5443 QCOMPARE(playerStopSpy.count(), 0); 5444 QCOMPARE(skipNextTrackSpy.count(), 0); 5445 QCOMPARE(seekSpy.count(), 0); 5446 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 5447 5448 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 5449 5450 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 5451 5452 QCOMPARE(currentTrackChangedSpy.count(), 1); 5453 QCOMPARE(playListModelChangedSpy.count(), 1); 5454 QCOMPARE(playerSourceChangedSpy.count(), 2); 5455 QCOMPARE(urlRoleChangedSpy.count(), 1); 5456 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5457 QCOMPARE(playerStatusChangedSpy.count(), 4); 5458 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5459 QCOMPARE(playerErrorChangedSpy.count(), 0); 5460 QCOMPARE(persistentStateChangedSpy.count(), 0); 5461 QCOMPARE(playerPlaySpy.count(), 1); 5462 QCOMPARE(playerPauseSpy.count(), 0); 5463 QCOMPARE(playerStopSpy.count(), 0); 5464 QCOMPARE(skipNextTrackSpy.count(), 0); 5465 QCOMPARE(seekSpy.count(), 0); 5466 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5467 5468 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 5469 5470 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 5471 5472 QCOMPARE(currentTrackChangedSpy.count(), 1); 5473 QCOMPARE(playListModelChangedSpy.count(), 1); 5474 QCOMPARE(playerSourceChangedSpy.count(), 2); 5475 QCOMPARE(urlRoleChangedSpy.count(), 1); 5476 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5477 QCOMPARE(playerStatusChangedSpy.count(), 5); 5478 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5479 QCOMPARE(playerErrorChangedSpy.count(), 0); 5480 QCOMPARE(persistentStateChangedSpy.count(), 0); 5481 QCOMPARE(playerPlaySpy.count(), 1); 5482 QCOMPARE(playerPauseSpy.count(), 0); 5483 QCOMPARE(playerStopSpy.count(), 0); 5484 QCOMPARE(skipNextTrackSpy.count(), 0); 5485 QCOMPARE(seekSpy.count(), 0); 5486 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5487 5488 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 5489 5490 QCOMPARE(skipNextTrackSpy.wait(100), true); 5491 5492 QCOMPARE(currentTrackChangedSpy.count(), 1); 5493 QCOMPARE(playListModelChangedSpy.count(), 1); 5494 QCOMPARE(playerSourceChangedSpy.count(), 2); 5495 QCOMPARE(urlRoleChangedSpy.count(), 1); 5496 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5497 QCOMPARE(playerStatusChangedSpy.count(), 5); 5498 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5499 QCOMPARE(playerErrorChangedSpy.count(), 0); 5500 QCOMPARE(persistentStateChangedSpy.count(), 0); 5501 QCOMPARE(playerPlaySpy.count(), 1); 5502 QCOMPARE(playerPauseSpy.count(), 0); 5503 QCOMPARE(playerStopSpy.count(), 0); 5504 QCOMPARE(skipNextTrackSpy.count(), 1); 5505 QCOMPARE(seekSpy.count(), 0); 5506 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5507 5508 myPlayer.playListFinished(); 5509 5510 QCOMPARE(currentTrackChangedSpy.count(), 1); 5511 QCOMPARE(playListModelChangedSpy.count(), 1); 5512 QCOMPARE(playerSourceChangedSpy.count(), 2); 5513 QCOMPARE(urlRoleChangedSpy.count(), 1); 5514 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5515 QCOMPARE(playerStatusChangedSpy.count(), 5); 5516 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5517 QCOMPARE(playerErrorChangedSpy.count(), 0); 5518 QCOMPARE(persistentStateChangedSpy.count(), 0); 5519 QCOMPARE(playerPlaySpy.count(), 1); 5520 QCOMPARE(playerPauseSpy.count(), 0); 5521 QCOMPARE(playerStopSpy.count(), 0); 5522 QCOMPARE(skipNextTrackSpy.count(), 1); 5523 QCOMPARE(seekSpy.count(), 0); 5524 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5525 5526 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 5527 5528 QCOMPARE(currentTrackChangedSpy.count(), 1); 5529 QCOMPARE(playListModelChangedSpy.count(), 1); 5530 QCOMPARE(playerSourceChangedSpy.count(), 3); 5531 QCOMPARE(urlRoleChangedSpy.count(), 1); 5532 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5533 QCOMPARE(playerStatusChangedSpy.count(), 5); 5534 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5535 QCOMPARE(playerErrorChangedSpy.count(), 0); 5536 QCOMPARE(persistentStateChangedSpy.count(), 0); 5537 QCOMPARE(playerPlaySpy.count(), 1); 5538 QCOMPARE(playerPauseSpy.count(), 0); 5539 QCOMPARE(playerStopSpy.count(), 0); 5540 QCOMPARE(skipNextTrackSpy.count(), 1); 5541 QCOMPARE(seekSpy.count(), 0); 5542 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5543 5544 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 5545 5546 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 5547 5548 QCOMPARE(currentTrackChangedSpy.count(), 1); 5549 QCOMPARE(playListModelChangedSpy.count(), 1); 5550 QCOMPARE(playerSourceChangedSpy.count(), 3); 5551 QCOMPARE(urlRoleChangedSpy.count(), 1); 5552 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5553 QCOMPARE(playerStatusChangedSpy.count(), 6); 5554 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5555 QCOMPARE(playerErrorChangedSpy.count(), 0); 5556 QCOMPARE(persistentStateChangedSpy.count(), 0); 5557 QCOMPARE(playerPlaySpy.count(), 1); 5558 QCOMPARE(playerPauseSpy.count(), 0); 5559 QCOMPARE(playerStopSpy.count(), 0); 5560 QCOMPARE(skipNextTrackSpy.count(), 1); 5561 QCOMPARE(seekSpy.count(), 0); 5562 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5563 5564 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 5565 5566 QCOMPARE(playerPlaySpy.wait(100), false); 5567 5568 QCOMPARE(currentTrackChangedSpy.count(), 1); 5569 QCOMPARE(playListModelChangedSpy.count(), 1); 5570 QCOMPARE(playerSourceChangedSpy.count(), 3); 5571 QCOMPARE(urlRoleChangedSpy.count(), 1); 5572 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5573 QCOMPARE(playerStatusChangedSpy.count(), 6); 5574 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 5575 QCOMPARE(playerErrorChangedSpy.count(), 0); 5576 QCOMPARE(persistentStateChangedSpy.count(), 0); 5577 QCOMPARE(playerPlaySpy.count(), 1); 5578 QCOMPARE(playerPauseSpy.count(), 0); 5579 QCOMPARE(playerStopSpy.count(), 0); 5580 QCOMPARE(skipNextTrackSpy.count(), 1); 5581 QCOMPARE(seekSpy.count(), 0); 5582 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5583 } 5584 5585 void ManageAudioPlayerTest::playRestoredTrack() 5586 { 5587 Elisa::ElisaConfiguration::self()->setDefaults(); 5588 ManageAudioPlayer myPlayer; 5589 QStandardItemModel myPlayList; 5590 5591 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 5592 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 5593 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 5594 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 5595 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 5596 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 5597 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 5598 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 5599 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 5600 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 5601 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 5602 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 5603 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 5604 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 5605 5606 myPlayList.appendRow(new QStandardItem); 5607 myPlayList.appendRow(new QStandardItem); 5608 myPlayList.appendRow(new QStandardItem); 5609 5610 QCOMPARE(currentTrackChangedSpy.count(), 0); 5611 QCOMPARE(playListModelChangedSpy.count(), 0); 5612 QCOMPARE(playerSourceChangedSpy.count(), 0); 5613 QCOMPARE(urlRoleChangedSpy.count(), 0); 5614 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5615 QCOMPARE(playerStatusChangedSpy.count(), 0); 5616 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5617 QCOMPARE(playerErrorChangedSpy.count(), 0); 5618 QCOMPARE(persistentStateChangedSpy.count(), 0); 5619 QCOMPARE(playerPlaySpy.count(), 0); 5620 QCOMPARE(playerPauseSpy.count(), 0); 5621 QCOMPARE(playerStopSpy.count(), 0); 5622 QCOMPARE(skipNextTrackSpy.count(), 0); 5623 QCOMPARE(seekSpy.count(), 0); 5624 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5625 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5626 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5627 5628 myPlayer.setPlayListModel(&myPlayList); 5629 5630 QCOMPARE(currentTrackChangedSpy.count(), 0); 5631 QCOMPARE(playListModelChangedSpy.count(), 1); 5632 QCOMPARE(playerSourceChangedSpy.count(), 0); 5633 QCOMPARE(urlRoleChangedSpy.count(), 0); 5634 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5635 QCOMPARE(playerStatusChangedSpy.count(), 0); 5636 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5637 QCOMPARE(playerErrorChangedSpy.count(), 0); 5638 QCOMPARE(persistentStateChangedSpy.count(), 0); 5639 QCOMPARE(playerPlaySpy.count(), 0); 5640 QCOMPARE(playerPauseSpy.count(), 0); 5641 QCOMPARE(playerStopSpy.count(), 0); 5642 QCOMPARE(skipNextTrackSpy.count(), 0); 5643 QCOMPARE(seekSpy.count(), 0); 5644 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5645 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5646 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5647 5648 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 5649 5650 QCOMPARE(currentTrackChangedSpy.count(), 0); 5651 QCOMPARE(playListModelChangedSpy.count(), 1); 5652 QCOMPARE(playerSourceChangedSpy.count(), 0); 5653 QCOMPARE(urlRoleChangedSpy.count(), 1); 5654 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5655 QCOMPARE(playerStatusChangedSpy.count(), 0); 5656 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5657 QCOMPARE(playerErrorChangedSpy.count(), 0); 5658 QCOMPARE(persistentStateChangedSpy.count(), 0); 5659 QCOMPARE(playerPlaySpy.count(), 0); 5660 QCOMPARE(playerPauseSpy.count(), 0); 5661 QCOMPARE(playerStopSpy.count(), 0); 5662 QCOMPARE(skipNextTrackSpy.count(), 0); 5663 QCOMPARE(seekSpy.count(), 0); 5664 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5665 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5666 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5667 5668 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 5669 5670 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 5671 5672 QCOMPARE(currentTrackChangedSpy.count(), 0); 5673 QCOMPARE(playListModelChangedSpy.count(), 1); 5674 QCOMPARE(playerSourceChangedSpy.count(), 0); 5675 QCOMPARE(urlRoleChangedSpy.count(), 1); 5676 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5677 QCOMPARE(playerStatusChangedSpy.count(), 0); 5678 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5679 QCOMPARE(playerErrorChangedSpy.count(), 0); 5680 QCOMPARE(persistentStateChangedSpy.count(), 0); 5681 QCOMPARE(playerPlaySpy.count(), 0); 5682 QCOMPARE(playerPauseSpy.count(), 0); 5683 QCOMPARE(playerStopSpy.count(), 0); 5684 QCOMPARE(skipNextTrackSpy.count(), 0); 5685 QCOMPARE(seekSpy.count(), 0); 5686 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5687 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5688 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5689 5690 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 5691 5692 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 5693 5694 QCOMPARE(currentTrackChangedSpy.count(), 1); 5695 QCOMPARE(playListModelChangedSpy.count(), 1); 5696 QCOMPARE(playerSourceChangedSpy.count(), 1); 5697 QCOMPARE(urlRoleChangedSpy.count(), 1); 5698 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5699 QCOMPARE(playerStatusChangedSpy.count(), 0); 5700 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5701 QCOMPARE(playerErrorChangedSpy.count(), 0); 5702 QCOMPARE(persistentStateChangedSpy.count(), 0); 5703 QCOMPARE(playerPlaySpy.count(), 0); 5704 QCOMPARE(playerPauseSpy.count(), 0); 5705 QCOMPARE(playerStopSpy.count(), 0); 5706 QCOMPARE(skipNextTrackSpy.count(), 0); 5707 QCOMPARE(seekSpy.count(), 0); 5708 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5709 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5710 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5711 5712 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 5713 5714 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 5715 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 5716 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 5717 5718 QCOMPARE(currentTrackChangedSpy.count(), 1); 5719 QCOMPARE(playListModelChangedSpy.count(), 1); 5720 QCOMPARE(playerSourceChangedSpy.count(), 2); 5721 QCOMPARE(urlRoleChangedSpy.count(), 1); 5722 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5723 QCOMPARE(playerStatusChangedSpy.count(), 0); 5724 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5725 QCOMPARE(playerErrorChangedSpy.count(), 0); 5726 QCOMPARE(persistentStateChangedSpy.count(), 0); 5727 QCOMPARE(playerPlaySpy.count(), 0); 5728 QCOMPARE(playerPauseSpy.count(), 0); 5729 QCOMPARE(playerStopSpy.count(), 0); 5730 QCOMPARE(skipNextTrackSpy.count(), 0); 5731 QCOMPARE(seekSpy.count(), 0); 5732 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5733 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5734 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5735 5736 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 5737 5738 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 5739 5740 QCOMPARE(currentTrackChangedSpy.count(), 1); 5741 QCOMPARE(playListModelChangedSpy.count(), 1); 5742 QCOMPARE(playerSourceChangedSpy.count(), 2); 5743 QCOMPARE(urlRoleChangedSpy.count(), 1); 5744 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5745 QCOMPARE(playerStatusChangedSpy.count(), 1); 5746 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5747 QCOMPARE(playerErrorChangedSpy.count(), 0); 5748 QCOMPARE(persistentStateChangedSpy.count(), 0); 5749 QCOMPARE(playerPlaySpy.count(), 0); 5750 QCOMPARE(playerPauseSpy.count(), 0); 5751 QCOMPARE(playerStopSpy.count(), 0); 5752 QCOMPARE(skipNextTrackSpy.count(), 0); 5753 QCOMPARE(seekSpy.count(), 0); 5754 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5755 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5756 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5757 5758 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 5759 5760 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 5761 5762 QCOMPARE(currentTrackChangedSpy.count(), 1); 5763 QCOMPARE(playListModelChangedSpy.count(), 1); 5764 QCOMPARE(playerSourceChangedSpy.count(), 2); 5765 QCOMPARE(urlRoleChangedSpy.count(), 1); 5766 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5767 QCOMPARE(playerStatusChangedSpy.count(), 1); 5768 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5769 QCOMPARE(playerErrorChangedSpy.count(), 0); 5770 QCOMPARE(persistentStateChangedSpy.count(), 0); 5771 QCOMPARE(playerPlaySpy.count(), 0); 5772 QCOMPARE(playerPauseSpy.count(), 0); 5773 QCOMPARE(playerStopSpy.count(), 0); 5774 QCOMPARE(skipNextTrackSpy.count(), 0); 5775 QCOMPARE(seekSpy.count(), 0); 5776 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5777 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5778 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5779 5780 myPlayer.setPlayerError(QMediaPlayer::NoError); 5781 5782 QCOMPARE(currentTrackChangedSpy.count(), 1); 5783 QCOMPARE(playListModelChangedSpy.count(), 1); 5784 QCOMPARE(playerSourceChangedSpy.count(), 2); 5785 QCOMPARE(urlRoleChangedSpy.count(), 1); 5786 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5787 QCOMPARE(playerStatusChangedSpy.count(), 1); 5788 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5789 QCOMPARE(playerErrorChangedSpy.count(), 0); 5790 QCOMPARE(persistentStateChangedSpy.count(), 0); 5791 QCOMPARE(playerPlaySpy.count(), 0); 5792 QCOMPARE(playerPauseSpy.count(), 0); 5793 QCOMPARE(playerStopSpy.count(), 0); 5794 QCOMPARE(skipNextTrackSpy.count(), 0); 5795 QCOMPARE(seekSpy.count(), 0); 5796 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5797 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5798 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5799 5800 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 5801 5802 QCOMPARE(currentTrackChangedSpy.count(), 1); 5803 QCOMPARE(playListModelChangedSpy.count(), 1); 5804 QCOMPARE(playerSourceChangedSpy.count(), 2); 5805 QCOMPARE(urlRoleChangedSpy.count(), 1); 5806 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5807 QCOMPARE(playerStatusChangedSpy.count(), 2); 5808 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5809 QCOMPARE(playerErrorChangedSpy.count(), 0); 5810 QCOMPARE(persistentStateChangedSpy.count(), 0); 5811 QCOMPARE(playerPlaySpy.count(), 0); 5812 QCOMPARE(playerPauseSpy.count(), 0); 5813 QCOMPARE(playerStopSpy.count(), 0); 5814 QCOMPARE(skipNextTrackSpy.count(), 0); 5815 QCOMPARE(seekSpy.count(), 0); 5816 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5817 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5818 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5819 5820 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 5821 5822 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 5823 5824 QCOMPARE(currentTrackChangedSpy.count(), 1); 5825 QCOMPARE(playListModelChangedSpy.count(), 1); 5826 QCOMPARE(playerSourceChangedSpy.count(), 2); 5827 QCOMPARE(urlRoleChangedSpy.count(), 1); 5828 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5829 QCOMPARE(playerStatusChangedSpy.count(), 3); 5830 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5831 QCOMPARE(playerErrorChangedSpy.count(), 0); 5832 QCOMPARE(persistentStateChangedSpy.count(), 0); 5833 QCOMPARE(playerPlaySpy.count(), 0); 5834 QCOMPARE(playerPauseSpy.count(), 0); 5835 QCOMPARE(playerStopSpy.count(), 0); 5836 QCOMPARE(skipNextTrackSpy.count(), 0); 5837 QCOMPARE(seekSpy.count(), 0); 5838 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5839 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5840 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5841 5842 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 5843 5844 myPlayer.playPause(); 5845 5846 QCOMPARE(currentTrackChangedSpy.count(), 1); 5847 QCOMPARE(playListModelChangedSpy.count(), 1); 5848 QCOMPARE(playerSourceChangedSpy.count(), 2); 5849 QCOMPARE(urlRoleChangedSpy.count(), 1); 5850 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5851 QCOMPARE(playerStatusChangedSpy.count(), 3); 5852 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5853 QCOMPARE(playerErrorChangedSpy.count(), 0); 5854 QCOMPARE(persistentStateChangedSpy.count(), 0); 5855 QCOMPARE(playerPlaySpy.count(), 0); 5856 QCOMPARE(playerPauseSpy.count(), 0); 5857 QCOMPARE(playerStopSpy.count(), 0); 5858 QCOMPARE(skipNextTrackSpy.count(), 0); 5859 QCOMPARE(seekSpy.count(), 0); 5860 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5861 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5862 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5863 5864 QCOMPARE(playerPlaySpy.wait(), true); 5865 5866 QCOMPARE(currentTrackChangedSpy.count(), 1); 5867 QCOMPARE(playListModelChangedSpy.count(), 1); 5868 QCOMPARE(playerSourceChangedSpy.count(), 2); 5869 QCOMPARE(urlRoleChangedSpy.count(), 1); 5870 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 5871 QCOMPARE(playerStatusChangedSpy.count(), 3); 5872 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5873 QCOMPARE(playerErrorChangedSpy.count(), 0); 5874 QCOMPARE(persistentStateChangedSpy.count(), 0); 5875 QCOMPARE(playerPlaySpy.count(), 1); 5876 QCOMPARE(playerPauseSpy.count(), 0); 5877 QCOMPARE(playerStopSpy.count(), 0); 5878 QCOMPARE(skipNextTrackSpy.count(), 0); 5879 QCOMPARE(seekSpy.count(), 0); 5880 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5881 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5882 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5883 } 5884 5885 void ManageAudioPlayerTest::testRestoreSettingsAutomaticPlay() 5886 { 5887 Elisa::ElisaConfiguration::self()->setDefaults(); 5888 Elisa::ElisaConfiguration::self()->setPlayAtStartup(true); 5889 ManageAudioPlayer myPlayer; 5890 QStandardItemModel myPlayList; 5891 5892 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 5893 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 5894 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 5895 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 5896 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 5897 QSignalSpy titleRoleChangedSpy(&myPlayer, &ManageAudioPlayer::titleRoleChanged); 5898 QSignalSpy artistNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::artistNameRoleChanged); 5899 QSignalSpy albumNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::albumNameRoleChanged); 5900 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 5901 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 5902 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 5903 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 5904 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 5905 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 5906 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 5907 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 5908 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 5909 5910 myPlayList.appendRow(new QStandardItem); 5911 myPlayList.appendRow(new QStandardItem); 5912 myPlayList.appendRow(new QStandardItem); 5913 5914 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 5915 myPlayList.item(0, 0)->setData(QStringLiteral("title"), ManageAudioPlayerTest::TitleRole); 5916 myPlayList.item(0, 0)->setData(QStringLiteral("artist"), ManageAudioPlayerTest::ArtistRole); 5917 myPlayList.item(0, 0)->setData(QStringLiteral("album"), ManageAudioPlayerTest::AlbumRole); 5918 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 5919 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 5920 5921 QCOMPARE(currentTrackChangedSpy.count(), 0); 5922 QCOMPARE(playListModelChangedSpy.count(), 0); 5923 QCOMPARE(playerSourceChangedSpy.count(), 0); 5924 QCOMPARE(urlRoleChangedSpy.count(), 0); 5925 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5926 QCOMPARE(titleRoleChangedSpy.count(), 0); 5927 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 5928 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 5929 QCOMPARE(playerStatusChangedSpy.count(), 0); 5930 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5931 QCOMPARE(playerErrorChangedSpy.count(), 0); 5932 QCOMPARE(persistentStateChangedSpy.count(), 0); 5933 QCOMPARE(playerPlaySpy.count(), 0); 5934 QCOMPARE(playerPauseSpy.count(), 0); 5935 QCOMPARE(playerStopSpy.count(), 0); 5936 QCOMPARE(skipNextTrackSpy.count(), 0); 5937 QCOMPARE(seekSpy.count(), 0); 5938 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5939 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5940 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5941 5942 myPlayer.setTitleRole(ManageAudioPlayerTest::TitleRole); 5943 5944 QCOMPARE(currentTrackChangedSpy.count(), 0); 5945 QCOMPARE(playListModelChangedSpy.count(), 0); 5946 QCOMPARE(playerSourceChangedSpy.count(), 0); 5947 QCOMPARE(urlRoleChangedSpy.count(), 0); 5948 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5949 QCOMPARE(titleRoleChangedSpy.count(), 1); 5950 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 5951 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 5952 QCOMPARE(playerStatusChangedSpy.count(), 0); 5953 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5954 QCOMPARE(playerErrorChangedSpy.count(), 0); 5955 QCOMPARE(persistentStateChangedSpy.count(), 0); 5956 QCOMPARE(playerPlaySpy.count(), 0); 5957 QCOMPARE(playerPauseSpy.count(), 0); 5958 QCOMPARE(playerStopSpy.count(), 0); 5959 QCOMPARE(skipNextTrackSpy.count(), 0); 5960 QCOMPARE(seekSpy.count(), 0); 5961 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5962 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5963 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5964 5965 QCOMPARE(myPlayer.titleRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::TitleRole)); 5966 5967 myPlayer.setArtistNameRole(ManageAudioPlayerTest::ArtistRole); 5968 5969 QCOMPARE(currentTrackChangedSpy.count(), 0); 5970 QCOMPARE(playListModelChangedSpy.count(), 0); 5971 QCOMPARE(playerSourceChangedSpy.count(), 0); 5972 QCOMPARE(urlRoleChangedSpy.count(), 0); 5973 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5974 QCOMPARE(titleRoleChangedSpy.count(), 1); 5975 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 5976 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 5977 QCOMPARE(playerStatusChangedSpy.count(), 0); 5978 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 5979 QCOMPARE(playerErrorChangedSpy.count(), 0); 5980 QCOMPARE(persistentStateChangedSpy.count(), 0); 5981 QCOMPARE(playerPlaySpy.count(), 0); 5982 QCOMPARE(playerPauseSpy.count(), 0); 5983 QCOMPARE(playerStopSpy.count(), 0); 5984 QCOMPARE(skipNextTrackSpy.count(), 0); 5985 QCOMPARE(seekSpy.count(), 0); 5986 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5987 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5988 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 5989 5990 QCOMPARE(myPlayer.artistNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::ArtistRole)); 5991 5992 myPlayer.setAlbumNameRole(ManageAudioPlayerTest::AlbumRole); 5993 5994 QCOMPARE(currentTrackChangedSpy.count(), 0); 5995 QCOMPARE(playListModelChangedSpy.count(), 0); 5996 QCOMPARE(playerSourceChangedSpy.count(), 0); 5997 QCOMPARE(urlRoleChangedSpy.count(), 0); 5998 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 5999 QCOMPARE(titleRoleChangedSpy.count(), 1); 6000 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6001 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6002 QCOMPARE(playerStatusChangedSpy.count(), 0); 6003 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6004 QCOMPARE(playerErrorChangedSpy.count(), 0); 6005 QCOMPARE(persistentStateChangedSpy.count(), 0); 6006 QCOMPARE(playerPlaySpy.count(), 0); 6007 QCOMPARE(playerPauseSpy.count(), 0); 6008 QCOMPARE(playerStopSpy.count(), 0); 6009 QCOMPARE(skipNextTrackSpy.count(), 0); 6010 QCOMPARE(seekSpy.count(), 0); 6011 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6012 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6013 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6014 6015 QCOMPARE(myPlayer.albumNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::AlbumRole)); 6016 6017 QCOMPARE(currentTrackChangedSpy.count(), 0); 6018 QCOMPARE(playListModelChangedSpy.count(), 0); 6019 QCOMPARE(playerSourceChangedSpy.count(), 0); 6020 QCOMPARE(urlRoleChangedSpy.count(), 0); 6021 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6022 QCOMPARE(titleRoleChangedSpy.count(), 1); 6023 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6024 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6025 QCOMPARE(playerStatusChangedSpy.count(), 0); 6026 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6027 QCOMPARE(playerErrorChangedSpy.count(), 0); 6028 QCOMPARE(persistentStateChangedSpy.count(), 0); 6029 QCOMPARE(playerPlaySpy.count(), 0); 6030 QCOMPARE(playerPauseSpy.count(), 0); 6031 QCOMPARE(playerStopSpy.count(), 0); 6032 QCOMPARE(skipNextTrackSpy.count(), 0); 6033 QCOMPARE(seekSpy.count(), 0); 6034 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6035 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6036 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6037 6038 myPlayer.setPlayListModel(&myPlayList); 6039 6040 QCOMPARE(currentTrackChangedSpy.count(), 0); 6041 QCOMPARE(playListModelChangedSpy.count(), 1); 6042 QCOMPARE(playerSourceChangedSpy.count(), 0); 6043 QCOMPARE(urlRoleChangedSpy.count(), 0); 6044 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6045 QCOMPARE(titleRoleChangedSpy.count(), 1); 6046 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6047 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6048 QCOMPARE(playerStatusChangedSpy.count(), 0); 6049 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6050 QCOMPARE(playerErrorChangedSpy.count(), 0); 6051 QCOMPARE(persistentStateChangedSpy.count(), 0); 6052 QCOMPARE(playerPlaySpy.count(), 0); 6053 QCOMPARE(playerPauseSpy.count(), 0); 6054 QCOMPARE(playerStopSpy.count(), 0); 6055 QCOMPARE(skipNextTrackSpy.count(), 0); 6056 QCOMPARE(seekSpy.count(), 0); 6057 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6058 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6059 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6060 6061 QVariantMap settings; 6062 settings[QStringLiteral("isPlaying")] = true; 6063 settings[QStringLiteral("audioPlayerCurrentTitle")] = QStringLiteral("title"); 6064 settings[QStringLiteral("audioPlayerCurrentArtistName")] = QStringLiteral("artist"); 6065 settings[QStringLiteral("audioPlayerCurrentAlbumName")] = QStringLiteral("album"); 6066 6067 myPlayer.setPersistentState(settings); 6068 6069 QCOMPARE(currentTrackChangedSpy.count(), 0); 6070 QCOMPARE(playListModelChangedSpy.count(), 1); 6071 QCOMPARE(playerSourceChangedSpy.count(), 0); 6072 QCOMPARE(urlRoleChangedSpy.count(), 0); 6073 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6074 QCOMPARE(titleRoleChangedSpy.count(), 1); 6075 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6076 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6077 QCOMPARE(playerStatusChangedSpy.count(), 0); 6078 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6079 QCOMPARE(playerErrorChangedSpy.count(), 0); 6080 QCOMPARE(persistentStateChangedSpy.count(), 1); 6081 QCOMPARE(playerPlaySpy.count(), 0); 6082 QCOMPARE(playerPauseSpy.count(), 0); 6083 QCOMPARE(playerStopSpy.count(), 0); 6084 QCOMPARE(skipNextTrackSpy.count(), 0); 6085 QCOMPARE(seekSpy.count(), 0); 6086 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6087 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6088 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6089 6090 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 6091 6092 QCOMPARE(currentTrackChangedSpy.count(), 1); 6093 QCOMPARE(playListModelChangedSpy.count(), 1); 6094 QCOMPARE(playerSourceChangedSpy.count(), 1); 6095 QCOMPARE(urlRoleChangedSpy.count(), 0); 6096 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6097 QCOMPARE(titleRoleChangedSpy.count(), 1); 6098 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6099 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6100 QCOMPARE(playerStatusChangedSpy.count(), 0); 6101 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6102 QCOMPARE(playerErrorChangedSpy.count(), 0); 6103 QCOMPARE(persistentStateChangedSpy.count(), 1); 6104 QCOMPARE(playerPlaySpy.count(), 0); 6105 QCOMPARE(playerPauseSpy.count(), 0); 6106 QCOMPARE(playerStopSpy.count(), 0); 6107 QCOMPARE(skipNextTrackSpy.count(), 0); 6108 QCOMPARE(seekSpy.count(), 0); 6109 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6110 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6111 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6112 6113 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 6114 6115 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 6116 6117 QCOMPARE(currentTrackChangedSpy.count(), 1); 6118 QCOMPARE(playListModelChangedSpy.count(), 1); 6119 QCOMPARE(playerSourceChangedSpy.count(), 2); 6120 QCOMPARE(urlRoleChangedSpy.count(), 1); 6121 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6122 QCOMPARE(titleRoleChangedSpy.count(), 1); 6123 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6124 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6125 QCOMPARE(playerStatusChangedSpy.count(), 0); 6126 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6127 QCOMPARE(playerErrorChangedSpy.count(), 0); 6128 QCOMPARE(persistentStateChangedSpy.count(), 1); 6129 QCOMPARE(playerPlaySpy.count(), 0); 6130 QCOMPARE(playerPauseSpy.count(), 0); 6131 QCOMPARE(playerStopSpy.count(), 0); 6132 QCOMPARE(skipNextTrackSpy.count(), 0); 6133 QCOMPARE(seekSpy.count(), 0); 6134 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6135 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6136 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6137 6138 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 6139 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 6140 6141 QCOMPARE(playerPlaySpy.wait(500), false); 6142 6143 QCOMPARE(currentTrackChangedSpy.count(), 1); 6144 QCOMPARE(playListModelChangedSpy.count(), 1); 6145 QCOMPARE(playerSourceChangedSpy.count(), 2); 6146 QCOMPARE(urlRoleChangedSpy.count(), 1); 6147 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6148 QCOMPARE(titleRoleChangedSpy.count(), 1); 6149 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6150 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6151 QCOMPARE(playerStatusChangedSpy.count(), 0); 6152 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6153 QCOMPARE(playerErrorChangedSpy.count(), 0); 6154 QCOMPARE(persistentStateChangedSpy.count(), 1); 6155 QCOMPARE(playerPlaySpy.count(), 0); 6156 QCOMPARE(playerPauseSpy.count(), 0); 6157 QCOMPARE(playerStopSpy.count(), 0); 6158 QCOMPARE(skipNextTrackSpy.count(), 0); 6159 QCOMPARE(seekSpy.count(), 0); 6160 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6161 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6162 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6163 6164 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 6165 6166 QCOMPARE(currentTrackChangedSpy.count(), 1); 6167 QCOMPARE(playListModelChangedSpy.count(), 1); 6168 QCOMPARE(playerSourceChangedSpy.count(), 2); 6169 QCOMPARE(urlRoleChangedSpy.count(), 1); 6170 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6171 QCOMPARE(titleRoleChangedSpy.count(), 1); 6172 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6173 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6174 QCOMPARE(playerStatusChangedSpy.count(), 0); 6175 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6176 QCOMPARE(playerErrorChangedSpy.count(), 0); 6177 QCOMPARE(persistentStateChangedSpy.count(), 1); 6178 QCOMPARE(playerPlaySpy.count(), 0); 6179 QCOMPARE(playerPauseSpy.count(), 0); 6180 QCOMPARE(playerStopSpy.count(), 0); 6181 QCOMPARE(skipNextTrackSpy.count(), 0); 6182 QCOMPARE(seekSpy.count(), 0); 6183 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6184 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6185 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6186 6187 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 6188 6189 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 6190 6191 QCOMPARE(currentTrackChangedSpy.count(), 1); 6192 QCOMPARE(playListModelChangedSpy.count(), 1); 6193 QCOMPARE(playerSourceChangedSpy.count(), 2); 6194 QCOMPARE(urlRoleChangedSpy.count(), 1); 6195 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6196 QCOMPARE(titleRoleChangedSpy.count(), 1); 6197 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6198 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6199 QCOMPARE(playerStatusChangedSpy.count(), 1); 6200 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6201 QCOMPARE(playerErrorChangedSpy.count(), 0); 6202 QCOMPARE(persistentStateChangedSpy.count(), 1); 6203 QCOMPARE(playerPlaySpy.count(), 0); 6204 QCOMPARE(playerPauseSpy.count(), 0); 6205 QCOMPARE(playerStopSpy.count(), 0); 6206 QCOMPARE(skipNextTrackSpy.count(), 0); 6207 QCOMPARE(seekSpy.count(), 0); 6208 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6209 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6210 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6211 6212 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 6213 6214 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 6215 6216 QCOMPARE(currentTrackChangedSpy.count(), 1); 6217 QCOMPARE(playListModelChangedSpy.count(), 1); 6218 QCOMPARE(playerSourceChangedSpy.count(), 2); 6219 QCOMPARE(urlRoleChangedSpy.count(), 1); 6220 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6221 QCOMPARE(titleRoleChangedSpy.count(), 1); 6222 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6223 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6224 QCOMPARE(playerStatusChangedSpy.count(), 1); 6225 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6226 QCOMPARE(playerErrorChangedSpy.count(), 0); 6227 QCOMPARE(persistentStateChangedSpy.count(), 1); 6228 QCOMPARE(playerPlaySpy.count(), 0); 6229 QCOMPARE(playerPauseSpy.count(), 0); 6230 QCOMPARE(playerStopSpy.count(), 0); 6231 QCOMPARE(skipNextTrackSpy.count(), 0); 6232 QCOMPARE(seekSpy.count(), 0); 6233 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6234 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6235 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6236 6237 myPlayer.setPlayerError(QMediaPlayer::NoError); 6238 6239 QCOMPARE(currentTrackChangedSpy.count(), 1); 6240 QCOMPARE(playListModelChangedSpy.count(), 1); 6241 QCOMPARE(playerSourceChangedSpy.count(), 2); 6242 QCOMPARE(urlRoleChangedSpy.count(), 1); 6243 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6244 QCOMPARE(titleRoleChangedSpy.count(), 1); 6245 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6246 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6247 QCOMPARE(playerStatusChangedSpy.count(), 1); 6248 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6249 QCOMPARE(playerErrorChangedSpy.count(), 0); 6250 QCOMPARE(persistentStateChangedSpy.count(), 1); 6251 QCOMPARE(playerPlaySpy.count(), 0); 6252 QCOMPARE(playerPauseSpy.count(), 0); 6253 QCOMPARE(playerStopSpy.count(), 0); 6254 QCOMPARE(skipNextTrackSpy.count(), 0); 6255 QCOMPARE(seekSpy.count(), 0); 6256 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6257 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6258 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6259 6260 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 6261 6262 QCOMPARE(currentTrackChangedSpy.count(), 1); 6263 QCOMPARE(playListModelChangedSpy.count(), 1); 6264 QCOMPARE(playerSourceChangedSpy.count(), 2); 6265 QCOMPARE(urlRoleChangedSpy.count(), 1); 6266 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6267 QCOMPARE(titleRoleChangedSpy.count(), 1); 6268 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6269 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6270 QCOMPARE(playerStatusChangedSpy.count(), 2); 6271 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6272 QCOMPARE(playerErrorChangedSpy.count(), 0); 6273 QCOMPARE(persistentStateChangedSpy.count(), 1); 6274 QCOMPARE(playerPlaySpy.count(), 0); 6275 QCOMPARE(playerPauseSpy.count(), 0); 6276 QCOMPARE(playerStopSpy.count(), 0); 6277 QCOMPARE(skipNextTrackSpy.count(), 0); 6278 QCOMPARE(seekSpy.count(), 0); 6279 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6280 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6281 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6282 6283 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 6284 6285 QCOMPARE(playerPlaySpy.wait(), true); 6286 6287 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 6288 6289 QCOMPARE(currentTrackChangedSpy.count(), 1); 6290 QCOMPARE(playListModelChangedSpy.count(), 1); 6291 QCOMPARE(playerSourceChangedSpy.count(), 2); 6292 QCOMPARE(urlRoleChangedSpy.count(), 1); 6293 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6294 QCOMPARE(titleRoleChangedSpy.count(), 1); 6295 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6296 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6297 QCOMPARE(playerStatusChangedSpy.count(), 3); 6298 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6299 QCOMPARE(playerErrorChangedSpy.count(), 0); 6300 QCOMPARE(persistentStateChangedSpy.count(), 1); 6301 QCOMPARE(playerPlaySpy.count(), 1); 6302 QCOMPARE(playerPauseSpy.count(), 0); 6303 QCOMPARE(playerStopSpy.count(), 0); 6304 QCOMPARE(skipNextTrackSpy.count(), 0); 6305 QCOMPARE(seekSpy.count(), 0); 6306 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6307 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6308 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6309 6310 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 6311 6312 QCOMPARE(currentTrackChangedSpy.count(), 1); 6313 QCOMPARE(playListModelChangedSpy.count(), 1); 6314 QCOMPARE(playerSourceChangedSpy.count(), 2); 6315 QCOMPARE(urlRoleChangedSpy.count(), 1); 6316 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6317 QCOMPARE(titleRoleChangedSpy.count(), 1); 6318 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6319 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6320 QCOMPARE(playerStatusChangedSpy.count(), 3); 6321 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6322 QCOMPARE(playerErrorChangedSpy.count(), 0); 6323 QCOMPARE(persistentStateChangedSpy.count(), 1); 6324 QCOMPARE(playerPlaySpy.count(), 1); 6325 QCOMPARE(playerPauseSpy.count(), 0); 6326 QCOMPARE(playerStopSpy.count(), 0); 6327 QCOMPARE(skipNextTrackSpy.count(), 0); 6328 QCOMPARE(seekSpy.count(), 0); 6329 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6330 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6331 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6332 6333 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 6334 6335 QCOMPARE(currentTrackChangedSpy.count(), 1); 6336 QCOMPARE(playListModelChangedSpy.count(), 1); 6337 QCOMPARE(playerSourceChangedSpy.count(), 2); 6338 QCOMPARE(urlRoleChangedSpy.count(), 1); 6339 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6340 QCOMPARE(titleRoleChangedSpy.count(), 1); 6341 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6342 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6343 QCOMPARE(playerStatusChangedSpy.count(), 3); 6344 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 6345 QCOMPARE(playerErrorChangedSpy.count(), 0); 6346 QCOMPARE(persistentStateChangedSpy.count(), 1); 6347 QCOMPARE(playerPlaySpy.count(), 1); 6348 QCOMPARE(playerPauseSpy.count(), 0); 6349 QCOMPARE(playerStopSpy.count(), 0); 6350 QCOMPARE(skipNextTrackSpy.count(), 0); 6351 QCOMPARE(seekSpy.count(), 0); 6352 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 6353 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6354 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6355 6356 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 6357 6358 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 6359 6360 QCOMPARE(currentTrackChangedSpy.count(), 1); 6361 QCOMPARE(playListModelChangedSpy.count(), 1); 6362 QCOMPARE(playerSourceChangedSpy.count(), 2); 6363 QCOMPARE(urlRoleChangedSpy.count(), 1); 6364 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6365 QCOMPARE(titleRoleChangedSpy.count(), 1); 6366 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6367 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6368 QCOMPARE(playerStatusChangedSpy.count(), 4); 6369 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 6370 QCOMPARE(playerErrorChangedSpy.count(), 0); 6371 QCOMPARE(persistentStateChangedSpy.count(), 1); 6372 QCOMPARE(playerPlaySpy.count(), 1); 6373 QCOMPARE(playerPauseSpy.count(), 0); 6374 QCOMPARE(playerStopSpy.count(), 0); 6375 QCOMPARE(skipNextTrackSpy.count(), 0); 6376 QCOMPARE(seekSpy.count(), 0); 6377 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 6378 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6379 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6380 6381 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 6382 6383 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 6384 6385 QCOMPARE(currentTrackChangedSpy.count(), 1); 6386 QCOMPARE(playListModelChangedSpy.count(), 1); 6387 QCOMPARE(playerSourceChangedSpy.count(), 2); 6388 QCOMPARE(urlRoleChangedSpy.count(), 1); 6389 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6390 QCOMPARE(titleRoleChangedSpy.count(), 1); 6391 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6392 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6393 QCOMPARE(playerStatusChangedSpy.count(), 4); 6394 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 6395 QCOMPARE(playerErrorChangedSpy.count(), 0); 6396 QCOMPARE(persistentStateChangedSpy.count(), 1); 6397 QCOMPARE(playerPlaySpy.count(), 1); 6398 QCOMPARE(playerPauseSpy.count(), 0); 6399 QCOMPARE(playerStopSpy.count(), 0); 6400 QCOMPARE(skipNextTrackSpy.count(), 0); 6401 QCOMPARE(seekSpy.count(), 0); 6402 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6403 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6404 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6405 6406 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 6407 6408 QCOMPARE(skipNextTrackSpy.wait(), true); 6409 6410 QCOMPARE(currentTrackChangedSpy.count(), 1); 6411 QCOMPARE(playListModelChangedSpy.count(), 1); 6412 QCOMPARE(playerSourceChangedSpy.count(), 2); 6413 QCOMPARE(urlRoleChangedSpy.count(), 1); 6414 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6415 QCOMPARE(titleRoleChangedSpy.count(), 1); 6416 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6417 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6418 QCOMPARE(playerStatusChangedSpy.count(), 4); 6419 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 6420 QCOMPARE(playerErrorChangedSpy.count(), 0); 6421 QCOMPARE(persistentStateChangedSpy.count(), 1); 6422 QCOMPARE(playerPlaySpy.count(), 1); 6423 QCOMPARE(playerPauseSpy.count(), 0); 6424 QCOMPARE(playerStopSpy.count(), 0); 6425 QCOMPARE(skipNextTrackSpy.count(), 1); 6426 QCOMPARE(seekSpy.count(), 0); 6427 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6428 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6429 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6430 6431 myPlayer.setPlayerStatus(QMediaPlayer::InvalidMedia); 6432 6433 QCOMPARE(skipNextTrackSpy.wait(150), true); 6434 6435 QCOMPARE(currentTrackChangedSpy.count(), 1); 6436 QCOMPARE(playListModelChangedSpy.count(), 1); 6437 QCOMPARE(playerSourceChangedSpy.count(), 2); 6438 QCOMPARE(urlRoleChangedSpy.count(), 1); 6439 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6440 QCOMPARE(titleRoleChangedSpy.count(), 1); 6441 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6442 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6443 QCOMPARE(playerStatusChangedSpy.count(), 5); 6444 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 6445 QCOMPARE(playerErrorChangedSpy.count(), 0); 6446 QCOMPARE(persistentStateChangedSpy.count(), 1); 6447 QCOMPARE(playerPlaySpy.count(), 1); 6448 QCOMPARE(playerPauseSpy.count(), 0); 6449 QCOMPARE(playerStopSpy.count(), 0); 6450 QCOMPARE(skipNextTrackSpy.count(), 2); 6451 QCOMPARE(seekSpy.count(), 0); 6452 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6453 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6454 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6455 6456 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::InvalidMedia); 6457 } 6458 6459 void ManageAudioPlayerTest::testRestoreSettingsNoAutomaticPlay() 6460 { 6461 Elisa::ElisaConfiguration::self()->setDefaults(); 6462 ManageAudioPlayer myPlayer; 6463 QStandardItemModel myPlayList; 6464 6465 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 6466 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 6467 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 6468 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 6469 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 6470 QSignalSpy titleRoleChangedSpy(&myPlayer, &ManageAudioPlayer::titleRoleChanged); 6471 QSignalSpy artistNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::artistNameRoleChanged); 6472 QSignalSpy albumNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::albumNameRoleChanged); 6473 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 6474 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 6475 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 6476 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 6477 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 6478 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 6479 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 6480 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 6481 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 6482 6483 myPlayList.appendRow(new QStandardItem); 6484 myPlayList.appendRow(new QStandardItem); 6485 myPlayList.appendRow(new QStandardItem); 6486 6487 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 6488 myPlayList.item(0, 0)->setData(QStringLiteral("title"), ManageAudioPlayerTest::TitleRole); 6489 myPlayList.item(0, 0)->setData(QStringLiteral("artist"), ManageAudioPlayerTest::ArtistRole); 6490 myPlayList.item(0, 0)->setData(QStringLiteral("album"), ManageAudioPlayerTest::AlbumRole); 6491 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 6492 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 6493 6494 QCOMPARE(currentTrackChangedSpy.count(), 0); 6495 QCOMPARE(playListModelChangedSpy.count(), 0); 6496 QCOMPARE(playerSourceChangedSpy.count(), 0); 6497 QCOMPARE(urlRoleChangedSpy.count(), 0); 6498 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6499 QCOMPARE(titleRoleChangedSpy.count(), 0); 6500 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6501 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6502 QCOMPARE(playerStatusChangedSpy.count(), 0); 6503 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6504 QCOMPARE(playerErrorChangedSpy.count(), 0); 6505 QCOMPARE(persistentStateChangedSpy.count(), 0); 6506 QCOMPARE(playerPlaySpy.count(), 0); 6507 QCOMPARE(playerPauseSpy.count(), 0); 6508 QCOMPARE(playerStopSpy.count(), 0); 6509 QCOMPARE(skipNextTrackSpy.count(), 0); 6510 QCOMPARE(seekSpy.count(), 0); 6511 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6512 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6513 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6514 6515 myPlayer.setPlayListModel(&myPlayList); 6516 6517 QCOMPARE(currentTrackChangedSpy.count(), 0); 6518 QCOMPARE(playListModelChangedSpy.count(), 1); 6519 QCOMPARE(playerSourceChangedSpy.count(), 0); 6520 QCOMPARE(urlRoleChangedSpy.count(), 0); 6521 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6522 QCOMPARE(titleRoleChangedSpy.count(), 0); 6523 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6524 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6525 QCOMPARE(playerStatusChangedSpy.count(), 0); 6526 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6527 QCOMPARE(playerErrorChangedSpy.count(), 0); 6528 QCOMPARE(persistentStateChangedSpy.count(), 0); 6529 QCOMPARE(playerPlaySpy.count(), 0); 6530 QCOMPARE(playerPauseSpy.count(), 0); 6531 QCOMPARE(playerStopSpy.count(), 0); 6532 QCOMPARE(skipNextTrackSpy.count(), 0); 6533 QCOMPARE(seekSpy.count(), 0); 6534 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6535 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6536 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6537 6538 QVariantMap settings; 6539 settings[QStringLiteral("isPlaying")] = false; 6540 settings[QStringLiteral("audioPlayerCurrentTitle")] = QStringLiteral("title"); 6541 settings[QStringLiteral("audioPlayerCurrentArtistName")] = QStringLiteral("artist"); 6542 settings[QStringLiteral("audioPlayerCurrentAlbumName")] = QStringLiteral("album"); 6543 6544 myPlayer.setPersistentState(settings); 6545 6546 QCOMPARE(currentTrackChangedSpy.count(), 0); 6547 QCOMPARE(playListModelChangedSpy.count(), 1); 6548 QCOMPARE(playerSourceChangedSpy.count(), 0); 6549 QCOMPARE(urlRoleChangedSpy.count(), 0); 6550 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6551 QCOMPARE(titleRoleChangedSpy.count(), 0); 6552 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6553 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6554 QCOMPARE(playerStatusChangedSpy.count(), 0); 6555 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6556 QCOMPARE(playerErrorChangedSpy.count(), 0); 6557 QCOMPARE(persistentStateChangedSpy.count(), 1); 6558 QCOMPARE(playerPlaySpy.count(), 0); 6559 QCOMPARE(playerPauseSpy.count(), 0); 6560 QCOMPARE(playerStopSpy.count(), 0); 6561 QCOMPARE(skipNextTrackSpy.count(), 0); 6562 QCOMPARE(seekSpy.count(), 0); 6563 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6564 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6565 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6566 6567 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 6568 6569 QCOMPARE(currentTrackChangedSpy.count(), 1); 6570 QCOMPARE(playListModelChangedSpy.count(), 1); 6571 QCOMPARE(playerSourceChangedSpy.count(), 1); 6572 QCOMPARE(urlRoleChangedSpy.count(), 0); 6573 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6574 QCOMPARE(titleRoleChangedSpy.count(), 0); 6575 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6576 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6577 QCOMPARE(playerStatusChangedSpy.count(), 0); 6578 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6579 QCOMPARE(playerErrorChangedSpy.count(), 0); 6580 QCOMPARE(persistentStateChangedSpy.count(), 1); 6581 QCOMPARE(playerPlaySpy.count(), 0); 6582 QCOMPARE(playerPauseSpy.count(), 0); 6583 QCOMPARE(playerStopSpy.count(), 0); 6584 QCOMPARE(skipNextTrackSpy.count(), 0); 6585 QCOMPARE(seekSpy.count(), 0); 6586 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6587 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6588 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6589 6590 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 6591 6592 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 6593 6594 QCOMPARE(currentTrackChangedSpy.count(), 1); 6595 QCOMPARE(playListModelChangedSpy.count(), 1); 6596 QCOMPARE(playerSourceChangedSpy.count(), 2); 6597 QCOMPARE(urlRoleChangedSpy.count(), 1); 6598 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6599 QCOMPARE(titleRoleChangedSpy.count(), 0); 6600 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6601 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6602 QCOMPARE(playerStatusChangedSpy.count(), 0); 6603 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6604 QCOMPARE(playerErrorChangedSpy.count(), 0); 6605 QCOMPARE(persistentStateChangedSpy.count(), 1); 6606 QCOMPARE(playerPlaySpy.count(), 0); 6607 QCOMPARE(playerPauseSpy.count(), 0); 6608 QCOMPARE(playerStopSpy.count(), 0); 6609 QCOMPARE(skipNextTrackSpy.count(), 0); 6610 QCOMPARE(seekSpy.count(), 0); 6611 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6612 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6613 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6614 6615 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 6616 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 6617 6618 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 6619 6620 QCOMPARE(currentTrackChangedSpy.count(), 1); 6621 QCOMPARE(playListModelChangedSpy.count(), 1); 6622 QCOMPARE(playerSourceChangedSpy.count(), 2); 6623 QCOMPARE(urlRoleChangedSpy.count(), 1); 6624 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6625 QCOMPARE(titleRoleChangedSpy.count(), 0); 6626 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6627 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6628 QCOMPARE(playerStatusChangedSpy.count(), 0); 6629 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6630 QCOMPARE(playerErrorChangedSpy.count(), 0); 6631 QCOMPARE(persistentStateChangedSpy.count(), 1); 6632 QCOMPARE(playerPlaySpy.count(), 0); 6633 QCOMPARE(playerPauseSpy.count(), 0); 6634 QCOMPARE(playerStopSpy.count(), 0); 6635 QCOMPARE(skipNextTrackSpy.count(), 0); 6636 QCOMPARE(seekSpy.count(), 0); 6637 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6638 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6639 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6640 6641 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 6642 6643 myPlayer.setTitleRole(ManageAudioPlayerTest::TitleRole); 6644 6645 QCOMPARE(currentTrackChangedSpy.count(), 1); 6646 QCOMPARE(playListModelChangedSpy.count(), 1); 6647 QCOMPARE(playerSourceChangedSpy.count(), 2); 6648 QCOMPARE(urlRoleChangedSpy.count(), 1); 6649 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6650 QCOMPARE(titleRoleChangedSpy.count(), 1); 6651 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6652 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6653 QCOMPARE(playerStatusChangedSpy.count(), 0); 6654 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6655 QCOMPARE(playerErrorChangedSpy.count(), 0); 6656 QCOMPARE(persistentStateChangedSpy.count(), 1); 6657 QCOMPARE(playerPlaySpy.count(), 0); 6658 QCOMPARE(playerPauseSpy.count(), 0); 6659 QCOMPARE(playerStopSpy.count(), 0); 6660 QCOMPARE(skipNextTrackSpy.count(), 0); 6661 QCOMPARE(seekSpy.count(), 0); 6662 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6663 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6664 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6665 6666 QCOMPARE(myPlayer.titleRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::TitleRole)); 6667 6668 myPlayer.setArtistNameRole(ManageAudioPlayerTest::ArtistRole); 6669 6670 QCOMPARE(currentTrackChangedSpy.count(), 1); 6671 QCOMPARE(playListModelChangedSpy.count(), 1); 6672 QCOMPARE(playerSourceChangedSpy.count(), 2); 6673 QCOMPARE(urlRoleChangedSpy.count(), 1); 6674 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6675 QCOMPARE(titleRoleChangedSpy.count(), 1); 6676 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6677 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6678 QCOMPARE(playerStatusChangedSpy.count(), 0); 6679 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6680 QCOMPARE(playerErrorChangedSpy.count(), 0); 6681 QCOMPARE(persistentStateChangedSpy.count(), 1); 6682 QCOMPARE(playerPlaySpy.count(), 0); 6683 QCOMPARE(playerPauseSpy.count(), 0); 6684 QCOMPARE(playerStopSpy.count(), 0); 6685 QCOMPARE(skipNextTrackSpy.count(), 0); 6686 QCOMPARE(seekSpy.count(), 0); 6687 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6688 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6689 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6690 6691 QCOMPARE(myPlayer.artistNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::ArtistRole)); 6692 6693 myPlayer.setAlbumNameRole(ManageAudioPlayerTest::AlbumRole); 6694 6695 QCOMPARE(currentTrackChangedSpy.count(), 1); 6696 QCOMPARE(playListModelChangedSpy.count(), 1); 6697 QCOMPARE(playerSourceChangedSpy.count(), 2); 6698 QCOMPARE(urlRoleChangedSpy.count(), 1); 6699 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6700 QCOMPARE(titleRoleChangedSpy.count(), 1); 6701 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6702 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6703 QCOMPARE(playerStatusChangedSpy.count(), 0); 6704 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6705 QCOMPARE(playerErrorChangedSpy.count(), 0); 6706 QCOMPARE(persistentStateChangedSpy.count(), 1); 6707 QCOMPARE(playerPlaySpy.count(), 0); 6708 QCOMPARE(playerPauseSpy.count(), 0); 6709 QCOMPARE(playerStopSpy.count(), 0); 6710 QCOMPARE(skipNextTrackSpy.count(), 0); 6711 QCOMPARE(seekSpy.count(), 0); 6712 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6713 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6714 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6715 6716 QCOMPARE(myPlayer.albumNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::AlbumRole)); 6717 6718 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 6719 6720 QCOMPARE(currentTrackChangedSpy.count(), 1); 6721 QCOMPARE(playListModelChangedSpy.count(), 1); 6722 QCOMPARE(playerSourceChangedSpy.count(), 2); 6723 QCOMPARE(urlRoleChangedSpy.count(), 1); 6724 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6725 QCOMPARE(titleRoleChangedSpy.count(), 1); 6726 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6727 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6728 QCOMPARE(playerStatusChangedSpy.count(), 1); 6729 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6730 QCOMPARE(playerErrorChangedSpy.count(), 0); 6731 QCOMPARE(persistentStateChangedSpy.count(), 1); 6732 QCOMPARE(playerPlaySpy.count(), 0); 6733 QCOMPARE(playerPauseSpy.count(), 0); 6734 QCOMPARE(playerStopSpy.count(), 0); 6735 QCOMPARE(skipNextTrackSpy.count(), 0); 6736 QCOMPARE(seekSpy.count(), 0); 6737 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6738 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6739 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6740 6741 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 6742 6743 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 6744 6745 QCOMPARE(currentTrackChangedSpy.count(), 1); 6746 QCOMPARE(playListModelChangedSpy.count(), 1); 6747 QCOMPARE(playerSourceChangedSpy.count(), 2); 6748 QCOMPARE(urlRoleChangedSpy.count(), 1); 6749 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6750 QCOMPARE(titleRoleChangedSpy.count(), 1); 6751 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6752 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6753 QCOMPARE(playerStatusChangedSpy.count(), 1); 6754 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6755 QCOMPARE(playerErrorChangedSpy.count(), 0); 6756 QCOMPARE(persistentStateChangedSpy.count(), 1); 6757 QCOMPARE(playerPlaySpy.count(), 0); 6758 QCOMPARE(playerPauseSpy.count(), 0); 6759 QCOMPARE(playerStopSpy.count(), 0); 6760 QCOMPARE(skipNextTrackSpy.count(), 0); 6761 QCOMPARE(seekSpy.count(), 0); 6762 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6763 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6764 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6765 6766 myPlayer.setPlayerError(QMediaPlayer::NoError); 6767 6768 QCOMPARE(currentTrackChangedSpy.count(), 1); 6769 QCOMPARE(playListModelChangedSpy.count(), 1); 6770 QCOMPARE(playerSourceChangedSpy.count(), 2); 6771 QCOMPARE(urlRoleChangedSpy.count(), 1); 6772 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6773 QCOMPARE(titleRoleChangedSpy.count(), 1); 6774 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6775 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6776 QCOMPARE(playerStatusChangedSpy.count(), 1); 6777 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6778 QCOMPARE(playerErrorChangedSpy.count(), 0); 6779 QCOMPARE(persistentStateChangedSpy.count(), 1); 6780 QCOMPARE(playerPlaySpy.count(), 0); 6781 QCOMPARE(playerPauseSpy.count(), 0); 6782 QCOMPARE(playerStopSpy.count(), 0); 6783 QCOMPARE(skipNextTrackSpy.count(), 0); 6784 QCOMPARE(seekSpy.count(), 0); 6785 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6786 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6787 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6788 6789 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 6790 6791 QCOMPARE(currentTrackChangedSpy.count(), 1); 6792 QCOMPARE(playListModelChangedSpy.count(), 1); 6793 QCOMPARE(playerSourceChangedSpy.count(), 2); 6794 QCOMPARE(urlRoleChangedSpy.count(), 1); 6795 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6796 QCOMPARE(titleRoleChangedSpy.count(), 1); 6797 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6798 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6799 QCOMPARE(playerStatusChangedSpy.count(), 2); 6800 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6801 QCOMPARE(playerErrorChangedSpy.count(), 0); 6802 QCOMPARE(persistentStateChangedSpy.count(), 1); 6803 QCOMPARE(playerPlaySpy.count(), 0); 6804 QCOMPARE(playerPauseSpy.count(), 0); 6805 QCOMPARE(playerStopSpy.count(), 0); 6806 QCOMPARE(skipNextTrackSpy.count(), 0); 6807 QCOMPARE(seekSpy.count(), 0); 6808 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6809 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6810 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6811 6812 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 6813 6814 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 6815 6816 QCOMPARE(currentTrackChangedSpy.count(), 1); 6817 QCOMPARE(playListModelChangedSpy.count(), 1); 6818 QCOMPARE(playerSourceChangedSpy.count(), 2); 6819 QCOMPARE(urlRoleChangedSpy.count(), 1); 6820 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6821 QCOMPARE(titleRoleChangedSpy.count(), 1); 6822 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6823 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6824 QCOMPARE(playerStatusChangedSpy.count(), 3); 6825 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6826 QCOMPARE(playerErrorChangedSpy.count(), 0); 6827 QCOMPARE(persistentStateChangedSpy.count(), 1); 6828 QCOMPARE(playerPlaySpy.count(), 0); 6829 QCOMPARE(playerPauseSpy.count(), 0); 6830 QCOMPARE(playerStopSpy.count(), 0); 6831 QCOMPARE(skipNextTrackSpy.count(), 0); 6832 QCOMPARE(seekSpy.count(), 0); 6833 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6834 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6835 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6836 6837 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 6838 6839 QCOMPARE(playerPlaySpy.wait(1000), false); 6840 6841 QCOMPARE(currentTrackChangedSpy.count(), 1); 6842 QCOMPARE(playListModelChangedSpy.count(), 1); 6843 QCOMPARE(playerSourceChangedSpy.count(), 2); 6844 QCOMPARE(urlRoleChangedSpy.count(), 1); 6845 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 6846 QCOMPARE(titleRoleChangedSpy.count(), 1); 6847 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 6848 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 6849 QCOMPARE(playerStatusChangedSpy.count(), 3); 6850 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6851 QCOMPARE(playerErrorChangedSpy.count(), 0); 6852 QCOMPARE(persistentStateChangedSpy.count(), 1); 6853 QCOMPARE(playerPlaySpy.count(), 0); 6854 QCOMPARE(playerPauseSpy.count(), 0); 6855 QCOMPARE(playerStopSpy.count(), 0); 6856 QCOMPARE(skipNextTrackSpy.count(), 0); 6857 QCOMPARE(seekSpy.count(), 0); 6858 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6859 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6860 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6861 } 6862 6863 void ManageAudioPlayerTest::testRestoreSettingsAutomaticPlayAndPosition() 6864 { 6865 Elisa::ElisaConfiguration::self()->setDefaults(); 6866 Elisa::ElisaConfiguration::self()->setPlayAtStartup(true); 6867 ManageAudioPlayer myPlayer; 6868 QStandardItemModel myPlayList; 6869 6870 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 6871 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 6872 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 6873 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 6874 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 6875 QSignalSpy titleRoleChangedSpy(&myPlayer, &ManageAudioPlayer::titleRoleChanged); 6876 QSignalSpy artistNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::artistNameRoleChanged); 6877 QSignalSpy albumNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::albumNameRoleChanged); 6878 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 6879 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 6880 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 6881 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 6882 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 6883 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 6884 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 6885 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 6886 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 6887 6888 myPlayList.appendRow(new QStandardItem); 6889 myPlayList.appendRow(new QStandardItem); 6890 myPlayList.appendRow(new QStandardItem); 6891 6892 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 6893 myPlayList.item(0, 0)->setData(QStringLiteral("title"), ManageAudioPlayerTest::TitleRole); 6894 myPlayList.item(0, 0)->setData(QStringLiteral("artist"), ManageAudioPlayerTest::ArtistRole); 6895 myPlayList.item(0, 0)->setData(QStringLiteral("album"), ManageAudioPlayerTest::AlbumRole); 6896 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 6897 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 6898 6899 QCOMPARE(currentTrackChangedSpy.count(), 0); 6900 QCOMPARE(playListModelChangedSpy.count(), 0); 6901 QCOMPARE(playerSourceChangedSpy.count(), 0); 6902 QCOMPARE(urlRoleChangedSpy.count(), 0); 6903 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6904 QCOMPARE(titleRoleChangedSpy.count(), 0); 6905 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6906 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6907 QCOMPARE(playerStatusChangedSpy.count(), 0); 6908 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6909 QCOMPARE(playerErrorChangedSpy.count(), 0); 6910 QCOMPARE(persistentStateChangedSpy.count(), 0); 6911 QCOMPARE(playerPlaySpy.count(), 0); 6912 QCOMPARE(playerPauseSpy.count(), 0); 6913 QCOMPARE(playerStopSpy.count(), 0); 6914 QCOMPARE(skipNextTrackSpy.count(), 0); 6915 QCOMPARE(seekSpy.count(), 0); 6916 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6917 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6918 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6919 6920 myPlayer.setPlayListModel(&myPlayList); 6921 6922 QCOMPARE(currentTrackChangedSpy.count(), 0); 6923 QCOMPARE(playListModelChangedSpy.count(), 1); 6924 QCOMPARE(playerSourceChangedSpy.count(), 0); 6925 QCOMPARE(urlRoleChangedSpy.count(), 0); 6926 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6927 QCOMPARE(titleRoleChangedSpy.count(), 0); 6928 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6929 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6930 QCOMPARE(playerStatusChangedSpy.count(), 0); 6931 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6932 QCOMPARE(playerErrorChangedSpy.count(), 0); 6933 QCOMPARE(persistentStateChangedSpy.count(), 0); 6934 QCOMPARE(playerPlaySpy.count(), 0); 6935 QCOMPARE(playerPauseSpy.count(), 0); 6936 QCOMPARE(playerStopSpy.count(), 0); 6937 QCOMPARE(skipNextTrackSpy.count(), 0); 6938 QCOMPARE(seekSpy.count(), 0); 6939 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6940 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6941 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6942 6943 QVariantMap settings; 6944 settings[QStringLiteral("isPlaying")] = true; 6945 settings[QStringLiteral("audioPlayerCurrentTitle")] = QStringLiteral("title"); 6946 settings[QStringLiteral("audioPlayerCurrentArtistName")] = QStringLiteral("artist"); 6947 settings[QStringLiteral("audioPlayerCurrentAlbumName")] = QStringLiteral("album"); 6948 settings[QStringLiteral("playerPosition")] = 10000; 6949 6950 myPlayer.setPersistentState(settings); 6951 6952 QCOMPARE(currentTrackChangedSpy.count(), 0); 6953 QCOMPARE(playListModelChangedSpy.count(), 1); 6954 QCOMPARE(playerSourceChangedSpy.count(), 0); 6955 QCOMPARE(urlRoleChangedSpy.count(), 0); 6956 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6957 QCOMPARE(titleRoleChangedSpy.count(), 0); 6958 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6959 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6960 QCOMPARE(playerStatusChangedSpy.count(), 0); 6961 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6962 QCOMPARE(playerErrorChangedSpy.count(), 0); 6963 QCOMPARE(persistentStateChangedSpy.count(), 1); 6964 QCOMPARE(playerPlaySpy.count(), 0); 6965 QCOMPARE(playerPauseSpy.count(), 0); 6966 QCOMPARE(playerStopSpy.count(), 0); 6967 QCOMPARE(skipNextTrackSpy.count(), 0); 6968 QCOMPARE(seekSpy.count(), 0); 6969 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6970 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6971 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6972 6973 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 6974 6975 QCOMPARE(currentTrackChangedSpy.count(), 1); 6976 QCOMPARE(playListModelChangedSpy.count(), 1); 6977 QCOMPARE(playerSourceChangedSpy.count(), 1); 6978 QCOMPARE(urlRoleChangedSpy.count(), 0); 6979 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 6980 QCOMPARE(titleRoleChangedSpy.count(), 0); 6981 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 6982 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 6983 QCOMPARE(playerStatusChangedSpy.count(), 0); 6984 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 6985 QCOMPARE(playerErrorChangedSpy.count(), 0); 6986 QCOMPARE(persistentStateChangedSpy.count(), 1); 6987 QCOMPARE(playerPlaySpy.count(), 0); 6988 QCOMPARE(playerPauseSpy.count(), 0); 6989 QCOMPARE(playerStopSpy.count(), 0); 6990 QCOMPARE(skipNextTrackSpy.count(), 0); 6991 QCOMPARE(seekSpy.count(), 0); 6992 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6993 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6994 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 6995 6996 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 6997 6998 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 6999 7000 QCOMPARE(currentTrackChangedSpy.count(), 1); 7001 QCOMPARE(playListModelChangedSpy.count(), 1); 7002 QCOMPARE(playerSourceChangedSpy.count(), 2); 7003 QCOMPARE(urlRoleChangedSpy.count(), 1); 7004 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7005 QCOMPARE(titleRoleChangedSpy.count(), 0); 7006 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 7007 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 7008 QCOMPARE(playerStatusChangedSpy.count(), 0); 7009 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7010 QCOMPARE(playerErrorChangedSpy.count(), 0); 7011 QCOMPARE(persistentStateChangedSpy.count(), 1); 7012 QCOMPARE(playerPlaySpy.count(), 0); 7013 QCOMPARE(playerPauseSpy.count(), 0); 7014 QCOMPARE(playerStopSpy.count(), 0); 7015 QCOMPARE(skipNextTrackSpy.count(), 0); 7016 QCOMPARE(seekSpy.count(), 0); 7017 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7018 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7019 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7020 7021 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 7022 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 7023 7024 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 7025 7026 QCOMPARE(currentTrackChangedSpy.count(), 1); 7027 QCOMPARE(playListModelChangedSpy.count(), 1); 7028 QCOMPARE(playerSourceChangedSpy.count(), 2); 7029 QCOMPARE(urlRoleChangedSpy.count(), 1); 7030 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7031 QCOMPARE(titleRoleChangedSpy.count(), 0); 7032 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 7033 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 7034 QCOMPARE(playerStatusChangedSpy.count(), 0); 7035 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7036 QCOMPARE(playerErrorChangedSpy.count(), 0); 7037 QCOMPARE(persistentStateChangedSpy.count(), 1); 7038 QCOMPARE(playerPlaySpy.count(), 0); 7039 QCOMPARE(playerPauseSpy.count(), 0); 7040 QCOMPARE(playerStopSpy.count(), 0); 7041 QCOMPARE(skipNextTrackSpy.count(), 0); 7042 QCOMPARE(seekSpy.count(), 0); 7043 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7044 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7045 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7046 7047 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 7048 7049 myPlayer.setTitleRole(ManageAudioPlayerTest::TitleRole); 7050 7051 QCOMPARE(currentTrackChangedSpy.count(), 1); 7052 QCOMPARE(playListModelChangedSpy.count(), 1); 7053 QCOMPARE(playerSourceChangedSpy.count(), 2); 7054 QCOMPARE(urlRoleChangedSpy.count(), 1); 7055 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7056 QCOMPARE(titleRoleChangedSpy.count(), 1); 7057 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 7058 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 7059 QCOMPARE(playerStatusChangedSpy.count(), 0); 7060 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7061 QCOMPARE(playerErrorChangedSpy.count(), 0); 7062 QCOMPARE(persistentStateChangedSpy.count(), 1); 7063 QCOMPARE(playerPlaySpy.count(), 0); 7064 QCOMPARE(playerPauseSpy.count(), 0); 7065 QCOMPARE(playerStopSpy.count(), 0); 7066 QCOMPARE(skipNextTrackSpy.count(), 0); 7067 QCOMPARE(seekSpy.count(), 0); 7068 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7069 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7070 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7071 7072 QCOMPARE(myPlayer.titleRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::TitleRole)); 7073 7074 myPlayer.setArtistNameRole(ManageAudioPlayerTest::ArtistRole); 7075 7076 QCOMPARE(currentTrackChangedSpy.count(), 1); 7077 QCOMPARE(playListModelChangedSpy.count(), 1); 7078 QCOMPARE(playerSourceChangedSpy.count(), 2); 7079 QCOMPARE(urlRoleChangedSpy.count(), 1); 7080 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7081 QCOMPARE(titleRoleChangedSpy.count(), 1); 7082 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7083 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 7084 QCOMPARE(playerStatusChangedSpy.count(), 0); 7085 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7086 QCOMPARE(playerErrorChangedSpy.count(), 0); 7087 QCOMPARE(persistentStateChangedSpy.count(), 1); 7088 QCOMPARE(playerPlaySpy.count(), 0); 7089 QCOMPARE(playerPauseSpy.count(), 0); 7090 QCOMPARE(playerStopSpy.count(), 0); 7091 QCOMPARE(skipNextTrackSpy.count(), 0); 7092 QCOMPARE(seekSpy.count(), 0); 7093 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7094 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7095 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7096 7097 QCOMPARE(myPlayer.artistNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::ArtistRole)); 7098 7099 myPlayer.setAlbumNameRole(ManageAudioPlayerTest::AlbumRole); 7100 7101 QCOMPARE(currentTrackChangedSpy.count(), 1); 7102 QCOMPARE(playListModelChangedSpy.count(), 1); 7103 QCOMPARE(playerSourceChangedSpy.count(), 2); 7104 QCOMPARE(urlRoleChangedSpy.count(), 1); 7105 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7106 QCOMPARE(titleRoleChangedSpy.count(), 1); 7107 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7108 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7109 QCOMPARE(playerStatusChangedSpy.count(), 0); 7110 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7111 QCOMPARE(playerErrorChangedSpy.count(), 0); 7112 QCOMPARE(persistentStateChangedSpy.count(), 1); 7113 QCOMPARE(playerPlaySpy.count(), 0); 7114 QCOMPARE(playerPauseSpy.count(), 0); 7115 QCOMPARE(playerStopSpy.count(), 0); 7116 QCOMPARE(skipNextTrackSpy.count(), 0); 7117 QCOMPARE(seekSpy.count(), 1); 7118 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7119 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7120 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7121 7122 QCOMPARE(seekSpy.at(0).at(0).toInt(), 10000); 7123 QCOMPARE(myPlayer.albumNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::AlbumRole)); 7124 7125 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 7126 7127 QCOMPARE(currentTrackChangedSpy.count(), 1); 7128 QCOMPARE(playListModelChangedSpy.count(), 1); 7129 QCOMPARE(playerSourceChangedSpy.count(), 2); 7130 QCOMPARE(urlRoleChangedSpy.count(), 1); 7131 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7132 QCOMPARE(titleRoleChangedSpy.count(), 1); 7133 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7134 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7135 QCOMPARE(playerStatusChangedSpy.count(), 1); 7136 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7137 QCOMPARE(playerErrorChangedSpy.count(), 0); 7138 QCOMPARE(persistentStateChangedSpy.count(), 1); 7139 QCOMPARE(playerPlaySpy.count(), 0); 7140 QCOMPARE(playerPauseSpy.count(), 0); 7141 QCOMPARE(playerStopSpy.count(), 0); 7142 QCOMPARE(skipNextTrackSpy.count(), 0); 7143 QCOMPARE(seekSpy.count(), 1); 7144 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7145 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7146 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7147 7148 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 7149 7150 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 7151 7152 QCOMPARE(currentTrackChangedSpy.count(), 1); 7153 QCOMPARE(playListModelChangedSpy.count(), 1); 7154 QCOMPARE(playerSourceChangedSpy.count(), 2); 7155 QCOMPARE(urlRoleChangedSpy.count(), 1); 7156 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7157 QCOMPARE(titleRoleChangedSpy.count(), 1); 7158 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7159 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7160 QCOMPARE(playerStatusChangedSpy.count(), 1); 7161 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7162 QCOMPARE(playerErrorChangedSpy.count(), 0); 7163 QCOMPARE(persistentStateChangedSpy.count(), 1); 7164 QCOMPARE(playerPlaySpy.count(), 0); 7165 QCOMPARE(playerPauseSpy.count(), 0); 7166 QCOMPARE(playerStopSpy.count(), 0); 7167 QCOMPARE(skipNextTrackSpy.count(), 0); 7168 QCOMPARE(seekSpy.count(), 1); 7169 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7170 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7171 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7172 7173 myPlayer.setPlayerError(QMediaPlayer::NoError); 7174 7175 QCOMPARE(currentTrackChangedSpy.count(), 1); 7176 QCOMPARE(playListModelChangedSpy.count(), 1); 7177 QCOMPARE(playerSourceChangedSpy.count(), 2); 7178 QCOMPARE(urlRoleChangedSpy.count(), 1); 7179 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7180 QCOMPARE(titleRoleChangedSpy.count(), 1); 7181 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7182 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7183 QCOMPARE(playerStatusChangedSpy.count(), 1); 7184 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7185 QCOMPARE(playerErrorChangedSpy.count(), 0); 7186 QCOMPARE(persistentStateChangedSpy.count(), 1); 7187 QCOMPARE(playerPlaySpy.count(), 0); 7188 QCOMPARE(playerPauseSpy.count(), 0); 7189 QCOMPARE(playerStopSpy.count(), 0); 7190 QCOMPARE(skipNextTrackSpy.count(), 0); 7191 QCOMPARE(seekSpy.count(), 1); 7192 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7193 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7194 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7195 7196 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 7197 7198 QCOMPARE(currentTrackChangedSpy.count(), 1); 7199 QCOMPARE(playListModelChangedSpy.count(), 1); 7200 QCOMPARE(playerSourceChangedSpy.count(), 2); 7201 QCOMPARE(urlRoleChangedSpy.count(), 1); 7202 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7203 QCOMPARE(titleRoleChangedSpy.count(), 1); 7204 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7205 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7206 QCOMPARE(playerStatusChangedSpy.count(), 2); 7207 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7208 QCOMPARE(playerErrorChangedSpy.count(), 0); 7209 QCOMPARE(persistentStateChangedSpy.count(), 1); 7210 QCOMPARE(playerPlaySpy.count(), 0); 7211 QCOMPARE(playerPauseSpy.count(), 0); 7212 QCOMPARE(playerStopSpy.count(), 0); 7213 QCOMPARE(skipNextTrackSpy.count(), 0); 7214 QCOMPARE(seekSpy.count(), 1); 7215 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7216 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7217 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7218 7219 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 7220 7221 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 7222 7223 QCOMPARE(currentTrackChangedSpy.count(), 1); 7224 QCOMPARE(playListModelChangedSpy.count(), 1); 7225 QCOMPARE(playerSourceChangedSpy.count(), 2); 7226 QCOMPARE(urlRoleChangedSpy.count(), 1); 7227 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7228 QCOMPARE(titleRoleChangedSpy.count(), 1); 7229 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7230 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7231 QCOMPARE(playerStatusChangedSpy.count(), 3); 7232 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7233 QCOMPARE(playerErrorChangedSpy.count(), 0); 7234 QCOMPARE(persistentStateChangedSpy.count(), 1); 7235 QCOMPARE(playerPlaySpy.count(), 0); 7236 QCOMPARE(playerPauseSpy.count(), 0); 7237 QCOMPARE(playerStopSpy.count(), 0); 7238 QCOMPARE(skipNextTrackSpy.count(), 0); 7239 QCOMPARE(seekSpy.count(), 1); 7240 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7241 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7242 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7243 7244 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 7245 7246 QCOMPARE(playerPlaySpy.wait(), true); 7247 7248 QCOMPARE(currentTrackChangedSpy.count(), 1); 7249 QCOMPARE(playListModelChangedSpy.count(), 1); 7250 QCOMPARE(playerSourceChangedSpy.count(), 2); 7251 QCOMPARE(urlRoleChangedSpy.count(), 1); 7252 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7253 QCOMPARE(titleRoleChangedSpy.count(), 1); 7254 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7255 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7256 QCOMPARE(playerStatusChangedSpy.count(), 3); 7257 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7258 QCOMPARE(playerErrorChangedSpy.count(), 0); 7259 QCOMPARE(persistentStateChangedSpy.count(), 1); 7260 QCOMPARE(playerPlaySpy.count(), 1); 7261 QCOMPARE(playerPauseSpy.count(), 0); 7262 QCOMPARE(playerStopSpy.count(), 0); 7263 QCOMPARE(skipNextTrackSpy.count(), 0); 7264 QCOMPARE(seekSpy.count(), 1); 7265 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7266 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7267 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7268 7269 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 7270 7271 QCOMPARE(currentTrackChangedSpy.count(), 1); 7272 QCOMPARE(playListModelChangedSpy.count(), 1); 7273 QCOMPARE(playerSourceChangedSpy.count(), 2); 7274 QCOMPARE(urlRoleChangedSpy.count(), 1); 7275 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7276 QCOMPARE(titleRoleChangedSpy.count(), 1); 7277 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7278 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7279 QCOMPARE(playerStatusChangedSpy.count(), 3); 7280 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 7281 QCOMPARE(playerErrorChangedSpy.count(), 0); 7282 QCOMPARE(persistentStateChangedSpy.count(), 1); 7283 QCOMPARE(playerPlaySpy.count(), 1); 7284 QCOMPARE(playerPauseSpy.count(), 0); 7285 QCOMPARE(playerStopSpy.count(), 0); 7286 QCOMPARE(skipNextTrackSpy.count(), 0); 7287 QCOMPARE(seekSpy.count(), 1); 7288 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 7289 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7290 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7291 7292 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 7293 7294 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 7295 7296 QCOMPARE(currentTrackChangedSpy.count(), 1); 7297 QCOMPARE(playListModelChangedSpy.count(), 1); 7298 QCOMPARE(playerSourceChangedSpy.count(), 2); 7299 QCOMPARE(urlRoleChangedSpy.count(), 1); 7300 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7301 QCOMPARE(titleRoleChangedSpy.count(), 1); 7302 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7303 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7304 QCOMPARE(playerStatusChangedSpy.count(), 4); 7305 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 7306 QCOMPARE(playerErrorChangedSpy.count(), 0); 7307 QCOMPARE(persistentStateChangedSpy.count(), 1); 7308 QCOMPARE(playerPlaySpy.count(), 1); 7309 QCOMPARE(playerPauseSpy.count(), 0); 7310 QCOMPARE(playerStopSpy.count(), 0); 7311 QCOMPARE(skipNextTrackSpy.count(), 0); 7312 QCOMPARE(seekSpy.count(), 1); 7313 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 7314 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7315 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7316 7317 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 7318 7319 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 7320 7321 QCOMPARE(currentTrackChangedSpy.count(), 1); 7322 QCOMPARE(playListModelChangedSpy.count(), 1); 7323 QCOMPARE(playerSourceChangedSpy.count(), 2); 7324 QCOMPARE(urlRoleChangedSpy.count(), 1); 7325 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7326 QCOMPARE(titleRoleChangedSpy.count(), 1); 7327 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7328 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7329 QCOMPARE(playerStatusChangedSpy.count(), 4); 7330 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 7331 QCOMPARE(playerErrorChangedSpy.count(), 0); 7332 QCOMPARE(persistentStateChangedSpy.count(), 1); 7333 QCOMPARE(playerPlaySpy.count(), 1); 7334 QCOMPARE(playerPauseSpy.count(), 0); 7335 QCOMPARE(playerStopSpy.count(), 0); 7336 QCOMPARE(skipNextTrackSpy.count(), 0); 7337 QCOMPARE(seekSpy.count(), 1); 7338 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7339 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7340 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7341 7342 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 7343 7344 myPlayer.setPlayerStatus(QMediaPlayer::NoMedia); 7345 7346 QCOMPARE(currentTrackChangedSpy.count(), 1); 7347 QCOMPARE(playListModelChangedSpy.count(), 1); 7348 QCOMPARE(playerSourceChangedSpy.count(), 2); 7349 QCOMPARE(urlRoleChangedSpy.count(), 1); 7350 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7351 QCOMPARE(titleRoleChangedSpy.count(), 1); 7352 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7353 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7354 QCOMPARE(playerStatusChangedSpy.count(), 5); 7355 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 7356 QCOMPARE(playerErrorChangedSpy.count(), 0); 7357 QCOMPARE(persistentStateChangedSpy.count(), 1); 7358 QCOMPARE(playerPlaySpy.count(), 1); 7359 QCOMPARE(playerPauseSpy.count(), 0); 7360 QCOMPARE(playerStopSpy.count(), 0); 7361 QCOMPARE(skipNextTrackSpy.count(), 0); 7362 QCOMPARE(seekSpy.count(), 1); 7363 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7364 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7365 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7366 7367 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::NoMedia); 7368 7369 QCOMPARE(skipNextTrackSpy.wait(), true); 7370 7371 QCOMPARE(currentTrackChangedSpy.count(), 1); 7372 QCOMPARE(playListModelChangedSpy.count(), 1); 7373 QCOMPARE(playerSourceChangedSpy.count(), 2); 7374 QCOMPARE(urlRoleChangedSpy.count(), 1); 7375 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7376 QCOMPARE(titleRoleChangedSpy.count(), 1); 7377 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7378 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 7379 QCOMPARE(playerStatusChangedSpy.count(), 5); 7380 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 7381 QCOMPARE(playerErrorChangedSpy.count(), 0); 7382 QCOMPARE(persistentStateChangedSpy.count(), 1); 7383 QCOMPARE(playerPlaySpy.count(), 1); 7384 QCOMPARE(playerPauseSpy.count(), 0); 7385 QCOMPARE(playerStopSpy.count(), 0); 7386 QCOMPARE(skipNextTrackSpy.count(), 1); 7387 QCOMPARE(seekSpy.count(), 1); 7388 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7389 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7390 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7391 } 7392 7393 void ManageAudioPlayerTest::playTrackPauseAndSkipNextTrack() 7394 { 7395 Elisa::ElisaConfiguration::self()->setDefaults(); 7396 ManageAudioPlayer myPlayer; 7397 QStandardItemModel myPlayList; 7398 7399 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 7400 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 7401 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 7402 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 7403 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 7404 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 7405 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 7406 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 7407 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 7408 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 7409 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 7410 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 7411 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 7412 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 7413 7414 myPlayList.appendRow(new QStandardItem); 7415 myPlayList.appendRow(new QStandardItem); 7416 myPlayList.appendRow(new QStandardItem); 7417 7418 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 7419 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 7420 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 7421 7422 QCOMPARE(currentTrackChangedSpy.count(), 0); 7423 QCOMPARE(playListModelChangedSpy.count(), 0); 7424 QCOMPARE(playerSourceChangedSpy.count(), 0); 7425 QCOMPARE(urlRoleChangedSpy.count(), 0); 7426 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7427 QCOMPARE(playerStatusChangedSpy.count(), 0); 7428 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7429 QCOMPARE(playerErrorChangedSpy.count(), 0); 7430 QCOMPARE(persistentStateChangedSpy.count(), 0); 7431 QCOMPARE(playerPlaySpy.count(), 0); 7432 QCOMPARE(playerPauseSpy.count(), 0); 7433 QCOMPARE(playerStopSpy.count(), 0); 7434 QCOMPARE(skipNextTrackSpy.count(), 0); 7435 QCOMPARE(seekSpy.count(), 0); 7436 7437 myPlayer.setPlayListModel(&myPlayList); 7438 7439 QCOMPARE(currentTrackChangedSpy.count(), 0); 7440 QCOMPARE(playListModelChangedSpy.count(), 1); 7441 QCOMPARE(playerSourceChangedSpy.count(), 0); 7442 QCOMPARE(urlRoleChangedSpy.count(), 0); 7443 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7444 QCOMPARE(playerStatusChangedSpy.count(), 0); 7445 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7446 QCOMPARE(playerErrorChangedSpy.count(), 0); 7447 QCOMPARE(persistentStateChangedSpy.count(), 0); 7448 QCOMPARE(playerPlaySpy.count(), 0); 7449 QCOMPARE(playerPauseSpy.count(), 0); 7450 QCOMPARE(playerStopSpy.count(), 0); 7451 QCOMPARE(skipNextTrackSpy.count(), 0); 7452 QCOMPARE(seekSpy.count(), 0); 7453 7454 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 7455 7456 QCOMPARE(currentTrackChangedSpy.count(), 1); 7457 QCOMPARE(playListModelChangedSpy.count(), 1); 7458 QCOMPARE(playerSourceChangedSpy.count(), 1); 7459 QCOMPARE(urlRoleChangedSpy.count(), 0); 7460 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7461 QCOMPARE(playerStatusChangedSpy.count(), 0); 7462 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7463 QCOMPARE(playerErrorChangedSpy.count(), 0); 7464 QCOMPARE(persistentStateChangedSpy.count(), 0); 7465 QCOMPARE(playerPlaySpy.count(), 0); 7466 QCOMPARE(playerPauseSpy.count(), 0); 7467 QCOMPARE(playerStopSpy.count(), 0); 7468 QCOMPARE(skipNextTrackSpy.count(), 0); 7469 QCOMPARE(seekSpy.count(), 0); 7470 7471 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 7472 7473 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 7474 7475 QCOMPARE(currentTrackChangedSpy.count(), 1); 7476 QCOMPARE(playListModelChangedSpy.count(), 1); 7477 QCOMPARE(playerSourceChangedSpy.count(), 2); 7478 QCOMPARE(urlRoleChangedSpy.count(), 1); 7479 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7480 QCOMPARE(playerStatusChangedSpy.count(), 0); 7481 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7482 QCOMPARE(playerErrorChangedSpy.count(), 0); 7483 QCOMPARE(persistentStateChangedSpy.count(), 0); 7484 QCOMPARE(playerPlaySpy.count(), 0); 7485 QCOMPARE(playerPauseSpy.count(), 0); 7486 QCOMPARE(playerStopSpy.count(), 0); 7487 QCOMPARE(skipNextTrackSpy.count(), 0); 7488 QCOMPARE(seekSpy.count(), 0); 7489 7490 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 7491 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 7492 7493 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 7494 7495 QCOMPARE(currentTrackChangedSpy.count(), 1); 7496 QCOMPARE(playListModelChangedSpy.count(), 1); 7497 QCOMPARE(playerSourceChangedSpy.count(), 2); 7498 QCOMPARE(urlRoleChangedSpy.count(), 1); 7499 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7500 QCOMPARE(playerStatusChangedSpy.count(), 0); 7501 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7502 QCOMPARE(playerErrorChangedSpy.count(), 0); 7503 QCOMPARE(persistentStateChangedSpy.count(), 0); 7504 QCOMPARE(playerPlaySpy.count(), 0); 7505 QCOMPARE(playerPauseSpy.count(), 0); 7506 QCOMPARE(playerStopSpy.count(), 0); 7507 QCOMPARE(skipNextTrackSpy.count(), 0); 7508 QCOMPARE(seekSpy.count(), 0); 7509 7510 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 7511 7512 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 7513 7514 QCOMPARE(currentTrackChangedSpy.count(), 1); 7515 QCOMPARE(playListModelChangedSpy.count(), 1); 7516 QCOMPARE(playerSourceChangedSpy.count(), 2); 7517 QCOMPARE(urlRoleChangedSpy.count(), 1); 7518 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7519 QCOMPARE(playerStatusChangedSpy.count(), 1); 7520 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7521 QCOMPARE(playerErrorChangedSpy.count(), 0); 7522 QCOMPARE(persistentStateChangedSpy.count(), 0); 7523 QCOMPARE(playerPlaySpy.count(), 0); 7524 QCOMPARE(playerPauseSpy.count(), 0); 7525 QCOMPARE(playerStopSpy.count(), 0); 7526 QCOMPARE(skipNextTrackSpy.count(), 0); 7527 QCOMPARE(seekSpy.count(), 0); 7528 7529 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 7530 7531 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 7532 7533 QCOMPARE(currentTrackChangedSpy.count(), 1); 7534 QCOMPARE(playListModelChangedSpy.count(), 1); 7535 QCOMPARE(playerSourceChangedSpy.count(), 2); 7536 QCOMPARE(urlRoleChangedSpy.count(), 1); 7537 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7538 QCOMPARE(playerStatusChangedSpy.count(), 1); 7539 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7540 QCOMPARE(playerErrorChangedSpy.count(), 0); 7541 QCOMPARE(persistentStateChangedSpy.count(), 0); 7542 QCOMPARE(playerPlaySpy.count(), 0); 7543 QCOMPARE(playerPauseSpy.count(), 0); 7544 QCOMPARE(playerStopSpy.count(), 0); 7545 QCOMPARE(skipNextTrackSpy.count(), 0); 7546 QCOMPARE(seekSpy.count(), 0); 7547 7548 myPlayer.setPlayerError(QMediaPlayer::NoError); 7549 7550 QCOMPARE(currentTrackChangedSpy.count(), 1); 7551 QCOMPARE(playListModelChangedSpy.count(), 1); 7552 QCOMPARE(playerSourceChangedSpy.count(), 2); 7553 QCOMPARE(urlRoleChangedSpy.count(), 1); 7554 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7555 QCOMPARE(playerStatusChangedSpy.count(), 1); 7556 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7557 QCOMPARE(playerErrorChangedSpy.count(), 0); 7558 QCOMPARE(persistentStateChangedSpy.count(), 0); 7559 QCOMPARE(playerPlaySpy.count(), 0); 7560 QCOMPARE(playerPauseSpy.count(), 0); 7561 QCOMPARE(playerStopSpy.count(), 0); 7562 QCOMPARE(skipNextTrackSpy.count(), 0); 7563 QCOMPARE(seekSpy.count(), 0); 7564 7565 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 7566 7567 QCOMPARE(currentTrackChangedSpy.count(), 1); 7568 QCOMPARE(playListModelChangedSpy.count(), 1); 7569 QCOMPARE(playerSourceChangedSpy.count(), 2); 7570 QCOMPARE(urlRoleChangedSpy.count(), 1); 7571 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7572 QCOMPARE(playerStatusChangedSpy.count(), 2); 7573 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7574 QCOMPARE(playerErrorChangedSpy.count(), 0); 7575 QCOMPARE(persistentStateChangedSpy.count(), 0); 7576 QCOMPARE(playerPlaySpy.count(), 0); 7577 QCOMPARE(playerPauseSpy.count(), 0); 7578 QCOMPARE(playerStopSpy.count(), 0); 7579 QCOMPARE(skipNextTrackSpy.count(), 0); 7580 QCOMPARE(seekSpy.count(), 0); 7581 7582 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 7583 7584 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 7585 7586 QCOMPARE(currentTrackChangedSpy.count(), 1); 7587 QCOMPARE(playListModelChangedSpy.count(), 1); 7588 QCOMPARE(playerSourceChangedSpy.count(), 2); 7589 QCOMPARE(urlRoleChangedSpy.count(), 1); 7590 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7591 QCOMPARE(playerStatusChangedSpy.count(), 3); 7592 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7593 QCOMPARE(playerErrorChangedSpy.count(), 0); 7594 QCOMPARE(persistentStateChangedSpy.count(), 0); 7595 QCOMPARE(playerPlaySpy.count(), 0); 7596 QCOMPARE(playerPauseSpy.count(), 0); 7597 QCOMPARE(playerStopSpy.count(), 0); 7598 QCOMPARE(skipNextTrackSpy.count(), 0); 7599 QCOMPARE(seekSpy.count(), 0); 7600 7601 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 7602 7603 myPlayer.playPause(); 7604 7605 QCOMPARE(currentTrackChangedSpy.count(), 1); 7606 QCOMPARE(playListModelChangedSpy.count(), 1); 7607 QCOMPARE(playerSourceChangedSpy.count(), 2); 7608 QCOMPARE(urlRoleChangedSpy.count(), 1); 7609 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7610 QCOMPARE(playerStatusChangedSpy.count(), 3); 7611 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7612 QCOMPARE(playerErrorChangedSpy.count(), 0); 7613 QCOMPARE(persistentStateChangedSpy.count(), 0); 7614 QCOMPARE(playerPlaySpy.count(), 0); 7615 QCOMPARE(playerPauseSpy.count(), 0); 7616 QCOMPARE(playerStopSpy.count(), 0); 7617 QCOMPARE(skipNextTrackSpy.count(), 0); 7618 QCOMPARE(seekSpy.count(), 0); 7619 7620 QCOMPARE(playerPlaySpy.wait(), true); 7621 7622 QCOMPARE(currentTrackChangedSpy.count(), 1); 7623 QCOMPARE(playListModelChangedSpy.count(), 1); 7624 QCOMPARE(playerSourceChangedSpy.count(), 2); 7625 QCOMPARE(urlRoleChangedSpy.count(), 1); 7626 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7627 QCOMPARE(playerStatusChangedSpy.count(), 3); 7628 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7629 QCOMPARE(playerErrorChangedSpy.count(), 0); 7630 QCOMPARE(persistentStateChangedSpy.count(), 0); 7631 QCOMPARE(playerPlaySpy.count(), 1); 7632 QCOMPARE(playerPauseSpy.count(), 0); 7633 QCOMPARE(playerStopSpy.count(), 0); 7634 QCOMPARE(skipNextTrackSpy.count(), 0); 7635 QCOMPARE(seekSpy.count(), 0); 7636 7637 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 7638 7639 QCOMPARE(currentTrackChangedSpy.count(), 1); 7640 QCOMPARE(playListModelChangedSpy.count(), 1); 7641 QCOMPARE(playerSourceChangedSpy.count(), 2); 7642 QCOMPARE(urlRoleChangedSpy.count(), 1); 7643 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7644 QCOMPARE(playerStatusChangedSpy.count(), 3); 7645 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 7646 QCOMPARE(playerErrorChangedSpy.count(), 0); 7647 QCOMPARE(persistentStateChangedSpy.count(), 0); 7648 QCOMPARE(playerPlaySpy.count(), 1); 7649 QCOMPARE(playerPauseSpy.count(), 0); 7650 QCOMPARE(playerStopSpy.count(), 0); 7651 QCOMPARE(skipNextTrackSpy.count(), 0); 7652 QCOMPARE(seekSpy.count(), 0); 7653 7654 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 7655 7656 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 7657 7658 QCOMPARE(currentTrackChangedSpy.count(), 1); 7659 QCOMPARE(playListModelChangedSpy.count(), 1); 7660 QCOMPARE(playerSourceChangedSpy.count(), 2); 7661 QCOMPARE(urlRoleChangedSpy.count(), 1); 7662 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7663 QCOMPARE(playerStatusChangedSpy.count(), 4); 7664 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 7665 QCOMPARE(playerErrorChangedSpy.count(), 0); 7666 QCOMPARE(persistentStateChangedSpy.count(), 0); 7667 QCOMPARE(playerPlaySpy.count(), 1); 7668 QCOMPARE(playerPauseSpy.count(), 0); 7669 QCOMPARE(playerStopSpy.count(), 0); 7670 QCOMPARE(skipNextTrackSpy.count(), 0); 7671 QCOMPARE(seekSpy.count(), 0); 7672 7673 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 7674 7675 myPlayer.playPause(); 7676 7677 QCOMPARE(currentTrackChangedSpy.count(), 1); 7678 QCOMPARE(playListModelChangedSpy.count(), 1); 7679 QCOMPARE(playerSourceChangedSpy.count(), 2); 7680 QCOMPARE(urlRoleChangedSpy.count(), 1); 7681 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7682 QCOMPARE(playerStatusChangedSpy.count(), 4); 7683 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 7684 QCOMPARE(playerErrorChangedSpy.count(), 0); 7685 QCOMPARE(persistentStateChangedSpy.count(), 0); 7686 QCOMPARE(playerPlaySpy.count(), 1); 7687 QCOMPARE(playerPauseSpy.count(), 0); 7688 QCOMPARE(playerStopSpy.count(), 0); 7689 QCOMPARE(skipNextTrackSpy.count(), 0); 7690 QCOMPARE(seekSpy.count(), 0); 7691 7692 QCOMPARE(playerPauseSpy.wait(), true); 7693 7694 QCOMPARE(currentTrackChangedSpy.count(), 1); 7695 QCOMPARE(playListModelChangedSpy.count(), 1); 7696 QCOMPARE(playerSourceChangedSpy.count(), 2); 7697 QCOMPARE(urlRoleChangedSpy.count(), 1); 7698 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7699 QCOMPARE(playerStatusChangedSpy.count(), 4); 7700 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 7701 QCOMPARE(playerErrorChangedSpy.count(), 0); 7702 QCOMPARE(persistentStateChangedSpy.count(), 0); 7703 QCOMPARE(playerPlaySpy.count(), 1); 7704 QCOMPARE(playerPauseSpy.count(), 1); 7705 QCOMPARE(playerStopSpy.count(), 0); 7706 QCOMPARE(skipNextTrackSpy.count(), 0); 7707 QCOMPARE(seekSpy.count(), 0); 7708 7709 myPlayer.setPlayerPlaybackState(QMediaPlayer::PausedState); 7710 7711 QCOMPARE(currentTrackChangedSpy.count(), 1); 7712 QCOMPARE(playListModelChangedSpy.count(), 1); 7713 QCOMPARE(playerSourceChangedSpy.count(), 2); 7714 QCOMPARE(urlRoleChangedSpy.count(), 1); 7715 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7716 QCOMPARE(playerStatusChangedSpy.count(), 4); 7717 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 7718 QCOMPARE(playerErrorChangedSpy.count(), 0); 7719 QCOMPARE(persistentStateChangedSpy.count(), 0); 7720 QCOMPARE(playerPlaySpy.count(), 1); 7721 QCOMPARE(playerPauseSpy.count(), 1); 7722 QCOMPARE(playerStopSpy.count(), 0); 7723 QCOMPARE(skipNextTrackSpy.count(), 0); 7724 QCOMPARE(seekSpy.count(), 0); 7725 7726 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PausedState)); 7727 7728 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 7729 7730 QCOMPARE(currentTrackChangedSpy.count(), 2); 7731 QCOMPARE(playListModelChangedSpy.count(), 1); 7732 QCOMPARE(playerSourceChangedSpy.count(), 2); 7733 QCOMPARE(urlRoleChangedSpy.count(), 1); 7734 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7735 QCOMPARE(playerStatusChangedSpy.count(), 4); 7736 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 7737 QCOMPARE(playerErrorChangedSpy.count(), 0); 7738 QCOMPARE(persistentStateChangedSpy.count(), 0); 7739 QCOMPARE(playerPlaySpy.count(), 1); 7740 QCOMPARE(playerPauseSpy.count(), 1); 7741 QCOMPARE(playerStopSpy.count(), 0); 7742 QCOMPARE(skipNextTrackSpy.count(), 0); 7743 QCOMPARE(seekSpy.count(), 0); 7744 7745 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 7746 7747 QCOMPARE(playerStopSpy.wait(100), true); 7748 7749 QCOMPARE(currentTrackChangedSpy.count(), 2); 7750 QCOMPARE(playListModelChangedSpy.count(), 1); 7751 QCOMPARE(playerSourceChangedSpy.count(), 2); 7752 QCOMPARE(urlRoleChangedSpy.count(), 1); 7753 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7754 QCOMPARE(playerStatusChangedSpy.count(), 4); 7755 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 7756 QCOMPARE(playerErrorChangedSpy.count(), 0); 7757 QCOMPARE(persistentStateChangedSpy.count(), 0); 7758 QCOMPARE(playerPlaySpy.count(), 1); 7759 QCOMPARE(playerPauseSpy.count(), 1); 7760 QCOMPARE(playerStopSpy.count(), 1); 7761 QCOMPARE(skipNextTrackSpy.count(), 0); 7762 QCOMPARE(seekSpy.count(), 0); 7763 7764 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 7765 7766 QCOMPARE(currentTrackChangedSpy.count(), 2); 7767 QCOMPARE(playListModelChangedSpy.count(), 1); 7768 QCOMPARE(playerSourceChangedSpy.count(), 3); 7769 QCOMPARE(urlRoleChangedSpy.count(), 1); 7770 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7771 QCOMPARE(playerStatusChangedSpy.count(), 4); 7772 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 7773 QCOMPARE(playerErrorChangedSpy.count(), 0); 7774 QCOMPARE(persistentStateChangedSpy.count(), 0); 7775 QCOMPARE(playerPlaySpy.count(), 1); 7776 QCOMPARE(playerPauseSpy.count(), 1); 7777 QCOMPARE(playerStopSpy.count(), 1); 7778 QCOMPARE(skipNextTrackSpy.count(), 0); 7779 QCOMPARE(seekSpy.count(), 0); 7780 7781 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 7782 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 7783 7784 QCOMPARE(skipNextTrackSpy.wait(100), false); 7785 7786 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 7787 7788 QCOMPARE(currentTrackChangedSpy.count(), 2); 7789 QCOMPARE(playListModelChangedSpy.count(), 1); 7790 QCOMPARE(playerSourceChangedSpy.count(), 3); 7791 QCOMPARE(urlRoleChangedSpy.count(), 1); 7792 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7793 QCOMPARE(playerStatusChangedSpy.count(), 5); 7794 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 7795 QCOMPARE(playerErrorChangedSpy.count(), 0); 7796 QCOMPARE(persistentStateChangedSpy.count(), 0); 7797 QCOMPARE(playerPlaySpy.count(), 1); 7798 QCOMPARE(playerPauseSpy.count(), 1); 7799 QCOMPARE(playerStopSpy.count(), 1); 7800 QCOMPARE(skipNextTrackSpy.count(), 0); 7801 QCOMPARE(seekSpy.count(), 0); 7802 7803 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 7804 7805 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 7806 7807 QCOMPARE(currentTrackChangedSpy.count(), 2); 7808 QCOMPARE(playListModelChangedSpy.count(), 1); 7809 QCOMPARE(playerSourceChangedSpy.count(), 3); 7810 QCOMPARE(urlRoleChangedSpy.count(), 1); 7811 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7812 QCOMPARE(playerStatusChangedSpy.count(), 6); 7813 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 7814 QCOMPARE(playerErrorChangedSpy.count(), 0); 7815 QCOMPARE(persistentStateChangedSpy.count(), 0); 7816 QCOMPARE(playerPlaySpy.count(), 1); 7817 QCOMPARE(playerPauseSpy.count(), 1); 7818 QCOMPARE(playerStopSpy.count(), 1); 7819 QCOMPARE(skipNextTrackSpy.count(), 0); 7820 QCOMPARE(seekSpy.count(), 0); 7821 7822 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 7823 7824 myPlayer.playPause(); 7825 7826 QCOMPARE(currentTrackChangedSpy.count(), 2); 7827 QCOMPARE(playListModelChangedSpy.count(), 1); 7828 QCOMPARE(playerSourceChangedSpy.count(), 3); 7829 QCOMPARE(urlRoleChangedSpy.count(), 1); 7830 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7831 QCOMPARE(playerStatusChangedSpy.count(), 6); 7832 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 7833 QCOMPARE(playerErrorChangedSpy.count(), 0); 7834 QCOMPARE(persistentStateChangedSpy.count(), 0); 7835 QCOMPARE(playerPlaySpy.count(), 1); 7836 QCOMPARE(playerPauseSpy.count(), 1); 7837 QCOMPARE(playerStopSpy.count(), 1); 7838 QCOMPARE(skipNextTrackSpy.count(), 0); 7839 QCOMPARE(seekSpy.count(), 0); 7840 7841 QCOMPARE(playerPlaySpy.wait(100), true); 7842 7843 QCOMPARE(currentTrackChangedSpy.count(), 2); 7844 QCOMPARE(playListModelChangedSpy.count(), 1); 7845 QCOMPARE(playerSourceChangedSpy.count(), 3); 7846 QCOMPARE(urlRoleChangedSpy.count(), 1); 7847 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7848 QCOMPARE(playerStatusChangedSpy.count(), 6); 7849 QCOMPARE(playerPlaybackStateChangedSpy.count(), 3); 7850 QCOMPARE(playerErrorChangedSpy.count(), 0); 7851 QCOMPARE(persistentStateChangedSpy.count(), 0); 7852 QCOMPARE(playerPlaySpy.count(), 2); 7853 QCOMPARE(playerPauseSpy.count(), 1); 7854 QCOMPARE(playerStopSpy.count(), 1); 7855 QCOMPARE(skipNextTrackSpy.count(), 0); 7856 QCOMPARE(seekSpy.count(), 0); 7857 7858 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 7859 7860 QCOMPARE(currentTrackChangedSpy.count(), 2); 7861 QCOMPARE(playListModelChangedSpy.count(), 1); 7862 QCOMPARE(playerSourceChangedSpy.count(), 3); 7863 QCOMPARE(urlRoleChangedSpy.count(), 1); 7864 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7865 QCOMPARE(playerStatusChangedSpy.count(), 6); 7866 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 7867 QCOMPARE(playerErrorChangedSpy.count(), 0); 7868 QCOMPARE(persistentStateChangedSpy.count(), 0); 7869 QCOMPARE(playerPlaySpy.count(), 2); 7870 QCOMPARE(playerPauseSpy.count(), 1); 7871 QCOMPARE(playerStopSpy.count(), 1); 7872 QCOMPARE(skipNextTrackSpy.count(), 0); 7873 QCOMPARE(seekSpy.count(), 0); 7874 7875 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 7876 7877 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 7878 7879 QCOMPARE(currentTrackChangedSpy.count(), 2); 7880 QCOMPARE(playListModelChangedSpy.count(), 1); 7881 QCOMPARE(playerSourceChangedSpy.count(), 3); 7882 QCOMPARE(urlRoleChangedSpy.count(), 1); 7883 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 7884 QCOMPARE(playerStatusChangedSpy.count(), 7); 7885 QCOMPARE(playerPlaybackStateChangedSpy.count(), 4); 7886 QCOMPARE(playerErrorChangedSpy.count(), 0); 7887 QCOMPARE(persistentStateChangedSpy.count(), 0); 7888 QCOMPARE(playerPlaySpy.count(), 2); 7889 QCOMPARE(playerPauseSpy.count(), 1); 7890 QCOMPARE(playerStopSpy.count(), 1); 7891 QCOMPARE(skipNextTrackSpy.count(), 0); 7892 QCOMPARE(seekSpy.count(), 0); 7893 7894 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 7895 } 7896 7897 void ManageAudioPlayerTest::testRestoreSettingsNoPlayWrongTrack() 7898 { 7899 Elisa::ElisaConfiguration::self()->setDefaults(); 7900 ManageAudioPlayer myPlayer; 7901 QStandardItemModel myPlayList; 7902 7903 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 7904 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 7905 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 7906 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 7907 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 7908 QSignalSpy titleRoleChangedSpy(&myPlayer, &ManageAudioPlayer::titleRoleChanged); 7909 QSignalSpy artistNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::artistNameRoleChanged); 7910 QSignalSpy albumNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::albumNameRoleChanged); 7911 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 7912 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 7913 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 7914 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 7915 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 7916 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 7917 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 7918 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 7919 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 7920 7921 myPlayList.appendRow(new QStandardItem); 7922 myPlayList.appendRow(new QStandardItem); 7923 myPlayList.appendRow(new QStandardItem); 7924 7925 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 7926 myPlayList.item(0, 0)->setData(QStringLiteral("title"), ManageAudioPlayerTest::TitleRole); 7927 myPlayList.item(0, 0)->setData(QStringLiteral("artist"), ManageAudioPlayerTest::ArtistRole); 7928 myPlayList.item(0, 0)->setData(QStringLiteral("album"), ManageAudioPlayerTest::AlbumRole); 7929 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 7930 myPlayList.item(1, 0)->setData(QStringLiteral("title2"), ManageAudioPlayerTest::TitleRole); 7931 myPlayList.item(1, 0)->setData(QStringLiteral("artist2"), ManageAudioPlayerTest::ArtistRole); 7932 myPlayList.item(1, 0)->setData(QStringLiteral("album2"), ManageAudioPlayerTest::AlbumRole); 7933 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 7934 7935 QCOMPARE(currentTrackChangedSpy.count(), 0); 7936 QCOMPARE(playListModelChangedSpy.count(), 0); 7937 QCOMPARE(playerSourceChangedSpy.count(), 0); 7938 QCOMPARE(urlRoleChangedSpy.count(), 0); 7939 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7940 QCOMPARE(titleRoleChangedSpy.count(), 0); 7941 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 7942 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 7943 QCOMPARE(playerStatusChangedSpy.count(), 0); 7944 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7945 QCOMPARE(playerErrorChangedSpy.count(), 0); 7946 QCOMPARE(persistentStateChangedSpy.count(), 0); 7947 QCOMPARE(playerPlaySpy.count(), 0); 7948 QCOMPARE(playerPauseSpy.count(), 0); 7949 QCOMPARE(playerStopSpy.count(), 0); 7950 QCOMPARE(skipNextTrackSpy.count(), 0); 7951 QCOMPARE(seekSpy.count(), 0); 7952 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7953 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7954 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7955 7956 myPlayer.setTitleRole(ManageAudioPlayerTest::TitleRole); 7957 7958 QCOMPARE(currentTrackChangedSpy.count(), 0); 7959 QCOMPARE(playListModelChangedSpy.count(), 0); 7960 QCOMPARE(playerSourceChangedSpy.count(), 0); 7961 QCOMPARE(urlRoleChangedSpy.count(), 0); 7962 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7963 QCOMPARE(titleRoleChangedSpy.count(), 1); 7964 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 7965 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 7966 QCOMPARE(playerStatusChangedSpy.count(), 0); 7967 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7968 QCOMPARE(playerErrorChangedSpy.count(), 0); 7969 QCOMPARE(persistentStateChangedSpy.count(), 0); 7970 QCOMPARE(playerPlaySpy.count(), 0); 7971 QCOMPARE(playerPauseSpy.count(), 0); 7972 QCOMPARE(playerStopSpy.count(), 0); 7973 QCOMPARE(skipNextTrackSpy.count(), 0); 7974 QCOMPARE(seekSpy.count(), 0); 7975 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7976 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7977 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 7978 7979 QCOMPARE(myPlayer.titleRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::TitleRole)); 7980 7981 myPlayer.setArtistNameRole(ManageAudioPlayerTest::ArtistRole); 7982 7983 QCOMPARE(currentTrackChangedSpy.count(), 0); 7984 QCOMPARE(playListModelChangedSpy.count(), 0); 7985 QCOMPARE(playerSourceChangedSpy.count(), 0); 7986 QCOMPARE(urlRoleChangedSpy.count(), 0); 7987 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 7988 QCOMPARE(titleRoleChangedSpy.count(), 1); 7989 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 7990 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 7991 QCOMPARE(playerStatusChangedSpy.count(), 0); 7992 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 7993 QCOMPARE(playerErrorChangedSpy.count(), 0); 7994 QCOMPARE(persistentStateChangedSpy.count(), 0); 7995 QCOMPARE(playerPlaySpy.count(), 0); 7996 QCOMPARE(playerPauseSpy.count(), 0); 7997 QCOMPARE(playerStopSpy.count(), 0); 7998 QCOMPARE(skipNextTrackSpy.count(), 0); 7999 QCOMPARE(seekSpy.count(), 0); 8000 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8001 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8002 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8003 8004 QCOMPARE(myPlayer.artistNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::ArtistRole)); 8005 8006 myPlayer.setAlbumNameRole(ManageAudioPlayerTest::AlbumRole); 8007 8008 QCOMPARE(currentTrackChangedSpy.count(), 0); 8009 QCOMPARE(playListModelChangedSpy.count(), 0); 8010 QCOMPARE(playerSourceChangedSpy.count(), 0); 8011 QCOMPARE(urlRoleChangedSpy.count(), 0); 8012 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8013 QCOMPARE(titleRoleChangedSpy.count(), 1); 8014 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8015 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8016 QCOMPARE(playerStatusChangedSpy.count(), 0); 8017 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8018 QCOMPARE(playerErrorChangedSpy.count(), 0); 8019 QCOMPARE(persistentStateChangedSpy.count(), 0); 8020 QCOMPARE(playerPlaySpy.count(), 0); 8021 QCOMPARE(playerPauseSpy.count(), 0); 8022 QCOMPARE(playerStopSpy.count(), 0); 8023 QCOMPARE(skipNextTrackSpy.count(), 0); 8024 QCOMPARE(seekSpy.count(), 0); 8025 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8026 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8027 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8028 8029 QCOMPARE(myPlayer.albumNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::AlbumRole)); 8030 8031 QCOMPARE(currentTrackChangedSpy.count(), 0); 8032 QCOMPARE(playListModelChangedSpy.count(), 0); 8033 QCOMPARE(playerSourceChangedSpy.count(), 0); 8034 QCOMPARE(urlRoleChangedSpy.count(), 0); 8035 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8036 QCOMPARE(titleRoleChangedSpy.count(), 1); 8037 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8038 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8039 QCOMPARE(playerStatusChangedSpy.count(), 0); 8040 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8041 QCOMPARE(playerErrorChangedSpy.count(), 0); 8042 QCOMPARE(persistentStateChangedSpy.count(), 0); 8043 QCOMPARE(playerPlaySpy.count(), 0); 8044 QCOMPARE(playerPauseSpy.count(), 0); 8045 QCOMPARE(playerStopSpy.count(), 0); 8046 QCOMPARE(skipNextTrackSpy.count(), 0); 8047 QCOMPARE(seekSpy.count(), 0); 8048 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8049 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8050 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8051 8052 myPlayer.setPlayListModel(&myPlayList); 8053 8054 QCOMPARE(currentTrackChangedSpy.count(), 0); 8055 QCOMPARE(playListModelChangedSpy.count(), 1); 8056 QCOMPARE(playerSourceChangedSpy.count(), 0); 8057 QCOMPARE(urlRoleChangedSpy.count(), 0); 8058 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8059 QCOMPARE(titleRoleChangedSpy.count(), 1); 8060 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8061 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8062 QCOMPARE(playerStatusChangedSpy.count(), 0); 8063 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8064 QCOMPARE(playerErrorChangedSpy.count(), 0); 8065 QCOMPARE(persistentStateChangedSpy.count(), 0); 8066 QCOMPARE(playerPlaySpy.count(), 0); 8067 QCOMPARE(playerPauseSpy.count(), 0); 8068 QCOMPARE(playerStopSpy.count(), 0); 8069 QCOMPARE(skipNextTrackSpy.count(), 0); 8070 QCOMPARE(seekSpy.count(), 0); 8071 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8072 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8073 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8074 8075 QVariantMap settings; 8076 settings[QStringLiteral("isPlaying")] = true; 8077 settings[QStringLiteral("audioPlayerCurrentTitle")] = QStringLiteral("title"); 8078 settings[QStringLiteral("audioPlayerCurrentArtistName")] = QStringLiteral("artist"); 8079 settings[QStringLiteral("audioPlayerCurrentAlbumName")] = QStringLiteral("album"); 8080 8081 myPlayer.setPersistentState(settings); 8082 8083 QCOMPARE(currentTrackChangedSpy.count(), 0); 8084 QCOMPARE(playListModelChangedSpy.count(), 1); 8085 QCOMPARE(playerSourceChangedSpy.count(), 0); 8086 QCOMPARE(urlRoleChangedSpy.count(), 0); 8087 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8088 QCOMPARE(titleRoleChangedSpy.count(), 1); 8089 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8090 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8091 QCOMPARE(playerStatusChangedSpy.count(), 0); 8092 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8093 QCOMPARE(playerErrorChangedSpy.count(), 0); 8094 QCOMPARE(persistentStateChangedSpy.count(), 1); 8095 QCOMPARE(playerPlaySpy.count(), 0); 8096 QCOMPARE(playerPauseSpy.count(), 0); 8097 QCOMPARE(playerStopSpy.count(), 0); 8098 QCOMPARE(skipNextTrackSpy.count(), 0); 8099 QCOMPARE(seekSpy.count(), 0); 8100 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8101 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8102 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8103 8104 myPlayer.setCurrentTrack(myPlayList.index(1, 0)); 8105 8106 QCOMPARE(currentTrackChangedSpy.count(), 1); 8107 QCOMPARE(playListModelChangedSpy.count(), 1); 8108 QCOMPARE(playerSourceChangedSpy.count(), 1); 8109 QCOMPARE(urlRoleChangedSpy.count(), 0); 8110 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8111 QCOMPARE(titleRoleChangedSpy.count(), 1); 8112 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8113 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8114 QCOMPARE(playerStatusChangedSpy.count(), 0); 8115 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8116 QCOMPARE(playerErrorChangedSpy.count(), 0); 8117 QCOMPARE(persistentStateChangedSpy.count(), 1); 8118 QCOMPARE(playerPlaySpy.count(), 0); 8119 QCOMPARE(playerPauseSpy.count(), 0); 8120 QCOMPARE(playerStopSpy.count(), 0); 8121 QCOMPARE(skipNextTrackSpy.count(), 0); 8122 QCOMPARE(seekSpy.count(), 0); 8123 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8124 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8125 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8126 8127 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(1, 0))); 8128 8129 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 8130 8131 QCOMPARE(currentTrackChangedSpy.count(), 1); 8132 QCOMPARE(playListModelChangedSpy.count(), 1); 8133 QCOMPARE(playerSourceChangedSpy.count(), 2); 8134 QCOMPARE(urlRoleChangedSpy.count(), 1); 8135 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8136 QCOMPARE(titleRoleChangedSpy.count(), 1); 8137 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8138 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8139 QCOMPARE(playerStatusChangedSpy.count(), 0); 8140 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8141 QCOMPARE(playerErrorChangedSpy.count(), 0); 8142 QCOMPARE(persistentStateChangedSpy.count(), 1); 8143 QCOMPARE(playerPlaySpy.count(), 0); 8144 QCOMPARE(playerPauseSpy.count(), 0); 8145 QCOMPARE(playerStopSpy.count(), 0); 8146 QCOMPARE(skipNextTrackSpy.count(), 0); 8147 QCOMPARE(seekSpy.count(), 0); 8148 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8149 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8150 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8151 8152 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 8153 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///2.mp3"))); 8154 8155 QCOMPARE(playerPlaySpy.wait(500), false); 8156 8157 QCOMPARE(currentTrackChangedSpy.count(), 1); 8158 QCOMPARE(playListModelChangedSpy.count(), 1); 8159 QCOMPARE(playerSourceChangedSpy.count(), 2); 8160 QCOMPARE(urlRoleChangedSpy.count(), 1); 8161 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8162 QCOMPARE(titleRoleChangedSpy.count(), 1); 8163 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8164 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8165 QCOMPARE(playerStatusChangedSpy.count(), 0); 8166 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8167 QCOMPARE(playerErrorChangedSpy.count(), 0); 8168 QCOMPARE(persistentStateChangedSpy.count(), 1); 8169 QCOMPARE(playerPlaySpy.count(), 0); 8170 QCOMPARE(playerPauseSpy.count(), 0); 8171 QCOMPARE(playerStopSpy.count(), 0); 8172 QCOMPARE(skipNextTrackSpy.count(), 0); 8173 QCOMPARE(seekSpy.count(), 0); 8174 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8175 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8176 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8177 8178 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 8179 8180 QCOMPARE(currentTrackChangedSpy.count(), 1); 8181 QCOMPARE(playListModelChangedSpy.count(), 1); 8182 QCOMPARE(playerSourceChangedSpy.count(), 2); 8183 QCOMPARE(urlRoleChangedSpy.count(), 1); 8184 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8185 QCOMPARE(titleRoleChangedSpy.count(), 1); 8186 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8187 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8188 QCOMPARE(playerStatusChangedSpy.count(), 0); 8189 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8190 QCOMPARE(playerErrorChangedSpy.count(), 0); 8191 QCOMPARE(persistentStateChangedSpy.count(), 1); 8192 QCOMPARE(playerPlaySpy.count(), 0); 8193 QCOMPARE(playerPauseSpy.count(), 0); 8194 QCOMPARE(playerStopSpy.count(), 0); 8195 QCOMPARE(skipNextTrackSpy.count(), 0); 8196 QCOMPARE(seekSpy.count(), 0); 8197 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8198 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8199 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8200 8201 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 8202 8203 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 8204 8205 QCOMPARE(currentTrackChangedSpy.count(), 1); 8206 QCOMPARE(playListModelChangedSpy.count(), 1); 8207 QCOMPARE(playerSourceChangedSpy.count(), 2); 8208 QCOMPARE(urlRoleChangedSpy.count(), 1); 8209 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8210 QCOMPARE(titleRoleChangedSpy.count(), 1); 8211 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8212 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8213 QCOMPARE(playerStatusChangedSpy.count(), 1); 8214 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8215 QCOMPARE(playerErrorChangedSpy.count(), 0); 8216 QCOMPARE(persistentStateChangedSpy.count(), 1); 8217 QCOMPARE(playerPlaySpy.count(), 0); 8218 QCOMPARE(playerPauseSpy.count(), 0); 8219 QCOMPARE(playerStopSpy.count(), 0); 8220 QCOMPARE(skipNextTrackSpy.count(), 0); 8221 QCOMPARE(seekSpy.count(), 0); 8222 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8223 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8224 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8225 8226 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 8227 8228 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 8229 8230 QCOMPARE(currentTrackChangedSpy.count(), 1); 8231 QCOMPARE(playListModelChangedSpy.count(), 1); 8232 QCOMPARE(playerSourceChangedSpy.count(), 2); 8233 QCOMPARE(urlRoleChangedSpy.count(), 1); 8234 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8235 QCOMPARE(titleRoleChangedSpy.count(), 1); 8236 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8237 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8238 QCOMPARE(playerStatusChangedSpy.count(), 1); 8239 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8240 QCOMPARE(playerErrorChangedSpy.count(), 0); 8241 QCOMPARE(persistentStateChangedSpy.count(), 1); 8242 QCOMPARE(playerPlaySpy.count(), 0); 8243 QCOMPARE(playerPauseSpy.count(), 0); 8244 QCOMPARE(playerStopSpy.count(), 0); 8245 QCOMPARE(skipNextTrackSpy.count(), 0); 8246 QCOMPARE(seekSpy.count(), 0); 8247 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8248 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8249 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8250 8251 myPlayer.setPlayerError(QMediaPlayer::NoError); 8252 8253 QCOMPARE(currentTrackChangedSpy.count(), 1); 8254 QCOMPARE(playListModelChangedSpy.count(), 1); 8255 QCOMPARE(playerSourceChangedSpy.count(), 2); 8256 QCOMPARE(urlRoleChangedSpy.count(), 1); 8257 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8258 QCOMPARE(titleRoleChangedSpy.count(), 1); 8259 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8260 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8261 QCOMPARE(playerStatusChangedSpy.count(), 1); 8262 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8263 QCOMPARE(playerErrorChangedSpy.count(), 0); 8264 QCOMPARE(persistentStateChangedSpy.count(), 1); 8265 QCOMPARE(playerPlaySpy.count(), 0); 8266 QCOMPARE(playerPauseSpy.count(), 0); 8267 QCOMPARE(playerStopSpy.count(), 0); 8268 QCOMPARE(skipNextTrackSpy.count(), 0); 8269 QCOMPARE(seekSpy.count(), 0); 8270 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8271 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8272 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8273 8274 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 8275 8276 QCOMPARE(currentTrackChangedSpy.count(), 1); 8277 QCOMPARE(playListModelChangedSpy.count(), 1); 8278 QCOMPARE(playerSourceChangedSpy.count(), 2); 8279 QCOMPARE(urlRoleChangedSpy.count(), 1); 8280 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8281 QCOMPARE(titleRoleChangedSpy.count(), 1); 8282 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8283 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8284 QCOMPARE(playerStatusChangedSpy.count(), 2); 8285 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8286 QCOMPARE(playerErrorChangedSpy.count(), 0); 8287 QCOMPARE(persistentStateChangedSpy.count(), 1); 8288 QCOMPARE(playerPlaySpy.count(), 0); 8289 QCOMPARE(playerPauseSpy.count(), 0); 8290 QCOMPARE(playerStopSpy.count(), 0); 8291 QCOMPARE(skipNextTrackSpy.count(), 0); 8292 QCOMPARE(seekSpy.count(), 0); 8293 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8294 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8295 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8296 8297 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 8298 8299 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 8300 8301 QCOMPARE(currentTrackChangedSpy.count(), 1); 8302 QCOMPARE(playListModelChangedSpy.count(), 1); 8303 QCOMPARE(playerSourceChangedSpy.count(), 2); 8304 QCOMPARE(urlRoleChangedSpy.count(), 1); 8305 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8306 QCOMPARE(titleRoleChangedSpy.count(), 1); 8307 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8308 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8309 QCOMPARE(playerStatusChangedSpy.count(), 3); 8310 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8311 QCOMPARE(playerErrorChangedSpy.count(), 0); 8312 QCOMPARE(persistentStateChangedSpy.count(), 1); 8313 QCOMPARE(playerPlaySpy.count(), 0); 8314 QCOMPARE(playerPauseSpy.count(), 0); 8315 QCOMPARE(playerStopSpy.count(), 0); 8316 QCOMPARE(skipNextTrackSpy.count(), 0); 8317 QCOMPARE(seekSpy.count(), 0); 8318 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8319 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8320 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8321 8322 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 8323 8324 QCOMPARE(playerPlaySpy.wait(500), false); 8325 8326 QCOMPARE(currentTrackChangedSpy.count(), 1); 8327 QCOMPARE(playListModelChangedSpy.count(), 1); 8328 QCOMPARE(playerSourceChangedSpy.count(), 2); 8329 QCOMPARE(urlRoleChangedSpy.count(), 1); 8330 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8331 QCOMPARE(titleRoleChangedSpy.count(), 1); 8332 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8333 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8334 QCOMPARE(playerStatusChangedSpy.count(), 3); 8335 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8336 QCOMPARE(playerErrorChangedSpy.count(), 0); 8337 QCOMPARE(persistentStateChangedSpy.count(), 1); 8338 QCOMPARE(playerPlaySpy.count(), 0); 8339 QCOMPARE(playerPauseSpy.count(), 0); 8340 QCOMPARE(playerStopSpy.count(), 0); 8341 QCOMPARE(skipNextTrackSpy.count(), 0); 8342 QCOMPARE(seekSpy.count(), 0); 8343 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8344 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8345 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8346 } 8347 8348 void ManageAudioPlayerTest::testRestorePlayListAndSettingsAutomaticPlay() 8349 { 8350 Elisa::ElisaConfiguration::self()->setDefaults(); 8351 Elisa::ElisaConfiguration::self()->setPlayAtStartup(true); 8352 ManageAudioPlayer myPlayer; 8353 QStandardItemModel myPlayList; 8354 8355 QSignalSpy currentTrackChangedSpy(&myPlayer, &ManageAudioPlayer::currentTrackChanged); 8356 QSignalSpy playListModelChangedSpy(&myPlayer, &ManageAudioPlayer::playListModelChanged); 8357 QSignalSpy playerSourceChangedSpy(&myPlayer, &ManageAudioPlayer::playerSourceChanged); 8358 QSignalSpy urlRoleChangedSpy(&myPlayer, &ManageAudioPlayer::urlRoleChanged); 8359 QSignalSpy isPlayingRoleChangedSpy(&myPlayer, &ManageAudioPlayer::isPlayingRoleChanged); 8360 QSignalSpy titleRoleChangedSpy(&myPlayer, &ManageAudioPlayer::titleRoleChanged); 8361 QSignalSpy artistNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::artistNameRoleChanged); 8362 QSignalSpy albumNameRoleChangedSpy(&myPlayer, &ManageAudioPlayer::albumNameRoleChanged); 8363 QSignalSpy playerStatusChangedSpy(&myPlayer, &ManageAudioPlayer::playerStatusChanged); 8364 QSignalSpy playerPlaybackStateChangedSpy(&myPlayer, &ManageAudioPlayer::playerPlaybackStateChanged); 8365 QSignalSpy playerErrorChangedSpy(&myPlayer, &ManageAudioPlayer::playerErrorChanged); 8366 QSignalSpy persistentStateChangedSpy(&myPlayer, &ManageAudioPlayer::persistentStateChanged); 8367 QSignalSpy playerPlaySpy(&myPlayer, &ManageAudioPlayer::playerPlay); 8368 QSignalSpy playerPauseSpy(&myPlayer, &ManageAudioPlayer::playerPause); 8369 QSignalSpy playerStopSpy(&myPlayer, &ManageAudioPlayer::playerStop); 8370 QSignalSpy skipNextTrackSpy(&myPlayer, &ManageAudioPlayer::skipNextTrack); 8371 QSignalSpy seekSpy(&myPlayer, &ManageAudioPlayer::seek); 8372 8373 myPlayList.appendRow(new QStandardItem); 8374 myPlayList.appendRow(new QStandardItem); 8375 myPlayList.appendRow(new QStandardItem); 8376 8377 myPlayList.item(0, 0)->setData(QStringLiteral("title"), ManageAudioPlayerTest::TitleRole); 8378 myPlayList.item(0, 0)->setData(QStringLiteral("artist"), ManageAudioPlayerTest::ArtistRole); 8379 myPlayList.item(0, 0)->setData(QStringLiteral("album"), ManageAudioPlayerTest::AlbumRole); 8380 myPlayList.item(1, 0)->setData(QStringLiteral("title2"), ManageAudioPlayerTest::TitleRole); 8381 myPlayList.item(1, 0)->setData(QStringLiteral("artist2"), ManageAudioPlayerTest::ArtistRole); 8382 myPlayList.item(1, 0)->setData(QStringLiteral("album2"), ManageAudioPlayerTest::AlbumRole); 8383 myPlayList.item(2, 0)->setData(QStringLiteral("title3"), ManageAudioPlayerTest::TitleRole); 8384 myPlayList.item(2, 0)->setData(QStringLiteral("artist3"), ManageAudioPlayerTest::ArtistRole); 8385 myPlayList.item(2, 0)->setData(QStringLiteral("album3"), ManageAudioPlayerTest::AlbumRole); 8386 8387 QCOMPARE(currentTrackChangedSpy.count(), 0); 8388 QCOMPARE(playListModelChangedSpy.count(), 0); 8389 QCOMPARE(playerSourceChangedSpy.count(), 0); 8390 QCOMPARE(urlRoleChangedSpy.count(), 0); 8391 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8392 QCOMPARE(titleRoleChangedSpy.count(), 0); 8393 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 8394 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 8395 QCOMPARE(playerStatusChangedSpy.count(), 0); 8396 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8397 QCOMPARE(playerErrorChangedSpy.count(), 0); 8398 QCOMPARE(persistentStateChangedSpy.count(), 0); 8399 QCOMPARE(playerPlaySpy.count(), 0); 8400 QCOMPARE(playerPauseSpy.count(), 0); 8401 QCOMPARE(playerStopSpy.count(), 0); 8402 QCOMPARE(skipNextTrackSpy.count(), 0); 8403 QCOMPARE(seekSpy.count(), 0); 8404 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8405 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8406 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8407 8408 myPlayer.setTitleRole(ManageAudioPlayerTest::TitleRole); 8409 8410 QCOMPARE(currentTrackChangedSpy.count(), 0); 8411 QCOMPARE(playListModelChangedSpy.count(), 0); 8412 QCOMPARE(playerSourceChangedSpy.count(), 0); 8413 QCOMPARE(urlRoleChangedSpy.count(), 0); 8414 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8415 QCOMPARE(titleRoleChangedSpy.count(), 1); 8416 QCOMPARE(artistNameRoleChangedSpy.count(), 0); 8417 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 8418 QCOMPARE(playerStatusChangedSpy.count(), 0); 8419 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8420 QCOMPARE(playerErrorChangedSpy.count(), 0); 8421 QCOMPARE(persistentStateChangedSpy.count(), 0); 8422 QCOMPARE(playerPlaySpy.count(), 0); 8423 QCOMPARE(playerPauseSpy.count(), 0); 8424 QCOMPARE(playerStopSpy.count(), 0); 8425 QCOMPARE(skipNextTrackSpy.count(), 0); 8426 QCOMPARE(seekSpy.count(), 0); 8427 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8428 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8429 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8430 8431 QCOMPARE(myPlayer.titleRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::TitleRole)); 8432 8433 myPlayer.setArtistNameRole(ManageAudioPlayerTest::ArtistRole); 8434 8435 QCOMPARE(currentTrackChangedSpy.count(), 0); 8436 QCOMPARE(playListModelChangedSpy.count(), 0); 8437 QCOMPARE(playerSourceChangedSpy.count(), 0); 8438 QCOMPARE(urlRoleChangedSpy.count(), 0); 8439 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8440 QCOMPARE(titleRoleChangedSpy.count(), 1); 8441 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8442 QCOMPARE(albumNameRoleChangedSpy.count(), 0); 8443 QCOMPARE(playerStatusChangedSpy.count(), 0); 8444 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8445 QCOMPARE(playerErrorChangedSpy.count(), 0); 8446 QCOMPARE(persistentStateChangedSpy.count(), 0); 8447 QCOMPARE(playerPlaySpy.count(), 0); 8448 QCOMPARE(playerPauseSpy.count(), 0); 8449 QCOMPARE(playerStopSpy.count(), 0); 8450 QCOMPARE(skipNextTrackSpy.count(), 0); 8451 QCOMPARE(seekSpy.count(), 0); 8452 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8453 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8454 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8455 8456 QCOMPARE(myPlayer.artistNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::ArtistRole)); 8457 8458 myPlayer.setAlbumNameRole(ManageAudioPlayerTest::AlbumRole); 8459 8460 QCOMPARE(currentTrackChangedSpy.count(), 0); 8461 QCOMPARE(playListModelChangedSpy.count(), 0); 8462 QCOMPARE(playerSourceChangedSpy.count(), 0); 8463 QCOMPARE(urlRoleChangedSpy.count(), 0); 8464 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8465 QCOMPARE(titleRoleChangedSpy.count(), 1); 8466 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8467 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8468 QCOMPARE(playerStatusChangedSpy.count(), 0); 8469 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8470 QCOMPARE(playerErrorChangedSpy.count(), 0); 8471 QCOMPARE(persistentStateChangedSpy.count(), 0); 8472 QCOMPARE(playerPlaySpy.count(), 0); 8473 QCOMPARE(playerPauseSpy.count(), 0); 8474 QCOMPARE(playerStopSpy.count(), 0); 8475 QCOMPARE(skipNextTrackSpy.count(), 0); 8476 QCOMPARE(seekSpy.count(), 0); 8477 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8478 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8479 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8480 8481 QCOMPARE(myPlayer.albumNameRole(), static_cast<int>(ManageAudioPlayerTest::ManageAudioPlayerTest::AlbumRole)); 8482 8483 QCOMPARE(currentTrackChangedSpy.count(), 0); 8484 QCOMPARE(playListModelChangedSpy.count(), 0); 8485 QCOMPARE(playerSourceChangedSpy.count(), 0); 8486 QCOMPARE(urlRoleChangedSpy.count(), 0); 8487 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8488 QCOMPARE(titleRoleChangedSpy.count(), 1); 8489 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8490 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8491 QCOMPARE(playerStatusChangedSpy.count(), 0); 8492 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8493 QCOMPARE(playerErrorChangedSpy.count(), 0); 8494 QCOMPARE(persistentStateChangedSpy.count(), 0); 8495 QCOMPARE(playerPlaySpy.count(), 0); 8496 QCOMPARE(playerPauseSpy.count(), 0); 8497 QCOMPARE(playerStopSpy.count(), 0); 8498 QCOMPARE(skipNextTrackSpy.count(), 0); 8499 QCOMPARE(seekSpy.count(), 0); 8500 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8501 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8502 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8503 8504 myPlayer.setPlayListModel(&myPlayList); 8505 8506 QCOMPARE(currentTrackChangedSpy.count(), 0); 8507 QCOMPARE(playListModelChangedSpy.count(), 1); 8508 QCOMPARE(playerSourceChangedSpy.count(), 0); 8509 QCOMPARE(urlRoleChangedSpy.count(), 0); 8510 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8511 QCOMPARE(titleRoleChangedSpy.count(), 1); 8512 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8513 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8514 QCOMPARE(playerStatusChangedSpy.count(), 0); 8515 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8516 QCOMPARE(playerErrorChangedSpy.count(), 0); 8517 QCOMPARE(persistentStateChangedSpy.count(), 0); 8518 QCOMPARE(playerPlaySpy.count(), 0); 8519 QCOMPARE(playerPauseSpy.count(), 0); 8520 QCOMPARE(playerStopSpy.count(), 0); 8521 QCOMPARE(skipNextTrackSpy.count(), 0); 8522 QCOMPARE(seekSpy.count(), 0); 8523 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8524 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8525 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8526 8527 QVariantMap settings; 8528 settings[QStringLiteral("isPlaying")] = true; 8529 settings[QStringLiteral("audioPlayerCurrentTitle")] = QStringLiteral("title"); 8530 settings[QStringLiteral("audioPlayerCurrentArtistName")] = QStringLiteral("artist"); 8531 settings[QStringLiteral("audioPlayerCurrentAlbumName")] = QStringLiteral("album"); 8532 8533 myPlayer.setPersistentState(settings); 8534 8535 QCOMPARE(currentTrackChangedSpy.count(), 0); 8536 QCOMPARE(playListModelChangedSpy.count(), 1); 8537 QCOMPARE(playerSourceChangedSpy.count(), 0); 8538 QCOMPARE(urlRoleChangedSpy.count(), 0); 8539 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8540 QCOMPARE(titleRoleChangedSpy.count(), 1); 8541 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8542 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8543 QCOMPARE(playerStatusChangedSpy.count(), 0); 8544 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8545 QCOMPARE(playerErrorChangedSpy.count(), 0); 8546 QCOMPARE(persistentStateChangedSpy.count(), 1); 8547 QCOMPARE(playerPlaySpy.count(), 0); 8548 QCOMPARE(playerPauseSpy.count(), 0); 8549 QCOMPARE(playerStopSpy.count(), 0); 8550 QCOMPARE(skipNextTrackSpy.count(), 0); 8551 QCOMPARE(seekSpy.count(), 0); 8552 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8553 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8554 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8555 8556 myPlayer.setCurrentTrack(myPlayList.index(0, 0)); 8557 8558 QCOMPARE(currentTrackChangedSpy.count(), 1); 8559 QCOMPARE(playListModelChangedSpy.count(), 1); 8560 QCOMPARE(playerSourceChangedSpy.count(), 1); 8561 QCOMPARE(urlRoleChangedSpy.count(), 0); 8562 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8563 QCOMPARE(titleRoleChangedSpy.count(), 1); 8564 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8565 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8566 QCOMPARE(playerStatusChangedSpy.count(), 0); 8567 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8568 QCOMPARE(playerErrorChangedSpy.count(), 0); 8569 QCOMPARE(persistentStateChangedSpy.count(), 1); 8570 QCOMPARE(playerPlaySpy.count(), 0); 8571 QCOMPARE(playerPauseSpy.count(), 0); 8572 QCOMPARE(playerStopSpy.count(), 0); 8573 QCOMPARE(skipNextTrackSpy.count(), 0); 8574 QCOMPARE(seekSpy.count(), 0); 8575 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8576 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8577 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8578 8579 QCOMPARE(myPlayer.currentTrack(), QPersistentModelIndex(myPlayList.index(0, 0))); 8580 8581 myPlayer.setUrlRole(ManageAudioPlayerTest::ResourceRole); 8582 8583 QCOMPARE(currentTrackChangedSpy.count(), 1); 8584 QCOMPARE(playListModelChangedSpy.count(), 1); 8585 QCOMPARE(playerSourceChangedSpy.count(), 1); 8586 QCOMPARE(urlRoleChangedSpy.count(), 1); 8587 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8588 QCOMPARE(titleRoleChangedSpy.count(), 1); 8589 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8590 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8591 QCOMPARE(playerStatusChangedSpy.count(), 0); 8592 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8593 QCOMPARE(playerErrorChangedSpy.count(), 0); 8594 QCOMPARE(persistentStateChangedSpy.count(), 1); 8595 QCOMPARE(playerPlaySpy.count(), 0); 8596 QCOMPARE(playerPauseSpy.count(), 0); 8597 QCOMPARE(playerStopSpy.count(), 0); 8598 QCOMPARE(skipNextTrackSpy.count(), 0); 8599 QCOMPARE(seekSpy.count(), 0); 8600 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8601 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8602 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8603 8604 QCOMPARE(myPlayer.urlRole(), static_cast<int>(ManageAudioPlayerTest::ResourceRole)); 8605 8606 QCOMPARE(playerPlaySpy.wait(500), false); 8607 8608 QCOMPARE(currentTrackChangedSpy.count(), 1); 8609 QCOMPARE(playListModelChangedSpy.count(), 1); 8610 QCOMPARE(playerSourceChangedSpy.count(), 1); 8611 QCOMPARE(urlRoleChangedSpy.count(), 1); 8612 QCOMPARE(isPlayingRoleChangedSpy.count(), 0); 8613 QCOMPARE(titleRoleChangedSpy.count(), 1); 8614 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8615 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8616 QCOMPARE(playerStatusChangedSpy.count(), 0); 8617 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8618 QCOMPARE(playerErrorChangedSpy.count(), 0); 8619 QCOMPARE(persistentStateChangedSpy.count(), 1); 8620 QCOMPARE(playerPlaySpy.count(), 0); 8621 QCOMPARE(playerPauseSpy.count(), 0); 8622 QCOMPARE(playerStopSpy.count(), 0); 8623 QCOMPARE(skipNextTrackSpy.count(), 0); 8624 QCOMPARE(seekSpy.count(), 0); 8625 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8626 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8627 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8628 8629 myPlayer.setIsPlayingRole(ManageAudioPlayerTest::IsPlayingRole); 8630 8631 QCOMPARE(currentTrackChangedSpy.count(), 1); 8632 QCOMPARE(playListModelChangedSpy.count(), 1); 8633 QCOMPARE(playerSourceChangedSpy.count(), 1); 8634 QCOMPARE(urlRoleChangedSpy.count(), 1); 8635 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8636 QCOMPARE(titleRoleChangedSpy.count(), 1); 8637 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8638 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8639 QCOMPARE(playerStatusChangedSpy.count(), 0); 8640 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8641 QCOMPARE(playerErrorChangedSpy.count(), 0); 8642 QCOMPARE(persistentStateChangedSpy.count(), 1); 8643 QCOMPARE(playerPlaySpy.count(), 0); 8644 QCOMPARE(playerPauseSpy.count(), 0); 8645 QCOMPARE(playerStopSpy.count(), 0); 8646 QCOMPARE(skipNextTrackSpy.count(), 0); 8647 QCOMPARE(seekSpy.count(), 0); 8648 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8649 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8650 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8651 8652 QCOMPARE(myPlayer.isPlayingRole(), static_cast<int>(ManageAudioPlayerTest::IsPlayingRole)); 8653 8654 myPlayList.item(0, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///1.mp3")), ManageAudioPlayerTest::ResourceRole); 8655 myPlayList.item(1, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///2.mp3")), ManageAudioPlayerTest::ResourceRole); 8656 myPlayList.item(2, 0)->setData(QUrl::fromUserInput(QStringLiteral("file:///3.mp3")), ManageAudioPlayerTest::ResourceRole); 8657 8658 QCOMPARE(currentTrackChangedSpy.count(), 1); 8659 QCOMPARE(playListModelChangedSpy.count(), 1); 8660 QCOMPARE(playerSourceChangedSpy.count(), 2); 8661 QCOMPARE(urlRoleChangedSpy.count(), 1); 8662 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8663 QCOMPARE(titleRoleChangedSpy.count(), 1); 8664 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8665 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8666 QCOMPARE(playerStatusChangedSpy.count(), 0); 8667 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8668 QCOMPARE(playerErrorChangedSpy.count(), 0); 8669 QCOMPARE(persistentStateChangedSpy.count(), 1); 8670 QCOMPARE(playerPlaySpy.count(), 0); 8671 QCOMPARE(playerPauseSpy.count(), 0); 8672 QCOMPARE(playerStopSpy.count(), 0); 8673 QCOMPARE(skipNextTrackSpy.count(), 0); 8674 QCOMPARE(seekSpy.count(), 0); 8675 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8676 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8677 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8678 8679 QCOMPARE(myPlayer.playerSource(), QUrl::fromUserInput(QStringLiteral("file:///1.mp3"))); 8680 8681 myPlayer.setPlayerStatus(QMediaPlayer::LoadingMedia); 8682 8683 QCOMPARE(currentTrackChangedSpy.count(), 1); 8684 QCOMPARE(playListModelChangedSpy.count(), 1); 8685 QCOMPARE(playerSourceChangedSpy.count(), 2); 8686 QCOMPARE(urlRoleChangedSpy.count(), 1); 8687 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8688 QCOMPARE(titleRoleChangedSpy.count(), 1); 8689 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8690 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8691 QCOMPARE(playerStatusChangedSpy.count(), 1); 8692 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8693 QCOMPARE(playerErrorChangedSpy.count(), 0); 8694 QCOMPARE(persistentStateChangedSpy.count(), 1); 8695 QCOMPARE(playerPlaySpy.count(), 0); 8696 QCOMPARE(playerPauseSpy.count(), 0); 8697 QCOMPARE(playerStopSpy.count(), 0); 8698 QCOMPARE(skipNextTrackSpy.count(), 0); 8699 QCOMPARE(seekSpy.count(), 0); 8700 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8701 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8702 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8703 8704 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadingMedia); 8705 8706 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 8707 8708 QCOMPARE(currentTrackChangedSpy.count(), 1); 8709 QCOMPARE(playListModelChangedSpy.count(), 1); 8710 QCOMPARE(playerSourceChangedSpy.count(), 2); 8711 QCOMPARE(urlRoleChangedSpy.count(), 1); 8712 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8713 QCOMPARE(titleRoleChangedSpy.count(), 1); 8714 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8715 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8716 QCOMPARE(playerStatusChangedSpy.count(), 1); 8717 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8718 QCOMPARE(playerErrorChangedSpy.count(), 0); 8719 QCOMPARE(persistentStateChangedSpy.count(), 1); 8720 QCOMPARE(playerPlaySpy.count(), 0); 8721 QCOMPARE(playerPauseSpy.count(), 0); 8722 QCOMPARE(playerStopSpy.count(), 0); 8723 QCOMPARE(skipNextTrackSpy.count(), 0); 8724 QCOMPARE(seekSpy.count(), 0); 8725 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8726 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8727 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8728 8729 myPlayer.setPlayerError(QMediaPlayer::NoError); 8730 8731 QCOMPARE(currentTrackChangedSpy.count(), 1); 8732 QCOMPARE(playListModelChangedSpy.count(), 1); 8733 QCOMPARE(playerSourceChangedSpy.count(), 2); 8734 QCOMPARE(urlRoleChangedSpy.count(), 1); 8735 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8736 QCOMPARE(titleRoleChangedSpy.count(), 1); 8737 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8738 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8739 QCOMPARE(playerStatusChangedSpy.count(), 1); 8740 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8741 QCOMPARE(playerErrorChangedSpy.count(), 0); 8742 QCOMPARE(persistentStateChangedSpy.count(), 1); 8743 QCOMPARE(playerPlaySpy.count(), 0); 8744 QCOMPARE(playerPauseSpy.count(), 0); 8745 QCOMPARE(playerStopSpy.count(), 0); 8746 QCOMPARE(skipNextTrackSpy.count(), 0); 8747 QCOMPARE(seekSpy.count(), 0); 8748 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8749 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8750 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8751 8752 myPlayer.setPlayerStatus(QMediaPlayer::LoadedMedia); 8753 8754 QCOMPARE(currentTrackChangedSpy.count(), 1); 8755 QCOMPARE(playListModelChangedSpy.count(), 1); 8756 QCOMPARE(playerSourceChangedSpy.count(), 2); 8757 QCOMPARE(urlRoleChangedSpy.count(), 1); 8758 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8759 QCOMPARE(titleRoleChangedSpy.count(), 1); 8760 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8761 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8762 QCOMPARE(playerStatusChangedSpy.count(), 2); 8763 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8764 QCOMPARE(playerErrorChangedSpy.count(), 0); 8765 QCOMPARE(persistentStateChangedSpy.count(), 1); 8766 QCOMPARE(playerPlaySpy.count(), 0); 8767 QCOMPARE(playerPauseSpy.count(), 0); 8768 QCOMPARE(playerStopSpy.count(), 0); 8769 QCOMPARE(skipNextTrackSpy.count(), 0); 8770 QCOMPARE(seekSpy.count(), 0); 8771 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8772 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8773 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8774 8775 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::LoadedMedia); 8776 8777 myPlayer.setPlayerStatus(QMediaPlayer::BufferingMedia); 8778 8779 QCOMPARE(currentTrackChangedSpy.count(), 1); 8780 QCOMPARE(playListModelChangedSpy.count(), 1); 8781 QCOMPARE(playerSourceChangedSpy.count(), 2); 8782 QCOMPARE(urlRoleChangedSpy.count(), 1); 8783 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8784 QCOMPARE(titleRoleChangedSpy.count(), 1); 8785 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8786 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8787 QCOMPARE(playerStatusChangedSpy.count(), 3); 8788 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8789 QCOMPARE(playerErrorChangedSpy.count(), 0); 8790 QCOMPARE(persistentStateChangedSpy.count(), 1); 8791 QCOMPARE(playerPlaySpy.count(), 0); 8792 QCOMPARE(playerPauseSpy.count(), 0); 8793 QCOMPARE(playerStopSpy.count(), 0); 8794 QCOMPARE(skipNextTrackSpy.count(), 0); 8795 QCOMPARE(seekSpy.count(), 0); 8796 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8797 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8798 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8799 8800 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::BufferingMedia); 8801 8802 QCOMPARE(playerPlaySpy.wait(), true); 8803 8804 QCOMPARE(currentTrackChangedSpy.count(), 1); 8805 QCOMPARE(playListModelChangedSpy.count(), 1); 8806 QCOMPARE(playerSourceChangedSpy.count(), 2); 8807 QCOMPARE(urlRoleChangedSpy.count(), 1); 8808 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8809 QCOMPARE(titleRoleChangedSpy.count(), 1); 8810 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8811 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8812 QCOMPARE(playerStatusChangedSpy.count(), 3); 8813 QCOMPARE(playerPlaybackStateChangedSpy.count(), 0); 8814 QCOMPARE(playerErrorChangedSpy.count(), 0); 8815 QCOMPARE(persistentStateChangedSpy.count(), 1); 8816 QCOMPARE(playerPlaySpy.count(), 1); 8817 QCOMPARE(playerPauseSpy.count(), 0); 8818 QCOMPARE(playerStopSpy.count(), 0); 8819 QCOMPARE(skipNextTrackSpy.count(), 0); 8820 QCOMPARE(seekSpy.count(), 0); 8821 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8822 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8823 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8824 8825 myPlayer.setPlayerPlaybackState(QMediaPlayer::PlayingState); 8826 8827 QCOMPARE(currentTrackChangedSpy.count(), 1); 8828 QCOMPARE(playListModelChangedSpy.count(), 1); 8829 QCOMPARE(playerSourceChangedSpy.count(), 2); 8830 QCOMPARE(urlRoleChangedSpy.count(), 1); 8831 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8832 QCOMPARE(titleRoleChangedSpy.count(), 1); 8833 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8834 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8835 QCOMPARE(playerStatusChangedSpy.count(), 3); 8836 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 8837 QCOMPARE(playerErrorChangedSpy.count(), 0); 8838 QCOMPARE(persistentStateChangedSpy.count(), 1); 8839 QCOMPARE(playerPlaySpy.count(), 1); 8840 QCOMPARE(playerPauseSpy.count(), 0); 8841 QCOMPARE(playerStopSpy.count(), 0); 8842 QCOMPARE(skipNextTrackSpy.count(), 0); 8843 QCOMPARE(seekSpy.count(), 0); 8844 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 8845 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8846 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8847 8848 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::PlayingState)); 8849 8850 myPlayer.setPlayerStatus(QMediaPlayer::EndOfMedia); 8851 8852 QCOMPARE(currentTrackChangedSpy.count(), 1); 8853 QCOMPARE(playListModelChangedSpy.count(), 1); 8854 QCOMPARE(playerSourceChangedSpy.count(), 2); 8855 QCOMPARE(urlRoleChangedSpy.count(), 1); 8856 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8857 QCOMPARE(titleRoleChangedSpy.count(), 1); 8858 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8859 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8860 QCOMPARE(playerStatusChangedSpy.count(), 4); 8861 QCOMPARE(playerPlaybackStateChangedSpy.count(), 1); 8862 QCOMPARE(playerErrorChangedSpy.count(), 0); 8863 QCOMPARE(persistentStateChangedSpy.count(), 1); 8864 QCOMPARE(playerPlaySpy.count(), 1); 8865 QCOMPARE(playerPauseSpy.count(), 0); 8866 QCOMPARE(playerStopSpy.count(), 0); 8867 QCOMPARE(skipNextTrackSpy.count(), 0); 8868 QCOMPARE(seekSpy.count(), 0); 8869 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), true); 8870 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8871 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8872 8873 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::EndOfMedia); 8874 8875 myPlayer.setPlayerPlaybackState(QMediaPlayer::StoppedState); 8876 8877 QCOMPARE(currentTrackChangedSpy.count(), 1); 8878 QCOMPARE(playListModelChangedSpy.count(), 1); 8879 QCOMPARE(playerSourceChangedSpy.count(), 2); 8880 QCOMPARE(urlRoleChangedSpy.count(), 1); 8881 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8882 QCOMPARE(titleRoleChangedSpy.count(), 1); 8883 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8884 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8885 QCOMPARE(playerStatusChangedSpy.count(), 4); 8886 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 8887 QCOMPARE(playerErrorChangedSpy.count(), 0); 8888 QCOMPARE(persistentStateChangedSpy.count(), 1); 8889 QCOMPARE(playerPlaySpy.count(), 1); 8890 QCOMPARE(playerPauseSpy.count(), 0); 8891 QCOMPARE(playerStopSpy.count(), 0); 8892 QCOMPARE(skipNextTrackSpy.count(), 0); 8893 QCOMPARE(seekSpy.count(), 0); 8894 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8895 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8896 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8897 8898 QCOMPARE(myPlayer.playerPlaybackState(), static_cast<int>(QMediaPlayer::StoppedState)); 8899 8900 QCOMPARE(skipNextTrackSpy.wait(), true); 8901 8902 QCOMPARE(currentTrackChangedSpy.count(), 1); 8903 QCOMPARE(playListModelChangedSpy.count(), 1); 8904 QCOMPARE(playerSourceChangedSpy.count(), 2); 8905 QCOMPARE(urlRoleChangedSpy.count(), 1); 8906 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8907 QCOMPARE(titleRoleChangedSpy.count(), 1); 8908 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8909 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8910 QCOMPARE(playerStatusChangedSpy.count(), 4); 8911 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 8912 QCOMPARE(playerErrorChangedSpy.count(), 0); 8913 QCOMPARE(persistentStateChangedSpy.count(), 1); 8914 QCOMPARE(playerPlaySpy.count(), 1); 8915 QCOMPARE(playerPauseSpy.count(), 0); 8916 QCOMPARE(playerStopSpy.count(), 0); 8917 QCOMPARE(skipNextTrackSpy.count(), 1); 8918 QCOMPARE(seekSpy.count(), 0); 8919 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8920 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8921 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8922 8923 myPlayer.setPlayerStatus(QMediaPlayer::InvalidMedia); 8924 8925 QCOMPARE(currentTrackChangedSpy.count(), 1); 8926 QCOMPARE(playListModelChangedSpy.count(), 1); 8927 QCOMPARE(playerSourceChangedSpy.count(), 2); 8928 QCOMPARE(urlRoleChangedSpy.count(), 1); 8929 QCOMPARE(isPlayingRoleChangedSpy.count(), 1); 8930 QCOMPARE(titleRoleChangedSpy.count(), 1); 8931 QCOMPARE(artistNameRoleChangedSpy.count(), 1); 8932 QCOMPARE(albumNameRoleChangedSpy.count(), 1); 8933 QCOMPARE(playerStatusChangedSpy.count(), 5); 8934 QCOMPARE(playerPlaybackStateChangedSpy.count(), 2); 8935 QCOMPARE(playerErrorChangedSpy.count(), 0); 8936 QCOMPARE(persistentStateChangedSpy.count(), 1); 8937 QCOMPARE(playerPlaySpy.count(), 1); 8938 QCOMPARE(playerPauseSpy.count(), 0); 8939 QCOMPARE(playerStopSpy.count(), 0); 8940 QCOMPARE(skipNextTrackSpy.count(), 1); 8941 QCOMPARE(seekSpy.count(), 0); 8942 QCOMPARE(myPlayList.data(myPlayList.index(0, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8943 QCOMPARE(myPlayList.data(myPlayList.index(1, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8944 QCOMPARE(myPlayList.data(myPlayList.index(2, 0), ManageAudioPlayerTest::IsPlayingRole).toBool(), false); 8945 8946 QCOMPARE(myPlayer.playerStatus(), QMediaPlayer::InvalidMedia); 8947 8948 QCOMPARE(skipNextTrackSpy.wait(300), true); 8949 } 8950 8951 QTEST_GUILESS_MAIN(ManageAudioPlayerTest) 8952 8953 8954 #include "moc_manageaudioplayertest.cpp"