| Start/ | End/ | |||
| True | False | - | Line | Source |
| 1 | /* | |||
| 2 | * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). | |||
| 3 | * All rights reserved. | |||
| 4 | * This component and the accompanying materials are made available | |||
| 5 | * under the terms of "Eclipse Public License v1.0" | |||
| 6 | * which accompanies this distribution, and is available | |||
| 7 | * at the URL "http://www.eclipse.org/legal/epl-v10.html". | |||
| 8 | * | |||
| 9 | * Initial Contributors: | |||
| 10 | * Nokia Corporation - initial contribution. | |||
| 11 | * | |||
| 12 | * Contributors: | |||
| 13 | * | |||
| 14 | * Description: Unit test for mpmpxdetailsframeworkwrapper | |||
| 15 | * | |||
| 16 | */ | |||
| 17 | ||||
| 18 | #include <QSignalSpy> | |||
| 19 | #include <hbapplication.h> | |||
| 20 | #include <hbmainwindow.h> | |||
| 21 | ||||
| 22 | #include <mpxmessagegeneraldefs.h> | |||
| 23 | #include <mpxplaybackmessage.h> | |||
| 24 | #include <mpxmediamusicdefs.h> | |||
| 25 | #include <mpxmediageneraldefs.h> | |||
| 26 | #include <mpxmediaaudiodefs.h> | |||
| 27 | ||||
| 28 | #include <e32std.h> | |||
| 29 | #include <e32des8.h> | |||
| 30 | ||||
| 31 | #include "unittest_mpmpxdetailsframeworkwrapper.h" | |||
| 32 | #include "stub/inc/mpxplaybackutility.h" | |||
| 33 | #include "stub/inc/mpsongdata.h" | |||
| 34 | #include "logger.h" | |||
| 35 | #include "mpcommondefs.h" | |||
| 36 | ||||
| 37 | // classes under test | |||
| 38 | #define private public | |||
| 39 | #include "mpmpxdetailsframeworkwrapper.h" | |||
| 40 | #include "mpmpxdetailsframeworkwrapper_p.h" | |||
| 41 | #undef private | |||
| 42 | ||||
| 43 | struct TTestAttrs | |||
| 44 | { | |||
| 45 | const wchar_t* GeneralTitle; // MpSongData::mTitle | |||
| 46 | const wchar_t* MusicArtist; // MpSongData::mArtist | |||
| 47 | const wchar_t* MusicAlbum; // MpSongData::mAlbum | |||
| 48 | const wchar_t* MusicAlbumArtFileName; // MpSongData::mAlbumArt (TODO: not tested yet) | |||
| 49 | const wchar_t* Composer; // MpSongData::mComposer | |||
| 50 | const TInt Year; // MpSongData::mYear | |||
| 51 | const wchar_t* MusicAlbumTrack; // MpSongData::mAlbumTrack | |||
| 52 | const wchar_t* MusicGenre; // MpSongData::mGenre | |||
| 53 | const wchar_t* MusicUri; // N/A in MpSongData (TODO: not tested yet) | |||
| 54 | const wchar_t* MimeType; // MpSongData::mMimeType | |||
| 55 | const TInt Duration; // MpSongData::mDuration | |||
| 56 | const TInt MediaAudioBitRate; // MpSongData::mbitRate | |||
| 57 | const TInt MediaAudioSampleRate; // MpSongData::mSampleRate | |||
| 58 | const wchar_t* Copyright; // MpSongData::mCopyright | |||
| 59 | const wchar_t* Url; // MpSongData::mMusicURL | |||
| 60 | }; | |||
| 61 | ||||
| 62 | // title | |||
| 63 | const TInt KTitleZeroSized = 0; | |||
| 64 | const TInt KTitleVeryLarge = 1; | |||
| 65 | const TInt KTitleOff = 2; | |||
| 66 | ||||
| 67 | // artist | |||
| 68 | const TInt KMusicArtistZeroSized = 3; | |||
| 69 | const TInt KMusicArtistLarge = 4; | |||
| 70 | const TInt KMusicArtistOff = 5; | |||
| 71 | ||||
| 72 | // album | |||
| 73 | const TInt KAlbumZeroSized = 6; | |||
| 74 | const TInt KAlbumLarge = 7; | |||
| 75 | const TInt KAlbumOff = 8; | |||
| 76 | ||||
| 77 | // comment | |||
| 78 | const TInt KCommentZeroSized = 9; | |||
| 79 | const TInt KCommentLarge = 10; | |||
| 80 | const TInt KCommentOff = 11; | |||
| 81 | ||||
| 82 | // composer | |||
| 83 | const TInt KComposerZeroSized = 12; | |||
| 84 | const TInt KComposerLarge = 13; | |||
| 85 | const TInt KComposerOff = 14; | |||
| 86 | ||||
| 87 | // year | |||
| 88 | const TInt KYearNegative = 15; | |||
| 89 | const TInt KYearZero = 16; | |||
| 90 | const TInt KYearPositive = 17; | |||
| 91 | const TInt KYearOff = 18; | |||
| 92 | ||||
| 93 | // album track | |||
| 94 | const TInt KAlbumTrackZeroSized = 19; | |||
| 95 | const TInt KAlbumTrackLarge = 20; | |||
| 96 | const TInt KAlbumTrackOff = 21; | |||
| 97 | ||||
| 98 | // genre | |||
| 99 | const TInt KGenreZeroSized = 22; | |||
| 100 | const TInt KGenreLarge = 23; | |||
| 101 | const TInt KGenreOff = 24; | |||
| 102 | ||||
| 103 | // everything is OFF | |||
| 104 | const TInt KAllFieldsOFF = 25; | |||
| 105 | ||||
| 106 | // MIME Type | |||
| 107 | const TInt KMimeTypeZeroSized = 26; | |||
| 108 | const TInt KMimeTypeMP3 = 27; | |||
| 109 | const TInt KMimeTypeLarge = 28; | |||
| 110 | const TInt KMimeTypeOff = 29; | |||
| 111 | ||||
| 112 | // duration | |||
| 113 | const TInt KDuration = 30; | |||
| 114 | ||||
| 115 | // bit rate | |||
| 116 | const TInt KMediaAudioBitrate = 31; | |||
| 117 | ||||
| 118 | // sample rate | |||
| 119 | const TInt KMediaAudioSampleRate = 32; | |||
| 120 | ||||
| 121 | // sample rate | |||
| 122 | const TInt KMediaGeneralCopyright = 33; | |||
| 123 | const TInt KMediaMusicURL = 34; | |||
| 124 | ||||
| 125 | _LIT(KOff,"OFF"); | |||
| 126 | ||||
| 127 | const TTestAttrs KAllSongsTestData[] = | |||
| 128 | { | |||
| 129 | // Title | |||
| 130 | { L"", L"Artist 1", L"Album 1", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 131 | ,{ L"LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM", L"Artist 1", L"Album 1", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 132 | ,{ L"OFF", L"Artist 1", L"Album 1", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 133 | // Artist | |||
| 134 | , { L"Title", L"", L"Album 1", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 135 | , { L"Title", L"LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM", L"Album 1", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 136 | ,{ L"Title", L"OFF", L"Album 1", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 137 | // Album | |||
| 138 | , { L"Title", L"Artist", L"", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 139 | , { L"Title", L"Artist", L"LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 140 | , { L"Title", L"Artist", L"OFF", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 141 | // Comment | |||
| 142 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 143 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 144 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 145 | // Composer | |||
| 146 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 147 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM", 2009, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 148 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"OFF", 2009, L"Track 1", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 149 | // Year | |||
| 150 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", -200, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 151 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 0, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 152 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 3000, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 153 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", -1, L"Track 1", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 154 | // Album Track | |||
| 155 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 156 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 157 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"OFF", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 158 | // Genre | |||
| 159 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 160 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 161 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"OFF", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 162 | // all fields OFF | |||
| 163 | , { L"OFF", L"OFF", L"OFF", L"OFF", L"OFF", -1, L"OFF", L"OFF", L"OFF", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 164 | // MIME TYPE - FORMAT | |||
| 165 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"", -1,-1,-1, L"OFF", L"OFF"} | |||
| 166 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"MP3", -1,-1,-1, L"OFF", L"OFF"} | |||
| 167 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM LOREM IPSUM", -1,-1,-1, L"OFF", L"OFF"} | |||
| 168 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"OFF", -1,-1,-1, L"OFF", L"OFF"} | |||
| 169 | // duration | |||
| 170 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"", 0,-1,-1, L"OFF", L"OFF"} | |||
| 171 | // KMediaAudioBitrate | |||
| 172 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"", 0,0, -1, L"OFF", L"OFF"} | |||
| 173 | // KMPXMediaAudioSamplerate | |||
| 174 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"", -1,-1, 0, L"OFF", L"OFF"} | |||
| 175 | // KMPXMediaGeneralCopyright | |||
| 176 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"", -1,-1, 0, L"Copyright", L"OFF"} | |||
| 177 | // KMPXMediaMusicURL | |||
| 178 | , { L"Title", L"Artist", L"Album", L"e:\\data\\images\\art1.jpg", L"Composer 1", 2000, L"Track", L"Genre", L"Uri 1", L"", -1,-1, 0, L"OFF", L"URL"} | |||
| 179 | ||||
| 180 | }; | |||
| 181 | ||||
| 182 | ||||
| Top | ||||
| 35 | 0 | 183 | QString referenceGeneralCopyright(int index) | |
| 184 | { | |||
| 185 | QString result; | |||
| 186 | const TDesC& copyright = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].Copyright)); | |||
| 1 | 34 | 187 | if(copyright.Match(KOff) == KErrNotFound) | |
| 188 | { | |||
| 189 | result = QString::fromUtf16( copyright.Ptr(), copyright.Length() ); | |||
| 190 | } | |||
| 35 | 191 | return result; | ||
| 192 | } | |||
| 193 | ||||
| Top | ||||
| 35 | 0 | 194 | QString referenceUrl(int index) | |
| 195 | { | |||
| 196 | QString result; | |||
| 197 | const TDesC& url = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].Url)); | |||
| 1 | 34 | 198 | if(url.Match(KOff) == KErrNotFound) | |
| 199 | { | |||
| 200 | result = QString::fromUtf16( url.Ptr(), url.Length() ); | |||
| 201 | } | |||
| 35 | 202 | return result; | ||
| 203 | } | |||
| 204 | ||||
| Top | ||||
| 35 | 0 | 205 | QString referenceMimeType(int index) | |
| 206 | { | |||
| 207 | QString result; | |||
| 208 | const TDesC& title = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].MimeType)); | |||
| 209 | _LIT(KMime, "audio/aac"); | |||
| 0 | 35 | - | 210 | if(title.Match(KMime) == KErrNone) |
| 211 | { | |||
| 212 | result = QString("AAC"); | |||
| 213 | } | |||
| 35 | 214 | return result; | ||
| 215 | } | |||
| 216 | ||||
| Top | ||||
| 35 | 0 | 217 | QString referenceGeneralTitle(int index) | |
| 218 | { | |||
| 219 | QString result; | |||
| 220 | const TDesC& title = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].GeneralTitle)); | |||
| 33 | 2 | 221 | if(title.Match(KOff) == KErrNotFound) | |
| 222 | { | |||
| 223 | result = QString::fromUtf16( title.Ptr(), title.Length() ); | |||
| 224 | } | |||
| 35 | 225 | return result; | ||
| 226 | } | |||
| 227 | ||||
| Top | ||||
| 35 | 0 | 228 | QString referenceMusicArtist(int index) | |
| 229 | { | |||
| 230 | QString result; | |||
| 231 | const TDesC& artist = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].MusicArtist)); | |||
| 33 | 2 | 232 | if(artist.Match(KOff) == KErrNotFound) | |
| 233 | { | |||
| 234 | result = QString::fromUtf16( artist.Ptr(), artist.Length()); | |||
| 235 | } | |||
| 35 | 236 | return result; | ||
| 237 | } | |||
| 238 | ||||
| Top | ||||
| 35 | 0 | 239 | QString referenceMusicAlbum(int index) | |
| 240 | { | |||
| 241 | QString result; | |||
| 242 | const TDesC& album = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].MusicAlbum)); | |||
| 33 | 2 | 243 | if(album.Match(KOff) == KErrNotFound) | |
| 244 | { | |||
| 245 | result = QString::fromUtf16( album.Ptr(), album.Length() ); | |||
| 246 | } | |||
| 35 | 247 | return result; | ||
| 248 | } | |||
| 249 | ||||
| Top | ||||
| 0 | 0 | - | 250 | QString referenceMusicAlbumArtFileName(int index) |
| 251 | { | |||
| 252 | QString result; | |||
| 253 | const TDesC& musicAlbumArtFileName = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].MusicAlbumArtFileName)); | |||
| 0 | 0 | - | 254 | if(musicAlbumArtFileName.Match(KOff) == KErrNotFound) |
| 255 | { | |||
| 256 | result = QString::fromUtf16( musicAlbumArtFileName.Ptr(), musicAlbumArtFileName.Length() ); | |||
| 257 | } | |||
| 0 | - | 258 | return result; | |
| 259 | } | |||
| 260 | ||||
| Top | ||||
| 35 | 0 | 261 | QString referenceComposer(int index) | |
| 262 | { | |||
| 263 | QString result; | |||
| 264 | const TDesC& composer = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].Composer)); | |||
| 33 | 2 | 265 | if(composer.Match(KOff) == KErrNotFound) | |
| 266 | { | |||
| 267 | result = QString::fromUtf16( composer.Ptr(), composer.Length() ); | |||
| 268 | } | |||
| 35 | 269 | return result; | ||
| 270 | } | |||
| 271 | ||||
| Top | ||||
| 35 | 0 | 272 | int referenceYear(int index) | |
| 273 | { | |||
| 274 | return (KAllSongsTestData[index].Year >= 0) ? KAllSongsTestData[index].Year : 0; | |||
| 32 | 3 | 274 | ternary-?: ( KAllSongsTestData [ index ] . Yea.. | |
| 35 | 274 | return ( KAllSongsTestData [ index ] . Year >=.. | ||
| 275 | } | |||
| 276 | ||||
| Top | ||||
| 35 | 0 | 277 | QString referenceMusicAlbumTrack(int index) | |
| 278 | { | |||
| 279 | QString result; | |||
| 280 | const TDesC& musicAlbumTrack = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].MusicAlbumTrack)); | |||
| 33 | 2 | 281 | if(musicAlbumTrack.Match(KOff) == KErrNotFound) | |
| 282 | { | |||
| 283 | result = QString::fromUtf16( musicAlbumTrack.Ptr(), musicAlbumTrack.Length() ); | |||
| 284 | } | |||
| 35 | 285 | return result; | ||
| 286 | } | |||
| 287 | ||||
| Top | ||||
| 35 | 0 | 288 | QString referenceMusicGenre(int index) | |
| 289 | { | |||
| 290 | QString result; | |||
| 291 | const TDesC& musicGenre = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].MusicGenre)); | |||
| 33 | 2 | 292 | if(musicGenre.Match(KOff) == KErrNotFound) | |
| 293 | { | |||
| 294 | result = QString::fromUtf16( musicGenre.Ptr(), musicGenre.Length() ); | |||
| 295 | } | |||
| 35 | 296 | return result; | ||
| 297 | } | |||
| 298 | ||||
| Top | ||||
| 0 | 0 | - | 299 | QString referenceMusicUri(int index) |
| 300 | { | |||
| 301 | QString result; | |||
| 302 | const TDesC& musicUri = TPtrC(reinterpret_cast<const TUint16*>(KAllSongsTestData[index].MusicUri)); | |||
| 0 | 0 | - | 303 | if(musicUri.Match(KOff) == KErrNotFound) |
| 304 | { | |||
| 305 | result = QString::fromUtf16( musicUri.Ptr(), musicUri.Length() ); | |||
| 306 | } | |||
| 0 | - | 307 | return result; | |
| 308 | } | |||
| 309 | ||||
| 310 | /*! | |||
| 311 | Make our test case a stand-alone executable that runs all the test functions. | |||
| 312 | */ | |||
| Top | ||||
| 1 | 0 | 313 | int main(int argc, char *argv[]) | |
| 314 | { | |||
| 315 | HbApplication app(argc, argv); | |||
| 316 | HbMainWindow window; | |||
| 317 | ||||
| 318 | TestMpMpxDetailsFrameworkWrapper tv; | |||
| 319 | ||||
| 320 | char *pass[3]; | |||
| 321 | pass[0] = argv[0]; | |||
| 322 | pass[1] = "-o"; | |||
| 323 | pass[2] = "c:\\data\\unittest_mpmpxdetailsframeworkwrapper.txt"; | |||
| 324 | ||||
| 325 | int res = QTest::qExec(&tv, 3, pass); | |||
| 326 | ||||
| 1 | 327 | return res; | ||
| 328 | } | |||
| 329 | ||||
| Top | ||||
| 1 | 1 | 330 | TestMpMpxDetailsFrameworkWrapper::TestMpMpxDetailsFrameworkWrapper() | |
| 331 | : mTest(0), | |||
| 332 | iMediaTestData(0), | |||
| 333 | mSongDetailInfoChanged(false), | |||
| 334 | mPlaybackInfoChanged(false) | |||
| 335 | { | |||
| 336 | } | |||
| 337 | ||||
| Top | ||||
| 1 | 1 | 338 | TestMpMpxDetailsFrameworkWrapper::~TestMpMpxDetailsFrameworkWrapper() | |
| 339 | { | |||
| 340 | delete mTest; | |||
| 341 | } | |||
| 342 | ||||
| 343 | /*! | |||
| 344 | Called before the first testfunction is executed. | |||
| 345 | */ | |||
| Top | ||||
| 1 | 1 | 346 | void TestMpMpxDetailsFrameworkWrapper::initTestCase() | |
| 347 | { | |||
| 348 | } | |||
| 349 | ||||
| 350 | /*! | |||
| 351 | Called after the last testfunction was executed. | |||
| 352 | */ | |||
| Top | ||||
| 1 | 1 | 353 | void TestMpMpxDetailsFrameworkWrapper::cleanupTestCase() | |
| 354 | { | |||
| 355 | } | |||
| 356 | ||||
| 357 | /*! | |||
| 358 | Called before each testfunction is executed. | |||
| 359 | */ | |||
| Top | ||||
| 45 | 45 | 360 | void TestMpMpxDetailsFrameworkWrapper::init() | |
| 361 | { | |||
| 362 | User::__DbgMarkStart(RHeap::EUser); | |||
| 363 | TInt freeCount(0); | |||
| 364 | mAllocCells = User::CountAllocCells(freeCount); | |||
| 365 | TRACE3("TestMpMpxDetailsFrameworkWrapper::init() -- allocCount: %d, freeCount: %d", | |||
| 365 | while ( 0 ) | |||
| 366 | mAllocCells, freeCount ); | |||
| 367 | ||||
| 368 | mTest = new MpMpxDetailsFrameworkWrapper( TUid::Uid( MpCommon::KMusicPlayerUid ) ); | |||
| 369 | mTestPrivate = mTest->d_ptr; | |||
| 370 | } | |||
| 371 | ||||
| 372 | /*! | |||
| 373 | Called after every testfunction. | |||
| 374 | */ | |||
| Top | ||||
| 45 | 45 | 375 | void TestMpMpxDetailsFrameworkWrapper::cleanup() | |
| 376 | { | |||
| 377 | delete mTest; | |||
| 378 | mTest = 0; | |||
| 379 | mTestPrivate = 0; | |||
| 380 | ||||
| 381 | TInt freeCount(0); | |||
| 382 | TInt allocCount = User::CountAllocCells(freeCount); | |||
| 383 | TRACE3( "TestMpMpxDetailsFrameworkWrapper::cleanup() -- allocCount: %d, freeCount: %d", | |||
| 383 | while ( 0 ) | |||
| 384 | allocCount, freeCount ); | |||
| 385 | User::__DbgMarkEnd(RHeap::EUser,0); // this should panic if leak | |||
| 386 | } | |||
| 387 | ||||
| 388 | /*! | |||
| 389 | Tests constructor. | |||
| 390 | */ | |||
| Top | ||||
| 1 | 1 | 391 | void TestMpMpxDetailsFrameworkWrapper::testConstructor() | |
| 392 | { | |||
| 393 | QVERIFY( mTestPrivate->q_ptr ); | |||
| 0 | 1 | - | 393 | if (! QTest::qVerify ( ( mTestPrivate -> q_p.. |
| 0 | - | 393 | return | |
| 393 | while ( 0 ) | |||
| 394 | QVERIFY( mTestPrivate->iPlaybackUtility ); | |||
| 0 | 1 | - | 394 | if (! QTest::qVerify ( ( mTestPrivate -> iPl.. |
| 0 | - | 394 | return | |
| 394 | while ( 0 ) | |||
| 395 | QVERIFY( mTestPrivate->iSongData ); | |||
| 0 | 1 | - | 395 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 395 | return | |
| 395 | while ( 0 ) | |||
| 396 | // TODO: test observer? | |||
| 397 | } | |||
| 398 | ||||
| 399 | /*! | |||
| 400 | Tests playbackData | |||
| 401 | */ | |||
| Top | ||||
| 1 | 1 | 402 | void TestMpMpxDetailsFrameworkWrapper::testSongData() | |
| 403 | { | |||
| 404 | QCOMPARE(mTestPrivate->iSongData, mTest->songData()); | |||
| 0 | 1 | - | 404 | if (! QTest::qCompare ( mTestPrivate -> iSon.. |
| 0 | - | 404 | return | |
| 404 | while ( 0 ) | |||
| 405 | } | |||
| 406 | ||||
| Top | ||||
| 1 | 1 | 407 | void TestMpMpxDetailsFrameworkWrapper::testHandleProperty() | |
| 408 | { | |||
| 409 | // dummy call just to get coverage up. Empty imp in function under test | |||
| 410 | mTestPrivate->HandlePropertyL(EPbPropertyVolume, 0, 0); | |||
| 411 | } | |||
| 412 | ||||
| Top | ||||
| 1 | 1 | 413 | void TestMpMpxDetailsFrameworkWrapper::testHandleSubPlayerNames() | |
| 414 | { | |||
| 415 | // dummy call just to get coverage up. Empty imp in function under test | |||
| 416 | mTestPrivate->HandleSubPlayerNamesL(TUid::Null(), 0, 0, 0); | |||
| 417 | } | |||
| 418 | ||||
| 419 | /*! | |||
| 420 | Tests testHandlePlaybackMessage | |||
| 421 | */ | |||
| Top | ||||
| 1 | 1 | 422 | void TestMpMpxDetailsFrameworkWrapper::testHandlePlaybackMessage() | |
| 423 | { | |||
| 424 | RArray<TInt> supportedIds; | |||
| 425 | CleanupClosePushL( supportedIds ); | |||
| 426 | supportedIds.AppendL( KMPXMessageContentIdGeneral ); | |||
| 427 | CMPXMedia* testMessage = CMPXMedia::NewL(supportedIds.Array()); | |||
| 428 | CleanupStack::PopAndDestroy(&supportedIds); | |||
| 429 | CleanupStack::PushL(testMessage); | |||
| 430 | testMessage->SetTObjectValueL<TMPXMessageId>( KMPXMessageGeneralId, KMPXMessageGeneral); | |||
| 431 | ||||
| 432 | //Media change | |||
| 433 | testMessage->SetTObjectValueL<TInt>(KMPXMessageGeneralEvent,TMPXPlaybackMessage::EMediaChanged); | |||
| 434 | testMessage->SetTObjectValueL<TInt>(KMPXMessageGeneralType,0); | |||
| 435 | testMessage->SetTObjectValueL<TInt>(KMPXMessageGeneralData,0); | |||
| 436 | mTestPrivate->HandlePlaybackMessage(testMessage, KErrNone); | |||
| 437 | CleanupStack::PopAndDestroy(testMessage); | |||
| 438 | } | |||
| 439 | ||||
| Top | ||||
| 1 | 1 | 440 | void TestMpMpxDetailsFrameworkWrapper::verifyEmptyTestData() | |
| 441 | { | |||
| 442 | QVERIFY(mTestPrivate->iSongData->title().isEmpty()); | |||
| 0 | 1 | - | 442 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 442 | return | |
| 442 | while ( 0 ) | |||
| 443 | QVERIFY(mTestPrivate->iSongData->album().isEmpty()); | |||
| 0 | 1 | - | 443 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 443 | return | |
| 443 | while ( 0 ) | |||
| 444 | QVERIFY(mTestPrivate->iSongData->artist().isEmpty()); | |||
| 0 | 1 | - | 444 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 444 | return | |
| 444 | while ( 0 ) | |||
| 445 | QVERIFY(mTestPrivate->iSongData->comment().isEmpty()); | |||
| 0 | 1 | - | 445 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 445 | return | |
| 445 | while ( 0 ) | |||
| 446 | QVERIFY(mTestPrivate->iSongData->year().isEmpty()); | |||
| 0 | 1 | - | 446 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 446 | return | |
| 446 | while ( 0 ) | |||
| 447 | QVERIFY(mTestPrivate->iSongData->genre().isEmpty()); | |||
| 0 | 1 | - | 447 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 447 | return | |
| 447 | while ( 0 ) | |||
| 448 | QVERIFY(mTestPrivate->iSongData->composer().isEmpty()); | |||
| 0 | 1 | - | 448 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 448 | return | |
| 448 | while ( 0 ) | |||
| 449 | QVERIFY(mTestPrivate->iSongData->albumTrack().isEmpty()); | |||
| 0 | 1 | - | 449 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 449 | return | |
| 449 | while ( 0 ) | |||
| 450 | QVERIFY(mTestPrivate->iSongData->link().isEmpty()); | |||
| 0 | 1 | - | 450 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 450 | return | |
| 450 | while ( 0 ) | |||
| 451 | QVERIFY(mTestPrivate->iSongData->mimeType().isEmpty()); | |||
| 0 | 1 | - | 451 | if (! QTest::qVerify ( ( mTestPrivate -> iSo.. |
| 0 | - | 451 | return | |
| 451 | while ( 0 ) | |||
| 452 | QVERIFY(mTestPrivate->songData()->duration().isEmpty()); | |||
| 0 | 1 | - | 452 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 452 | return | |
| 452 | while ( 0 ) | |||
| 453 | QVERIFY(mTestPrivate->songData()->bitRate().isEmpty()); | |||
| 0 | 1 | - | 453 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 453 | return | |
| 453 | while ( 0 ) | |||
| 454 | QVERIFY(mTestPrivate->songData()->sampleRate().isEmpty()); | |||
| 0 | 1 | - | 454 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 454 | return | |
| 454 | while ( 0 ) | |||
| 455 | QVERIFY(mTestPrivate->songData()->copyright().isEmpty()); | |||
| 0 | 1 | - | 455 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 455 | return | |
| 455 | while ( 0 ) | |||
| 456 | QVERIFY(mTestPrivate->songData()->musicURL().isEmpty()); | |||
| 0 | 1 | - | 456 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 456 | return | |
| 456 | while ( 0 ) | |||
| 457 | } | |||
| 458 | ||||
| Top | ||||
| 35 | 35 | 459 | void TestMpMpxDetailsFrameworkWrapper::verify(int index) | |
| 460 | { | |||
| 461 | QCOMPARE(mTestPrivate->songData()->title(), referenceGeneralTitle( index )); | |||
| 0 | 35 | - | 461 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 461 | return | |
| 461 | while ( 0 ) | |||
| 462 | QCOMPARE(mTestPrivate->songData()->album(), referenceMusicAlbum( index )); | |||
| 0 | 35 | - | 462 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 462 | return | |
| 462 | while ( 0 ) | |||
| 463 | QCOMPARE(mTestPrivate->songData()->artist(), referenceMusicArtist( index )); | |||
| 0 | 35 | - | 463 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 463 | return | |
| 463 | while ( 0 ) | |||
| 464 | // TODO: how to verify albumArt ? | |||
| 465 | QCOMPARE(mTestPrivate->songData()->composer(), referenceComposer( index )); | |||
| 0 | 35 | - | 465 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 465 | return | |
| 465 | while ( 0 ) | |||
| 466 | QCOMPARE(mTestPrivate->songData()->year().toInt(), referenceYear( index )); | |||
| 0 | 35 | - | 466 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 466 | return | |
| 466 | while ( 0 ) | |||
| 467 | QCOMPARE(mTestPrivate->songData()->albumTrack(), referenceMusicAlbumTrack( index )); | |||
| 0 | 35 | - | 467 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 467 | return | |
| 467 | while ( 0 ) | |||
| 468 | QCOMPARE(mTestPrivate->songData()->genre(), referenceMusicGenre( index )); | |||
| 0 | 35 | - | 468 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 468 | return | |
| 468 | while ( 0 ) | |||
| 469 | QCOMPARE(mTestPrivate->songData()->mimeType(), referenceMimeType( index )); | |||
| 0 | 35 | - | 469 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 469 | return | |
| 469 | while ( 0 ) | |||
| 470 | QVERIFY(mTestPrivate->songData()->duration().isEmpty()); | |||
| 0 | 35 | - | 470 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 470 | return | |
| 470 | while ( 0 ) | |||
| 471 | QVERIFY(mTestPrivate->songData()->bitRate().isEmpty()); | |||
| 0 | 35 | - | 471 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 471 | return | |
| 471 | while ( 0 ) | |||
| 472 | QVERIFY(mTestPrivate->songData()->sampleRate().isEmpty()); | |||
| 0 | 35 | - | 472 | if (! QTest::qVerify ( ( mTestPrivate -> son.. |
| 0 | - | 472 | return | |
| 472 | while ( 0 ) | |||
| 473 | QCOMPARE(mTestPrivate->songData()->copyright(), referenceGeneralCopyright(index) ); | |||
| 0 | 35 | - | 473 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 473 | return | |
| 473 | while ( 0 ) | |||
| 474 | QCOMPARE(mTestPrivate->songData()->musicURL(), referenceUrl(index) ); | |||
| 0 | 35 | - | 474 | if (! QTest::qCompare ( mTestPrivate -> song.. |
| 0 | - | 474 | return | |
| 474 | while ( 0 ) | |||
| 475 | ||||
| 476 | } | |||
| 477 | ||||
| Top | ||||
| 36 | 36 | 478 | void TestMpMpxDetailsFrameworkWrapper::doTestHandleMedia(int dataIndex, TInt aResult) | |
| 479 | { | |||
| 480 | init(); | |||
| 481 | loadTestData(dataIndex); | |||
| 482 | mTestPrivate->HandleMediaL(*iMediaTestData, aResult); | |||
| 1 | 35 | 483 | if(aResult != KErrNone) | |
| 484 | { | |||
| 485 | verifyEmptyTestData(); | |||
| 486 | } | |||
| 487 | else | |||
| 488 | { | |||
| 489 | verify(dataIndex); | |||
| 490 | } | |||
| 491 | cleanup(); | |||
| 492 | } | |||
| 493 | ||||
| 494 | /* | |||
| 495 | Tests handleMedia | |||
| 496 | */ | |||
| Top | ||||
| 1 | 1 | 497 | void TestMpMpxDetailsFrameworkWrapper::testHandleMedia() | |
| 498 | { | |||
| 499 | // testing passing error code. iSongData should not be modified | |||
| 500 | // as it got constructed fresh with init(), all its string | |||
| 501 | // members must be empty | |||
| 502 | doTestHandleMedia(KTitleZeroSized, KErrGeneral); | |||
| 503 | ||||
| 504 | // Testing zero sized title | |||
| 505 | doTestHandleMedia(KTitleZeroSized, KErrNone); | |||
| 506 | ||||
| 507 | // very large title | |||
| 508 | doTestHandleMedia(KTitleVeryLarge, KErrNone); | |||
| 509 | ||||
| 510 | // Testing title field OFF | |||
| 511 | doTestHandleMedia(KTitleOff, KErrNone); | |||
| 512 | ||||
| 513 | // Testing artist empty string | |||
| 514 | doTestHandleMedia(KMusicArtistZeroSized, KErrNone); | |||
| 515 | ||||
| 516 | // Testing artist long | |||
| 517 | doTestHandleMedia(KMusicArtistLarge, KErrNone); | |||
| 518 | ||||
| 519 | // Testing artist field OFF | |||
| 520 | doTestHandleMedia(KMusicArtistOff, KErrNone); | |||
| 521 | ||||
| 522 | // Testing album zero sized | |||
| 523 | doTestHandleMedia(KAlbumZeroSized, KErrNone); | |||
| 524 | ||||
| 525 | // Testing album long | |||
| 526 | doTestHandleMedia(KAlbumLarge, KErrNone); | |||
| 527 | ||||
| 528 | // Testing album off | |||
| 529 | doTestHandleMedia(KAlbumOff, KErrNone); | |||
| 530 | ||||
| 531 | // Testing comment zero sized | |||
| 532 | doTestHandleMedia(KCommentZeroSized, KErrNone); | |||
| 533 | ||||
| 534 | // Testing comment large | |||
| 535 | doTestHandleMedia(KCommentLarge, KErrNone); | |||
| 536 | ||||
| 537 | // Testing comment OFF | |||
| 538 | doTestHandleMedia(KCommentOff, KErrNone); | |||
| 539 | ||||
| 540 | // Testing composer zero sized | |||
| 541 | doTestHandleMedia(KComposerZeroSized, KErrNone); | |||
| 542 | ||||
| 543 | // Testing composer large | |||
| 544 | doTestHandleMedia(KComposerLarge, KErrNone); | |||
| 545 | ||||
| 546 | // Testing composer OFF | |||
| 547 | doTestHandleMedia(KComposerOff, KErrNone); | |||
| 548 | ||||
| 549 | // Testing year negative | |||
| 550 | doTestHandleMedia(KYearNegative, KErrNone); | |||
| 551 | ||||
| 552 | // Testing year 0 | |||
| 553 | doTestHandleMedia(KYearZero, KErrNone); | |||
| 554 | ||||
| 555 | // Testing year + | |||
| 556 | doTestHandleMedia(KYearPositive, KErrNone); | |||
| 557 | ||||
| 558 | // Testing year OFF | |||
| 559 | doTestHandleMedia(KYearOff, KErrNone); | |||
| 560 | ||||
| 561 | // Testing album track zero sized | |||
| 562 | doTestHandleMedia(KAlbumTrackZeroSized, KErrNone); | |||
| 563 | ||||
| 564 | // Testing album track large | |||
| 565 | doTestHandleMedia(KAlbumTrackLarge, KErrNone); | |||
| 566 | ||||
| 567 | // Testing album track OFF | |||
| 568 | doTestHandleMedia(KAlbumTrackOff, KErrNone); | |||
| 569 | ||||
| 570 | // Testing genre zero sized | |||
| 571 | doTestHandleMedia(KGenreZeroSized, KErrNone); | |||
| 572 | ||||
| 573 | // Testing genre large | |||
| 574 | doTestHandleMedia(KGenreLarge, KErrNone); | |||
| 575 | ||||
| 576 | // Testing genre OFF | |||
| 577 | doTestHandleMedia(KGenreOff, KErrNone); | |||
| 578 | ||||
| 579 | // Testing all fields OFF | |||
| 580 | doTestHandleMedia(KAllFieldsOFF, KErrNone); | |||
| 581 | ||||
| 582 | // Zero sized Mime Type | |||
| 583 | doTestHandleMedia(KMimeTypeZeroSized, KErrNone); | |||
| 584 | ||||
| 585 | // audio/aac mime type | |||
| 586 | doTestHandleMedia(KMimeTypeMP3, KErrNone); | |||
| 587 | ||||
| 588 | // Damn long mime type | |||
| 589 | doTestHandleMedia(KMimeTypeLarge, KErrNone); | |||
| 590 | ||||
| 591 | // no mime type | |||
| 592 | doTestHandleMedia(KMimeTypeOff, KErrNone); | |||
| 593 | ||||
| 594 | doTestNoChange(); | |||
| 595 | ||||
| 596 | // duration | |||
| 597 | doTestHandleMedia(KDuration, KErrNone); | |||
| 598 | ||||
| 599 | // media audio bit rate | |||
| 600 | doTestHandleMedia(KMediaAudioBitrate, KErrNone); | |||
| 601 | ||||
| 602 | // audio sample rate | |||
| 603 | doTestHandleMedia(KMediaAudioSampleRate, KErrNone); | |||
| 604 | ||||
| 605 | // copyright | |||
| 606 | doTestHandleMedia(KMediaGeneralCopyright, KErrNone); | |||
| 607 | ||||
| 608 | // url | |||
| 609 | doTestHandleMedia(KMediaMusicURL, KErrNone); | |||
| 610 | ||||
| 611 | } | |||
| 612 | ||||
| Top | ||||
| 1 | 1 | 613 | void TestMpMpxDetailsFrameworkWrapper::doTestNoChange() | |
| 614 | { | |||
| 615 | init(); | |||
| 616 | mPlaybackInfoChanged = false; | |||
| 617 | loadTestData(KYearPositive); | |||
| 618 | connect( mTestPrivate->iSongData, SIGNAL( songDetailInfoChanged() ), this, SLOT( handleCommitPlaybackInfo() ) ); | |||
| 619 | mTestPrivate->HandleMediaL(*iMediaTestData, KErrNone); | |||
| 620 | QCOMPARE( mPlaybackInfoChanged, true ); | |||
| 0 | 1 | - | 620 | if (! QTest::qCompare ( mPlaybackInfoChanged.. |
| 0 | - | 620 | return | |
| 620 | while ( 0 ) | |||
| 621 | mPlaybackInfoChanged = false; | |||
| 622 | mTestPrivate->HandleMediaL(*iMediaTestData, KErrNone); | |||
| 623 | QCOMPARE( mPlaybackInfoChanged, true ); // TODO: this must be false, donno why we get songDetailInfoChanged signal | |||
| 0 | 1 | - | 623 | if (! QTest::qCompare ( mPlaybackInfoChanged.. |
| 0 | - | 623 | return | |
| 623 | while ( 0 ) | |||
| 624 | cleanup(); | |||
| 625 | } | |||
| 626 | ||||
| Top | ||||
| 3 | 3 | 627 | void TestMpMpxDetailsFrameworkWrapper::handleCommitPlaybackInfo() | |
| 628 | { | |||
| 629 | mPlaybackInfoChanged = true; | |||
| 630 | } | |||
| 631 | ||||
| 632 | /*! | |||
| 633 | Tests retrieveSong | |||
| 634 | */ | |||
| Top | ||||
| 1 | 1 | 635 | void TestMpMpxDetailsFrameworkWrapper::testRetrieveSong() | |
| 636 | { | |||
| 637 | mTest->retrieveSong(); // async | |||
| 638 | // no need to verify the data received. As we already | |||
| 639 | // tested them in testHandleMedia | |||
| 640 | } | |||
| 641 | ||||
| Top | ||||
| 0 | 0 | - | 642 | void TestMpMpxDetailsFrameworkWrapper::handleSongDetailInfoChanged() |
| 643 | { | |||
| 644 | mSongDetailInfoChanged = true; | |||
| 645 | } | |||
| 646 | ||||
| 647 | /*! | |||
| 648 | Used to load test data | |||
| 649 | */ | |||
| Top | ||||
| 37 | 37 | 650 | void TestMpMpxDetailsFrameworkWrapper::loadTestData( TInt aPos ) | |
| 651 | { | |||
| 652 | TRACE("TestMpMpxDetailsFrameworkWrapper::loadTestData entry"); | |||
| 652 | while ( 0 ) | |||
| 36 | 1 | 653 | if( iMediaTestData ){ | |
| 654 | delete iMediaTestData; | |||
| 655 | iMediaTestData=0; | |||
| 656 | } | |||
| 657 | RArray<TInt> supportedIds; | |||
| 658 | CleanupClosePushL( supportedIds ); | |||
| 659 | supportedIds.AppendL( KMPXMediaIdMusic ); | |||
| 660 | supportedIds.AppendL( KMPXMediaIdGeneral ); | |||
| 661 | iMediaTestData = CMPXMedia::NewL( supportedIds.Array() ); | |||
| 662 | CleanupStack::PopAndDestroy( &supportedIds ); | |||
| 663 | ||||
| 664 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Loading %d.th data entry", aPos); | |||
| 664 | while ( 0 ) | |||
| 665 | TPtrC title( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].GeneralTitle ) ); | |||
| 35 | 2 | 666 | if(title.Match(KOff) == KErrNotFound) { | |
| 667 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding title: %S to iMediaTestData", &title); | |||
| 667 | while ( 0 ) | |||
| 668 | iMediaTestData->SetTextValueL( KMPXMediaGeneralTitle, title ); | |||
| 669 | } | |||
| 670 | ||||
| 671 | TPtrC artist( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].MusicArtist ) ); | |||
| 35 | 2 | 672 | if(artist.Match(KOff) == KErrNotFound) { | |
| 673 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding artist: %S to iMediaTestData", &artist); | |||
| 673 | while ( 0 ) | |||
| 674 | iMediaTestData->SetTextValueL( KMPXMediaMusicArtist, artist ); | |||
| 675 | } | |||
| 676 | ||||
| 677 | TPtrC musicAlbum( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].MusicAlbum ) ); | |||
| 35 | 2 | 678 | if(musicAlbum.Match(KOff) == KErrNotFound) { | |
| 679 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding musicAlbum: %S to iMediaTestData", &musicAlbum); | |||
| 679 | while ( 0 ) | |||
| 680 | iMediaTestData->SetTextValueL( KMPXMediaMusicAlbum, musicAlbum ); | |||
| 681 | } | |||
| 682 | ||||
| 683 | TPtrC musicAlbumArtFileName( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].MusicAlbumArtFileName ) ); | |||
| 36 | 1 | 684 | if(musicAlbumArtFileName.Match(KOff) == KErrNotFound) { | |
| 685 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding musicAlbumArtFileName: %S to iMediaTestData", &musicAlbumArtFileName); | |||
| 685 | while ( 0 ) | |||
| 686 | iMediaTestData->SetTextValueL( KMPXMediaMusicAlbumArtFileName, musicAlbumArtFileName ); | |||
| 687 | } | |||
| 688 | ||||
| 689 | TPtrC composer( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].Composer ) ); | |||
| 35 | 2 | 690 | if(composer.Match(KOff) == KErrNotFound) { | |
| 691 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding composer: %S to iMediaTestData", &composer); | |||
| 691 | while ( 0 ) | |||
| 692 | iMediaTestData->SetTextValueL( KMPXMediaMusicComposer, composer); | |||
| 693 | } | |||
| 694 | ||||
| 35 | 2 | 695 | if(KAllSongsTestData[aPos].Year != -1) { | |
| 696 | TDateTime date_time; | |||
| 697 | date_time.SetYear(KAllSongsTestData[aPos].Year); | |||
| 698 | date_time.SetMonth(EJanuary); | |||
| 699 | date_time.SetDay(1); | |||
| 700 | date_time.SetHour(0); | |||
| 701 | date_time.SetMinute(0); | |||
| 702 | date_time.SetSecond(0); | |||
| 703 | date_time.SetMicroSecond(0); | |||
| 704 | TTime date(date_time); | |||
| 705 | TRACE3("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding year: %d in %LD to iMediaTestData", KAllSongsTestData[aPos].Year, date.Int64()); | |||
| 705 | while ( 0 ) | |||
| 706 | TRACE3("TestMpMpxDetailsFrameworkWrapper::loadTestData Is year %d equal to %d", KAllSongsTestData[aPos].Year, date.DateTime().Year()); | |||
| 706 | while ( 0 ) | |||
| 707 | iMediaTestData->SetTObjectValueL<TInt64>( KMPXMediaMusicYear, date.Int64() ); | |||
| 708 | } | |||
| 709 | ||||
| 710 | TPtrC musicAlbumTrack( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].MusicAlbumTrack ) ); | |||
| 35 | 2 | 711 | if(musicAlbumTrack.Match(KOff) == KErrNotFound) { | |
| 712 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding musicAlbumTrack: %S to iMediaTestData", &musicAlbumTrack); | |||
| 712 | while ( 0 ) | |||
| 713 | iMediaTestData->SetTextValueL( KMPXMediaMusicAlbumTrack, musicAlbumTrack); | |||
| 714 | } | |||
| 715 | ||||
| 716 | TPtrC genre( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].MusicGenre ) ); | |||
| 35 | 2 | 717 | if(genre.Match(KOff) == KErrNotFound) { | |
| 718 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding genre: %S to iMediaTestData", &genre); | |||
| 718 | while ( 0 ) | |||
| 719 | iMediaTestData->SetTextValueL( KMPXMediaMusicGenre, genre); | |||
| 720 | } | |||
| 721 | ||||
| 722 | TPtrC musicUri( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].MusicUri ) ); | |||
| 36 | 1 | 723 | if(musicUri.Match(KOff) == KErrNotFound) { | |
| 724 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding musicUri: %S to iMediaTestData", &musicUri); | |||
| 724 | while ( 0 ) | |||
| 725 | iMediaTestData->SetTextValueL( KMPXMediaGeneralUri, musicUri); | |||
| 726 | } | |||
| 727 | ||||
| 728 | TPtrC mimeType( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].MimeType ) ); | |||
| 8 | 29 | 729 | if(mimeType.Match(KOff) == KErrNotFound) { | |
| 730 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding mimeType: %S to iMediaTestData", &mimeType); | |||
| 730 | while ( 0 ) | |||
| 731 | iMediaTestData->SetTextValueL( KMPXMediaGeneralMimeType, mimeType); | |||
| 732 | } | |||
| 733 | ||||
| 2 | 35 | 734 | if(KAllSongsTestData[aPos].Duration != -1) { | |
| 735 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding duration: %d to iMediaTestData", KAllSongsTestData[aPos].Duration ); | |||
| 735 | while ( 0 ) | |||
| 736 | iMediaTestData->SetTObjectValueL<TInt>( KMPXMediaGeneralDuration, KAllSongsTestData[aPos].Duration ); | |||
| 737 | } | |||
| 738 | ||||
| 1 | 36 | 739 | if(KAllSongsTestData[aPos].MediaAudioBitRate != -1) { | |
| 740 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding MediaAudioBitRate: %d to iMediaTestData", KAllSongsTestData[aPos].MediaAudioBitRate ); | |||
| 740 | while ( 0 ) | |||
| 741 | iMediaTestData->SetTObjectValueL<TInt>( KMPXMediaAudioBitrate, KAllSongsTestData[aPos].MediaAudioBitRate ); | |||
| 742 | } | |||
| 743 | ||||
| 3 | 34 | 744 | if(KAllSongsTestData[aPos].MediaAudioSampleRate != -1) { | |
| 745 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding MediaAudioBitRate: %d to iMediaTestData", KAllSongsTestData[aPos].MediaAudioSampleRate ); | |||
| 745 | while ( 0 ) | |||
| 746 | iMediaTestData->SetTObjectValueL<TInt>( KMPXMediaAudioSamplerate, KAllSongsTestData[aPos].MediaAudioSampleRate ); | |||
| 747 | } | |||
| 748 | ||||
| 749 | TPtrC copyright( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].Copyright ) ); | |||
| 1 | 36 | 750 | if(copyright.Match(KOff) == KErrNotFound) { | |
| 751 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding copyright: %S to iMediaTestData", ©right); | |||
| 751 | while ( 0 ) | |||
| 752 | iMediaTestData->SetTextValueL( KMPXMediaGeneralCopyright, copyright); | |||
| 753 | } | |||
| 754 | ||||
| 755 | TPtrC url( reinterpret_cast<const TUint16*>( KAllSongsTestData[aPos].Url ) ); | |||
| 1 | 36 | 756 | if(url.Match(KOff) == KErrNotFound) { | |
| 757 | TRACE2("TestMpMpxDetailsFrameworkWrapper::loadTestData Adding url: %S to iMediaTestData", &url); | |||
| 757 | while ( 0 ) | |||
| 758 | iMediaTestData->SetTextValueL( KMPXMediaMusicURL, url ); | |||
| 759 | } | |||
| 760 | ||||
| 761 | TRACE("TestMpMpxDetailsFrameworkWrapper::loadTestData exit"); | |||
| 761 | while ( 0 ) | |||
| 762 | } | |||
| 763 | ||||
| 764 | //end of file | |||
| ***TER 62% (128/206) of SOURCE FILE unittest_mpmpxdetailsframeworkwrapper.cpp | ||||