@@ -56,9 +56,10 @@ Rectangle {
57 ListModel {
57 ListModel {
58 id: tracksModel3
58 id: tracksModel3
59− ListElement { uri: "../../tests/qmltests/Dash/Music/data/testsound.ogg"; trackNo: 1; title: "Some track name"; length: "0:30"}
59+ ListElement { uri: "../../tests/qmltests/Dash/Music/data/testsound1.ogg"; trackNo: 1; title: "Some track name"; length: "0:30"}
60− ListElement { uri: "../../tests/qmltests/Dash/Music/data/testsound.ogg"; trackNo: 2; title: "Some other track name"; length: "1:23"}
60+ ListElement { uri: "../../tests/qmltests/Dash/Music/data/testsound1.ogg"; trackNo: 2; title: "Some track name"; length: "0:30"}
61+ ListElement { uri: "../../tests/qmltests/Dash/Music/data/testsound2.ogg"; trackNo: 3; title: "Some other track name"; length: "1:23"}
61− ListElement { uri: "../../tests/qmltests/Dash/Music/data/testsound.ogg"; trackNo: 3; title: "And another one"; length: "123:45"}
62+ ListElement { uri: "../../tests/qmltests/Dash/Music/data/testsound3.ogg"; trackNo: 4; title: "And another one"; length: "123:45"}
64 UT.UnityTestCase {
65 UT.UnityTestCase {
@@ -96,6 +97,13 @@ Rectangle {
100+ function checkPlayerUri(index) {
101+ var modelFilename = musicPreview.previewData.tracks.get(index).uri.replace(/^.*[\\\/]/, '');
102+ var playerFilename = findInvisibleChild(musicPreview, "audioPlayer").source.toString().replace(/^.*[\\\/]/, '');
104+ compare(modelFilename, playerFilename, "Player source is not set correctly.");
99 function test_playback() {
107 function test_playback() {
100 musicPreview.previewData.tracks = tracksModel3;
108 musicPreview.previewData.tracks = tracksModel3;
101 waitForRendering(musicPreview);
109 waitForRendering(musicPreview);
@@ -123,7 +131,7 @@ Rectangle {
123 mouseClick(track0PlayButton, track0PlayButton.width / 2, track0PlayButton.height / 2);
131 mouseClick(track0PlayButton, track0PlayButton.width / 2, track0PlayButton.height / 2);
125 tryCompare(audioPlayer, "playbackState", Audio.PlayingState);
133 tryCompare(audioPlayer, "playbackState", Audio.PlayingState);
126− compare(audioPlayer.uri, musicPreview.previewData.tracks.get(0).uri)
134+ checkPlayerUri(0);
128 tryCompare(track0ProgressBar, "visible", true);
136 tryCompare(track0ProgressBar, "visible", true);
129 tryCompare(track1ProgressBar, "visible", false);
137 tryCompare(track1ProgressBar, "visible", false);
@@ -132,24 +140,34 @@ Rectangle {
132 // Clicking the button again should pause it. The progress bar should stay visible
140 // Clicking the button again should pause it. The progress bar should stay visible
133 mouseClick(track0PlayButton, track0PlayButton.width / 2, track0PlayButton.height / 2);
141 mouseClick(track0PlayButton, track0PlayButton.width / 2, track0PlayButton.height / 2);
134 tryCompare(audioPlayer, "playbackState", Audio.PausedState);
142 tryCompare(audioPlayer, "playbackState", Audio.PausedState);
135− compare(audioPlayer.uri, musicPreview.previewData.tracks.get(0).uri)
143+ checkPlayerUri(0);
136 tryCompare(track0ProgressBar, "visible", true);
144 tryCompare(track0ProgressBar, "visible", true);
138 // Continue playback
146 // Continue playback
139 mouseClick(track0PlayButton, track0PlayButton.width / 2, track0PlayButton.height / 2);
147 mouseClick(track0PlayButton, track0PlayButton.width / 2, track0PlayButton.height / 2);
140 tryCompare(audioPlayer, "playbackState", Audio.PlayingState);
148 tryCompare(audioPlayer, "playbackState", Audio.PlayingState);
141− compare(audioPlayer.uri, musicPreview.previewData.tracks.get(0).uri)
149+ checkPlayerUri(0);
143 // Playing track 1 should make progress bar 1 visible and hide progress bar 0 again
151 // Playing track 1 should make progress bar 1 visible and hide progress bar 0 again
144 mouseClick(track1PlayButton, track1PlayButton.width / 2, track1PlayButton.height / 2);
152 mouseClick(track1PlayButton, track1PlayButton.width / 2, track1PlayButton.height / 2);
146 tryCompare(audioPlayer, "playbackState", Audio.PlayingState);
154 tryCompare(audioPlayer, "playbackState", Audio.PlayingState);
147− compare(audioPlayer.uri, musicPreview.previewData.tracks.get(1).uri)
155+ checkPlayerUri(1);
149 tryCompare(track0ProgressBar, "visible", false);
157 tryCompare(track0ProgressBar, "visible", false);
150 tryCompare(track1ProgressBar, "visible", true);
158 tryCompare(track1ProgressBar, "visible", true);
151 tryCompare(track2ProgressBar, "visible", false);
159 tryCompare(track2ProgressBar, "visible", false);
161+ // Playing track 2 should make progress bar 1 visible and hide progress bar 0 again
162+ mouseClick(track2PlayButton, track2PlayButton.width / 2, track2PlayButton.height / 2);
164+ tryCompare(audioPlayer, "playbackState", Audio.PlayingState);
167+ tryCompare(track0ProgressBar, "visible", false);
168+ tryCompare(track1ProgressBar, "visible", false);
169+ tryCompare(track2ProgressBar, "visible", true);
153 // Switching away from this preview should make all players shut up!
171 // Switching away from this preview should make all players shut up!
154 musicPreview.isCurrent = false
172 musicPreview.isCurrent = false
155 tryCompare(audioPlayer, "playbackState", Audio.StoppedState);
173 tryCompare(audioPlayer, "playbackState", Audio.StoppedState);