sl@0: sl@0: // Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // sl@0: sl@0: sl@0: // EPOC includes sl@0: #include sl@0: sl@0: // Test system includes sl@0: #include sl@0: sl@0: #include "TSU_MMFMIDICLNT.h" sl@0: #include "TS_MMFMIDICLNTsuite.h" sl@0: #include "TestMidiClientUtility.h" sl@0: #include "TestStepMidiClntAllocFailNew.h" sl@0: #include "TestStepMidiClntAllocFailOpen.h" sl@0: #include "TestMidiClientSharedHeap.h" sl@0: sl@0: sl@0: #define KFileNameKey _S("MidiDrmContent") sl@0: #define KUnlimitPlayContent _S("midiIdPlayUnlim") sl@0: sl@0: const TDrmTestParams KDrm0321 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: KUnlimitPlayContent, //iUniqueId; sl@0: ContentAccess::EUnknown, //iIntent; sl@0: KErrCANoPermission, //iExpectedError; sl@0: TDrmTestParams::EFileName // iSourceType; sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm0322 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: _S("midiIdNoRights"), //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrCANoRights, //iExpectedError; sl@0: TDrmTestParams::EFileName // iSourceType; sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm0323 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: _S("midiIdPlay01"), //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrCANoPermission, //iExpectedError; sl@0: TDrmTestParams::EFileName, // iSourceType; sl@0: 2 // iNumPlayLoops sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm0324 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: _S("Wrong Id"), //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrNotFound, //iExpectedError; sl@0: TDrmTestParams::EFileName // iSourceType; sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm1011 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: KUnlimitPlayContent, //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrNone, //iExpectedError; sl@0: TDrmTestParams::EFileName // iSourceType; sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm1012 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: KUnlimitPlayContent, //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrNone, //iExpectedError; sl@0: TDrmTestParams::EFileHandle // iSourceType; sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm1013 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: KUnlimitPlayContent, //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrNone, //iExpectedError; sl@0: TDrmTestParams::EFileName // iSourceType; sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm1014 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: KUnlimitPlayContent, //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrNone, //iExpectedError; sl@0: TDrmTestParams::EFileName, // iSourceType; sl@0: 1, // iNumPlayLoops sl@0: TDrmTestParams::EAlloc // iTestMode sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm1015 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: KUnlimitPlayContent, //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrNone, //iExpectedError; sl@0: TDrmTestParams::EFileHandle,// iSourceType; sl@0: 1, // iNumPlayLoops sl@0: TDrmTestParams::EAlloc // iTestMode sl@0: }; sl@0: sl@0: const TDrmTestParams KDrm1016 = sl@0: { sl@0: KFileNameKey, //iFileNameKey sl@0: KUnlimitPlayContent, //iUniqueId; sl@0: ContentAccess::EPlay, //iIntent; sl@0: KErrNone, //iExpectedError; sl@0: TDrmTestParams::EFileHandle,// iSourceType; sl@0: 1 // iNumPlayLoops sl@0: }; sl@0: sl@0: sl@0: /** sl@0: * NewTestSuite is exported at ordinal 1 sl@0: * this provides the interface to allow schedule test sl@0: * to create instances of this test suite sl@0: */ sl@0: EXPORT_C CTestSuite* NewTestSuiteL() sl@0: { sl@0: CTestMmfMidiClntSuite* result = new (ELeave) CTestMmfMidiClntSuite; sl@0: CleanupStack::PushL(result); sl@0: result->ConstructL(); sl@0: CleanupStack::Pop(); // result sl@0: return result; sl@0: } sl@0: sl@0: /** sl@0: * destructor sl@0: */ sl@0: CTestMmfMidiClntSuite::~CTestMmfMidiClntSuite() sl@0: { sl@0: } sl@0: sl@0: /** sl@0: * make a version string available for test system sl@0: * @return version string sl@0: */ sl@0: TPtrC CTestMmfMidiClntSuite::GetVersion() sl@0: { sl@0: _LIT(KTxtVersion,"1.0"); sl@0: return KTxtVersion(); sl@0: } sl@0: sl@0: /** sl@0: * Constructor for test suite sl@0: * this creates all the test steps and sl@0: * stores them inside CTestMmfMidiClntSuite sl@0: */ sl@0: void CTestMmfMidiClntSuite::InitialiseL() sl@0: { sl@0: // store the name of this test suite sl@0: iSuiteName = _L("MMF_MIDICLNT"); sl@0: sl@0: //TTimeIntervalMicroSeconds position = TInt64(0); sl@0: sl@0: _LIT(KSectionOne, "SectionOne"); sl@0: _LIT(KSectionTwo, "SectionTwo"); sl@0: _LIT(KFilename, "filename"); sl@0: sl@0: // POSITIVE TEST sl@0: sl@0: //Return the state sl@0: AddTestStepL( CTestMidiClntGetState::NewL( _L("MM-MMF-MIDICLNT-U-0016"), KSectionOne, KFilename, ETestValid, ETrue)); sl@0: sl@0: //Open 'maintest.wav' sl@0: AddTestStepL( CTestMidiClntOpenFile::NewL( _L("MM-MMF-MIDICLNT-U-0018"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Open Descriptor sl@0: AddTestStepL( CTestMidiClntOpenDes::NewL( _L("MM-MMF-MIDICLNT-U-0020"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Open valid URL - www.yahoo.co.uk sl@0: AddTestStepL( CTestMidiClntOpenUrl::NewL( _L("MM-MMF-MIDICLNT-U-0023"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Closes any currently open resource and deletes any plugins in use sl@0: AddTestStepL( CTestMidiClntClose::NewL( _L("MM-MMF-MIDICLNT-U-0027"))); sl@0: sl@0: //Initialize or resume playback sl@0: AddTestStepL( CTestMidiClntPlay::NewL( _L("MM-MMF-MIDICLNT-U-0029"), ETestValid)); sl@0: sl@0: //Stops playback of a resource sl@0: AddTestStepL( CTestMidiClntStop::NewL( _L("MM-MMF-MIDICLNT-U-0035"), ETestValid)); sl@0: sl@0: //Play a single note sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0038"), ETestValid)); sl@0: sl@0: //Stop all notes sl@0: AddTestStepL( CTestMidiClntStopNotes::NewL( _L("MM-MMF-MIDICLNT-U-0047"), ETestValid)); sl@0: sl@0: //Commence playback of a note sl@0: AddTestStepL( CTestMidiClntNoteOn::NewL( _L("MM-MMF-MIDICLNT-U-0050"), ETestValid)); sl@0: sl@0: //Terminate playback of a note sl@0: AddTestStepL( CTestMidiClntNoteOff::NewL( _L("MM-MMF-MIDICLNT-U-0056"), ETestValid)); sl@0: sl@0: //Returns the current tempo sl@0: AddTestStepL( CTestMidiClntTempoMicroBeatsPerMinute::NewL( _L("MM-MMF-MIDICLNT-U-0060"), ETestValid)); sl@0: sl@0: //Sets the tempo sl@0: AddTestStepL( CTestMidiClntSetTempo::NewL( _L("MM-MMF-MIDICLNT-U-0062"), ETestValid)); sl@0: sl@0: //Returns the pitch shift sl@0: AddTestStepL( CTestMidiClntGetPitchTranspositionCents::NewL( _L("MM-MMF-MIDICLNT-U-0066"),ETestValid)); sl@0: sl@0: //Set the pitch shift sl@0: AddTestStepL( CTestMidiClntSetPitchTransposition::NewL( _L("MM-MMF-MIDICLNT-U-0072"),ETestValid)); sl@0: sl@0: //Returns the length of midi resource sl@0: AddTestStepL( CTestMidiClntDurationMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0076"), ETestValid)); sl@0: sl@0: //The length of midi resource by Beats sl@0: AddTestStepL( CTestMidiClntDurationMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0078"), ETestValid)); sl@0: sl@0: //Number of tracks sl@0: AddTestStepL( CTestMidiClntNumTracks::NewL( _L("MM-MMF-MIDICLNT-U-0080"), ETestValid)); sl@0: sl@0: //Mutes a particular track sl@0: AddTestStepL( CTestMidiClntSetTrackMute::NewL( _L("MM-MMF-MIDICLNT-U-0082"), ETestValid)); sl@0: sl@0: //Channels Supported sl@0: AddTestStepL( CTestChannelsSupported::NewL( _L("MM-MMF-MIDICLNT-U-0085"), ETestValid)); sl@0: sl@0: //Queries the type sl@0: AddTestStepL( CTestMidiClntMimeType::NewL( _L("MM-MMF-MIDICLNT-U-0087"), ETestValid)); sl@0: sl@0: //Current temporal position sl@0: AddTestStepL( CTestMidiClntReturnPositionMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0092"), ETestValid)); sl@0: sl@0: //Change the position sl@0: AddTestStepL( CTestMidiClntSetPositionMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0095"), ETestValid)); sl@0: sl@0: //Current metrical position sl@0: AddTestStepL( CTestMidiClntReturnsPositionMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0099"), ETestValid)); sl@0: sl@0: //Change the metrical position sl@0: AddTestStepL( CTestMidiClntSetPositionMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0102"), ETestValid)); sl@0: sl@0: //Sets the frequency sl@0: AddTestStepL( CTestSetSyncUpdateCallbackInterval::NewL( _L("MM-MMF-MIDICLNT-U-0106"), ETestValid)); sl@0: sl@0: //Sends a midi message sl@0: AddTestStepL( CTestSendMessage::NewL( _L("MM-MMF-MIDICLNT-U-0111"), ETestValid, _L8("MIDI Message")) ); sl@0: sl@0: //Sends a mip message sl@0: AddTestStepL( CTestSendMipMessage::NewL( _L("MM-MMF-MIDICLNT-U-0115"), ETestValid) ); sl@0: sl@0: //The number of sound banks sl@0: AddTestStepL( CTestNumberOfBanks::NewL( _L("MM-MMF-MIDICLNT-U-0121"),ETestValid)); sl@0: sl@0: //The identifier of a sound bank sl@0: AddTestStepL( CTestGetBankId::NewL( _L("MM-MMF-MIDICLNT-U-0124"),ETestValid)); sl@0: sl@0: //Loads a custom sound bank sl@0: AddTestStepL( CTestLoadCustomBank::NewL( _L("MM-MMF-MIDICLNT-U-0129"),ETestValid)); sl@0: sl@0: //Removes a custom sound bank sl@0: // AddTestStepL( CTestUnloadCustomBank::NewL( _L("MM-MMF-MIDICLNT-U-0133"),ETestValid)); sl@0: sl@0: //Unload all custom banks -- DEFERED (No suitable Midi Controller) sl@0: // AddTestStepL( CTestUnloadAllCustomBanks::NewL( _L("MM-MMF-MIDICLNT-U-0135"),ETestValid)); sl@0: sl@0: //Gets the number of instruments sl@0: AddTestStepL( CTestNumberOfInstruments::NewL( _L("MM-MMF-MIDICLNT-U-0137"),ETestValid)); sl@0: sl@0: //Gets the identifier of a instrument sl@0: AddTestStepL( CTestGetInstrumentId::NewL( _L("MM-MMF-MIDICLNT-U-0141"),ETestValid)); sl@0: sl@0: //Gets the name of a instrument sl@0: AddTestStepL( CTestReturnsInstrumentName::NewL( _L("MM-MMF-MIDICLNT-U-0146"),ETestValid)); sl@0: sl@0: //Sets a channel to use the instrument sl@0: AddTestStepL( CTestSetInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0148"),ETestValid)); sl@0: sl@0: //Loads a custom Instrument sl@0: AddTestStepL( CTestLoadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0151"),ETestValid)); sl@0: sl@0: //Removes a instrument sl@0: AddTestStepL( CTestUnloadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0155"),ETestValid )); sl@0: sl@0: //Queries the name of a particular percussion key sl@0: AddTestStepL( CTestPercussionKeyName::NewL( _L("MM-MMF-MIDICLNT-U-0159"),ETestValid)); sl@0: sl@0: //Stop Time sl@0: AddTestStepL( CTestStopTime::NewL( _L("MM-MMF-MIDICLNT-U-0161"),ETestValid)); sl@0: sl@0: //Set Stop Time sl@0: AddTestStepL( CTestSetStopTime::NewL( _L("MM-MMF-MIDICLNT-U-0163"),ETestValid)); sl@0: sl@0: //Set the number of times to repeat sl@0: AddTestStepL( CTestSetRepeats::NewL( _L("MM-MMF-MIDICLNT-U-0168"),ETestValid)); sl@0: sl@0: //Gets the polyphony sl@0: AddTestStepL( CTestPolyphony::NewL( _L("MM-MMF-MIDICLNT-U-0173"),ETestValid)); sl@0: sl@0: //volume setting of a channel sl@0: AddTestStepL( CTestReturnChannelVolume::NewL( _L("MM-MMF-MIDICLNT-U-0174"), ETestValid)); sl@0: sl@0: //Set the volume of a channel sl@0: AddTestStepL( CTestSetChannelVolume::NewL( _L("MM-MMF-MIDICLNT-U-0177"), ETestValid)); sl@0: sl@0: //Set the muting state of a channel sl@0: AddTestStepL( CTestSetChannelMute::NewL( _L("MM-MMF-MIDICLNT-U-0181"), ETestValid)); sl@0: sl@0: //Get the overall volume of the midi client sl@0: AddTestStepL( CTestReturnVolume::NewL( _L("MM-MMF-MIDICLNT-U-0183"), ETestValid)); sl@0: sl@0: //Maximum volume setting sl@0: AddTestStepL( CTestReturnMaxVolume::NewL( _L("MM-MMF-MIDICLNT-U-0184"), ETestValid)); sl@0: sl@0: //Set the overall volume sl@0: AddTestStepL( CTestSetVolume::NewL( _L("MM-MMF-MIDICLNT-U-0185"), ETestValid)); sl@0: sl@0: //Length of time over which the volume is faded up sl@0: AddTestStepL( CTestSetVolumeRamp::NewL( _L("MM-MMF-MIDICLNT-U-0188"), ETestValid)); sl@0: sl@0: //Get the stereo balance value sl@0: AddTestStepL( CTestGetBalance::NewL( _L("MM-MMF-MIDICLNT-U-0191"), ETestValid)); sl@0: sl@0: //Set the stereo balance value sl@0: AddTestStepL( CTestSetBalance::NewL( _L("MM-MMF-MIDICLNT-U-0193"), ETestValid)); sl@0: sl@0: //Set the priority sl@0: AddTestStepL( CTestSetPriority::NewL( _L("MM-MMF-MIDICLNT-U-0197"), ETestValid)); sl@0: sl@0: //Get the number of meta data entries sl@0: AddTestStepL( CTestNumberOfXmfMetaDataEntries::NewL( _L("MM-MMF-MIDICLNT-U-0199"), ETestValid)); sl@0: sl@0: //Retrieve the specified meta data entry sl@0: // AddTestStepL( CTestGetXmfMetaDataEntry::NewL( _L("MM-MMF-MIDICLNT-U-0201"), ETestValid)); sl@0: sl@0: //Returns the current playback rate sl@0: AddTestStepL( CTestMidiClntReturnPlaybackRate::NewL( _L("MM-MMF-MIDICLNT-U-0210"), ETestValid)); sl@0: sl@0: //Sets the playback rate sl@0: AddTestStepL( CTestMidiClntSetPlaybackRate::NewL( _L("MM-MMF-MIDICLNT-U-0211"), ETestValid)); sl@0: sl@0: //Sets the playback rate [No Resource] - DEFERRED sl@0: //AddTestStepL( CTestMidiClntSetPlaybackRate::NewL( _L("MM-MMF-MIDICLNT-U-0226"), ETestNoResource)); sl@0: sl@0: //Sets the playback rate [Out of range high] - DEFERRED sl@0: //AddTestStepL( CTestMidiClntSetPlaybackRate::NewL( _L("MM-MMF-MIDICLNT-U-0227"), ETestOutOfRangeHigh)); sl@0: sl@0: //Sets the playback rate [Out of range low] - DEFERRED sl@0: //AddTestStepL( CTestMidiClntSetPlaybackRate::NewL( _L("MM-MMF-MIDICLNT-U-0228"), ETestOutOfRangeLow)); sl@0: sl@0: //Query the maximum playback rate sl@0: AddTestStepL( CTestMidiClntReturnMaxPlayRate::NewL( _L("MM-MMF-MIDICLNT-U-0213"), ETestValid)); sl@0: sl@0: //Query the minimum playback rate sl@0: AddTestStepL( CTestMidiClntReturnMinPlayRate::NewL( _L("MM-MMF-MIDICLNT-U-0214"), ETestValid)); sl@0: sl@0: //Plugin required to do negative tests// sl@0: //Query the instrument assigned to a specified channel. sl@0: AddTestStepL( CTestGetInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0215"), ETestValid)); sl@0: sl@0: //Loads an individual instrument from descriptor sl@0: AddTestStepL( CTestLoadCustomInstrumentData::NewL( _L("MM-MMF-MIDICLNT-U-0219"), ETestValid)); sl@0: sl@0: // Returns the maximum volume setting sl@0: AddTestStepL( CTestMaxChannelVolume::NewL( _L("MM-MMF-MIDICLNT-U-0225"), ETestValid)); sl@0: sl@0: // Checks that the client can hold more than 10 events in its queue sl@0: AddTestStepL( CTestMidiClntThirteenMidiEvents::NewL( _L("MM-MMF-MIDICLNT-U-0301"), ETestValid)); sl@0: sl@0: // Checks that the transtion from EMidiStateClosedDisengaged to EMidiStateClosedEngaged is made without any problems. sl@0: AddTestStepL( CTestTrasitionFromEClosedToEClosedEngaged::NewL( _L("MM-MMF-MIDICLNT-U-0302"), ETestValid)); sl@0: sl@0: // Checks that the transtion from EMidiStateClosedDisengaged to ECOpenEngaged is made without any problems. sl@0: AddTestStepL( CTestTrasitionFromEClosedToEOpenEngaged::NewL( _L("MM-MMF-MIDICLNT-U-0303"), ETestValid)); sl@0: sl@0: // Checks that the transtion from EMidiStateOpenEngaged to EMidiStateClosedEngaged is made without any problems. sl@0: AddTestStepL( CTestTrasitionFromEOpenEngagedToEClosedEngaged::NewL( _L("MM-MMF-MIDICLNT-U-0304"), ETestValid)); sl@0: sl@0: // Checks that the transtion from EMidiStateClosedEngaged to EMidiStateClosedDisengaged is made without any problems (using Stop()). sl@0: AddTestStepL( CTestTrasitionFromEClosedEngagedToEClosed::NewL( _L("MM-MMF-MIDICLNT-U-0305"), ETestValid)); sl@0: sl@0: AddTestStepL( CTestMidiOpenFileHandleRepeat::NewL( _L("MM-MMF-MIDICLNT-U-0306"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: // NEGATIVE TEST sl@0: sl@0: //Return the state before any initialisation has been done sl@0: // AddTestStepL( CTestMidiClntGetState::NewL( _L("MM-MMF-MIDICLNT-U-0017"), KSectionOne, KFilename, ETestNegative, ETrue)); sl@0: sl@0: //Open 'Invalid File Name' sl@0: AddTestStepL( CTestMidiClntOpenFile::NewL( _L("MM-MMF-MIDICLNT-U-0019"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Open NULL Descriptor sl@0: AddTestStepL( CTestMidiClntOpenDes::NewL( _L("MM-MMF-MIDICLNT-U-0021"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Open Invalid Data Descriptor sl@0: AddTestStepL( CTestMidiClntOpenDes::NewL( _L("MM-MMF-MIDICLNT-U-0022"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Open invalid URL - www.yahoo.coo.uuk sl@0: AddTestStepL( CTestMidiClntOpenUrl::NewL( _L("MM-MMF-MIDICLNT-U-0024"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Open invalid IAP - TInt aIapId = KUseInvalidIap sl@0: AddTestStepL( CTestMidiClntOpenUrl::NewL( _L("MM-MMF-MIDICLNT-U-0025"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Open invalid MIME type - TDesC8& = Invalid MIME Type sl@0: AddTestStepL( CTestMidiClntOpenUrl::NewL( _L("MM-MMF-MIDICLNT-U-0026"), KSectionOne, KFilename, ETrue) ); sl@0: sl@0: //Closes any currently open resource and deletes any plugins in use (No plugin available) sl@0: AddTestStepL( CTestMidiClntClose::NewL( _L("MM-MMF-MIDICLNT-U-0028"))); sl@0: sl@0: //Initiate or resume playback (No plugin available) sl@0: // AddTestStepL( CTestMidiClntPlay::NewL( _L("MM-MMF-MIDICLNT-U-0030"), ETestNoPlugin)); sl@0: sl@0: //Initiate or resume playback (Invalid System State) sl@0: // AddTestStepL( CTestMidiClntPlay::NewL( _L("MM-MMF-MIDICLNT-U-0031"), ETestInvalidState)); sl@0: sl@0: // Disabled until real MIDI controller available sl@0: //Stops playback of a resource (No Resource Is Playing) sl@0: //AddTestStepL( CTestMidiClntStop::NewL( _L("MM-MMF-MIDICLNT-U-0036"), ETestNoResource)); sl@0: sl@0: //Stops playback of a resource (No Plugin Available) sl@0: AddTestStepL( CTestMidiClntStop::NewL( _L("MM-MMF-MIDICLNT-U-0037"), ETestNoPlugin)); sl@0: sl@0: //Play a single note (Zero duration) sl@0: // AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0039"), ETestZeroDurationOutOfRange)); sl@0: sl@0: //Play a single note (Invalid Channel) sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0040"), ETestInvalidChannelOutOfRange)); sl@0: sl@0: //Play a single note (Note out of range high) sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0041"), ETestNoteHighOutOfRange)); sl@0: sl@0: //Play a single note (Note out of range low) sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0042"), ETestNoteLowOutOfRange)); sl@0: sl@0: //Play a single note (Attack out of range high) sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0043"), ETestAttackHighOutOfRange)); sl@0: sl@0: //Play a single note (Attack out of range low) sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0044"), ETestAttackLowOutOfRange)); sl@0: sl@0: //Play a single note (Release out of range high) sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0045"), ETestReleaseHighOutOfRange)); sl@0: sl@0: //Play a single note (Release out of range low) sl@0: AddTestStepL( CTestMidiClntPlayNote::NewL( _L("MM-MMF-MIDICLNT-U-0046"), ETestReleaseLowOutOfRange)); sl@0: sl@0: //Stop all notes (Invalid Channel Number) sl@0: AddTestStepL( CTestMidiClntStopNotes::NewL( _L("MM-MMF-MIDICLNT-U-0048"), ETestInvalidChannelOutOfRange)); sl@0: sl@0: //Stop all notes (No Note Available) sl@0: AddTestStepL( CTestMidiClntStopNotes::NewL( _L("MM-MMF-MIDICLNT-U-0049"), ETestNoNoteAvailable)); sl@0: sl@0: //Commence playback of a note (Invalid Channel Number) sl@0: AddTestStepL( CTestMidiClntNoteOn::NewL( _L("MM-MMF-MIDICLNT-U-0051"), ETestInvalidChannelOutOfRange)); sl@0: sl@0: //Commence playback of a note (Out of Range Low Note) sl@0: AddTestStepL( CTestMidiClntNoteOn::NewL( _L("MM-MMF-MIDICLNT-U-0052"), ETestNoteLowOutOfRange)); sl@0: sl@0: //Commence playback of a note (Out of Range High Note) sl@0: AddTestStepL( CTestMidiClntNoteOn::NewL( _L("MM-MMF-MIDICLNT-U-0053"), ETestNoteHighOutOfRange)); sl@0: sl@0: //Commence playback of a note (Out of Range Low Velocity) sl@0: AddTestStepL( CTestMidiClntNoteOn::NewL( _L("MM-MMF-MIDICLNT-U-0054"), ETestVelocityLowOutOfRange)); sl@0: sl@0: //Commence playback of a note (Out of Range High Velocity) sl@0: AddTestStepL( CTestMidiClntNoteOn::NewL( _L("MM-MMF-MIDICLNT-U-0055"), ETestVelocityHighOutOfRange)); sl@0: sl@0: //Terminate playback of a note (Invalid Channel Number) sl@0: AddTestStepL( CTestMidiClntNoteOff::NewL( _L("MM-MMF-MIDICLNT-U-0057"), ETestInvalidChannelOutOfRange)); sl@0: sl@0: //Terminate playback of a note (No Note Currently Playing) sl@0: AddTestStepL( CTestMidiClntNoteOff::NewL( _L("MM-MMF-MIDICLNT-U-0058"), ETestNoNoteAvailable)); sl@0: sl@0: //Terminate playback of a note (Selected Note / Velocity Set is different to those playing) sl@0: // AddTestStepL( CTestMidiClntNoteOff::NewL( _L("MM-MMF-MIDICLNT-U-0059"), ETestDifferentNoteVelocity)); sl@0: sl@0: //Returns the current tempo (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntTempoMicroBeatsPerMinute::NewL( _L("MM-MMF-MIDICLNT-U-0061"), ETestNoResource )); sl@0: sl@0: //Sets the tempo (Beats Out of Range Low) sl@0: AddTestStepL( CTestMidiClntSetTempo::NewL( _L("MM-MMF-MIDICLNT-U-0063"), ETestBeatsLowOutOfRange)); sl@0: sl@0: // Does not calculate errors on out of range values, all values above 0 are a pass, Invalid test sl@0: //Sets the tempo (Beats Out of Range High) sl@0: // AddTestStepL( CTestMidiClntSetTempo::NewL( _L("MM-MMF-MIDICLNT-U-0064"), ETestBeatsHighOutOfRange)); sl@0: sl@0: //Sets the tempo (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntSetTempo::NewL( _L("MM-MMF-MIDICLNT-U-0065"), ETestNoResource)); sl@0: sl@0: //Returns the pitch shift (No Resource is Open) sl@0: //AddTestStepL( CTestMidiClntGetPitchTranspositionCents::NewL( _L("MM-MMF-MIDICLNT-U-0067"),ETestNoResource )); sl@0: sl@0: //Set the pitch shift (No Resource is Open) sl@0: //AddTestStepL( CTestMidiClntSetPitchTransposition::NewL( _L("MM-MMF-MIDICLNT-U-0073"),ETestNoResource )); sl@0: sl@0: //Set the pitch shift (Out of Range Value High) sl@0: AddTestStepL( CTestMidiClntSetPitchTransposition::NewL( _L("MM-MMF-MIDICLNT-U-0074"),ETestOutOfRangeHigh )); sl@0: sl@0: //Set the pitch shift (Out of Range Value Low) sl@0: // AddTestStepL( CTestMidiClntSetPitchTransposition::NewL( _L("MM-MMF-MIDICLNT-U-0075"),ETestOutOfRangeLow )); sl@0: sl@0: //Returns the length of midi resource (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntDurationMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0077"), ETestNoResource)); sl@0: sl@0: //The length of midi resource by Beats (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntDurationMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0079"), ETestNoResource)); sl@0: sl@0: // Disabled until real MIDI controller available sl@0: //Number of tracks (No Resource is Open) sl@0: //AddTestStepL( CTestMidiClntNumTracks::NewL( _L("MM-MMF-MIDICLNT-U-0081"),ETestNoResource)); sl@0: sl@0: //Mutes a particular track (Invalid Track) sl@0: AddTestStepL( CTestMidiClntSetTrackMute::NewL( _L("MM-MMF-MIDICLNT-U-0083"), ETestInvalidTrack)); sl@0: sl@0: //Mutes a particular track (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntSetTrackMute::NewL( _L("MM-MMF-MIDICLNT-U-0084"), ETestNoResource)); sl@0: sl@0: // Disabled until real MIDI controller available sl@0: //Number of channels (No Resource is Open) sl@0: //AddTestStepL( CTestChannelsSupported::NewL( _L("MM-MMF-MIDICLNT-U-0086"),ETestNoResource)); sl@0: sl@0: //Queries the type (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntMimeType::NewL( _L("MM-MMF-MIDICLNT-U-0088"), ETestNoResource)); sl@0: sl@0: //Current temporal position (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntReturnPositionMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0093"), ETestNoResource)); sl@0: sl@0: //Current temporal position (Resource is not Playing) sl@0: // AddTestStepL( CTestMidiClntReturnPositionMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0094"), ETestNoResourcePlaying)); sl@0: sl@0: //Change the position (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntSetPositionMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0096"), ETestNoResource)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Change the position (Out of Range Value Low) sl@0: // AddTestStepL( CTestMidiClntSetPositionMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0097"), ETestMicrosecondsLowOutOfRange)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Change the position (Out of Range Value High) sl@0: // AddTestStepL( CTestMidiClntSetPositionMicroSeconds::NewL( _L("MM-MMF-MIDICLNT-U-0098"), ETestMicrosecondsHighOutOfRange)); sl@0: sl@0: //Current metrical position (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntReturnsPositionMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0100"), ETestNoResource)); sl@0: sl@0: //Current metrical position (Resource is not Playing) sl@0: // AddTestStepL( CTestMidiClntReturnsPositionMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0101"), ETestNoResourcePlaying)); sl@0: sl@0: //Change the metrical position (No Resource is Open) sl@0: // AddTestStepL( CTestMidiClntSetPositionMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0103"), ETestNoResource)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Change the metrical position (Out of Range Value Low) sl@0: // AddTestStepL( CTestMidiClntSetPositionMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0104"), ETestMicrobeatsLowOutOfRange)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Change the metrical position (Out of Range Value High) sl@0: // AddTestStepL( CTestMidiClntSetPositionMicroBeats::NewL( _L("MM-MMF-MIDICLNT-U-0105"), ETestMicrobeatsHighOutOfRange )); sl@0: sl@0: //Sets the frequency (Both Arguments are Set to Zero) sl@0: // AddTestStepL( CTestSetSyncUpdateCallbackInterval::NewL( _L("MM-MMF-MIDICLNT-U-0107"), ETestMicrosecondsMicrobeatsZero)); sl@0: sl@0: //Sets the frequency (Microseconds Value is Out of Range) sl@0: AddTestStepL( CTestSetSyncUpdateCallbackInterval::NewL( _L("MM-MMF-MIDICLNT-U-0108"), ETestMicrosecondsLowOutOfRange)); sl@0: sl@0: //Sets the frequency (Out of Range Interval Low) sl@0: AddTestStepL( CTestSetSyncUpdateCallbackInterval::NewL( _L("MM-MMF-MIDICLNT-U-0109"), ETestMicrobeatsLowOutOfRange)); sl@0: sl@0: // Does not calculate errors on out of range values, all values above 0 are a pass, Invalid test sl@0: //Sets the frequency (Out of Range Interval High) sl@0: // AddTestStepL( CTestSetSyncUpdateCallbackInterval::NewL( _L("MM-MMF-MIDICLNT-U-0110"), ETestMicrobeatsHighOutOfRange)); sl@0: sl@0: //Sends a midi message (Call With NULL Message) sl@0: // AddTestStepL( CTestSendMessage::NewL( _L("MM-MMF-MIDICLNT-U-0112"), ETestNullMessage, KNullDesC8) ); sl@0: sl@0: //Sends a midi message (Call With Unsupported Message) sl@0: // AddTestStepL( CTestSendMessage::NewL( _L("MM-MMF-MIDICLNT-U-0113"), ETestUnsupported, _L8("Unsupported MIDI Message")) ); sl@0: sl@0: //Sends a midi message (Call With Corrupt Message) sl@0: // AddTestStepL( CTestSendMessage::NewL( _L("MM-MMF-MIDICLNT-U-0114"), ETestCorrupt, _L8("Corrupt MIDI Message")) ); sl@0: sl@0: //Sends a mip message (Invalid Device ID) sl@0: // AddTestStepL( CTestSendMipMessage::NewL( _L("MM-MMF-MIDICLNT-U-0116"), ETestInvalidId )); sl@0: sl@0: //Sends a mip message (NULL Message) sl@0: // AddTestStepL( CTestSendMipMessage::NewL( _L("MM-MMF-MIDICLNT-U-0117"), ETestNullMessage) ); sl@0: sl@0: //Sends a mip message (Unsupported Message) sl@0: // AddTestStepL( CTestSendMipMessage::NewL( _L("MM-MMF-MIDICLNT-U-0118"), ETestUnsupported) ); sl@0: sl@0: // Duplicate requirement sl@0: //Sends a mip message (Unsupported Message) sl@0: // AddTestStepL( CTestSendMipMessage::NewL( _L("MM-MMF-MIDICLNT-U-0119"), ETestUnsupported )); sl@0: sl@0: //Sends a mip message (Corrupt Message) sl@0: // AddTestStepL( CTestSendMipMessage::NewL( _L("MM-MMF-MIDICLNT-U-0120"), ETestCorrupt) ); sl@0: sl@0: //The number of sound banks (No Custom banks Exist) sl@0: // AddTestStepL( CTestNumberOfBanks::NewL( _L("MM-MMF-MIDICLNT-U-0122"), ETestNoCustomBanks) ); sl@0: sl@0: //The number of sound banks (No Standard bank Exist) sl@0: // AddTestStepL( CTestNumberOfBanks::NewL( _L("MM-MMF-MIDICLNT-U-0123"), ETestNoStandardBanks )); sl@0: sl@0: //The identifier of a sound bank (Invalid Bank Index) sl@0: // AddTestStepL( CTestGetBankId::NewL( _L("MM-MMF-MIDICLNT-U-0125"), ETestInvalidIndex) ); sl@0: sl@0: //The identifier of a sound bank (No Custom Banks Exist) sl@0: // AddTestStepL( CTestGetBankId::NewL( _L("MM-MMF-MIDICLNT-U-0126"), ETestNoCustomBanks) ); sl@0: sl@0: //The identifier of a sound bank (No Standard Banks Exist) sl@0: // AddTestStepL( CTestGetBankId::NewL( _L("MM-MMF-MIDICLNT-U-0127"), ETestNoStandardBanks )); sl@0: sl@0: //Loads a custom sound bank (Null Filename) sl@0: // AddTestStepL( CTestLoadCustomBank::NewL( _L("MM-MMF-MIDICLNT-U-0130"), ETestNullMessage) ); sl@0: sl@0: //Loads a custom sound bank (lnvalid Filename) sl@0: // AddTestStepL( CTestLoadCustomBank::NewL( _L("MM-MMF-MIDICLNT-U-0131"), ETestInvalidMessage) ); sl@0: sl@0: //Loads a custom sound bank (Unsupported File) sl@0: // AddTestStepL( CTestLoadCustomBank::NewL( _L("MM-MMF-MIDICLNT-U-0132"), ETestUnsupported) ); sl@0: sl@0: //Removes a custom sound bank (ID of Bank Not Loaded) sl@0: // AddTestStepL( CTestUnloadCustomBank::NewL( _L("MM-MMF-MIDICLNT-U-0134"), ETestNotLoaded )); sl@0: sl@0: //Gets the number of instruments (Invalid Bank Index) sl@0: // AddTestStepL( CTestNumberOfInstruments::NewL( _L("MM-MMF-MIDICLNT-U-0138"), ETestInvalidIndex )); sl@0: sl@0: //Gets the number of instruments (No Custome Banks Exist) sl@0: // AddTestStepL( CTestNumberOfInstruments::NewL( _L("MM-MMF-MIDICLNT-U-0139"), ETestNoCustomBanks )); sl@0: sl@0: //Gets the number of instruments (No Standard Banks Exist) sl@0: // AddTestStepL( CTestNumberOfInstruments::NewL( _L("MM-MMF-MIDICLNT-U-0140"), ETestNoStandardBanks )); sl@0: sl@0: //Gets the identifier of a instrument (Invalid Bank ID) sl@0: // AddTestStepL( CTestGetInstrumentId::NewL( _L("MM-MMF-MIDICLNT-U-0142"), ETestInvalidId )); sl@0: sl@0: //Gets the identifier of a instrument (No Custome Banks Exist) sl@0: // AddTestStepL( CTestGetInstrumentId::NewL( _L("MM-MMF-MIDICLNT-U-0143"), ETestNoCustomBanks )); sl@0: sl@0: //Gets the identifier of a instrument (No Standard Banks Exist) sl@0: // AddTestStepL( CTestGetInstrumentId::NewL( _L("MM-MMF-MIDICLNT-U-0144"), ETestNoStandardBanks )); sl@0: sl@0: //Gets the identifier of a instrument (Invalid Program/Instrument Index) sl@0: // AddTestStepL( CTestGetInstrumentId::NewL( _L("MM-MMF-MIDICLNT-U-0145"), ETestInvalidIndex )); sl@0: sl@0: //Check this// sl@0: //Change it to return EFail for failing negative test sl@0: //Gets the name of a instrument (Invalid Program/Instrument Information) sl@0: AddTestStepL( CTestReturnsInstrumentName::NewL( _L("MM-MMF-MIDICLNT-U-0147"), ETestNegative )); sl@0: // sl@0: sl@0: //Sets a channel to use the instrument (Invalid Channel) sl@0: // AddTestStepL( CTestSetInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0149"), ETestInvalidChannel )); sl@0: sl@0: //Sets a channel to use the instrument (Invalid Program/Instrument ID) sl@0: // AddTestStepL( CTestSetInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0150"), ETestInvalidId )); sl@0: sl@0: //Loads a custom Instrument (Invalid Bank ID) sl@0: // AddTestStepL( CTestLoadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0152"), ETestInvalidId )); sl@0: sl@0: //Loads a custom Instrument (Load Program/Instrument Already Loaded) sl@0: // AddTestStepL( CTestLoadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0153"), ETestAlreadyLoaded )); sl@0: sl@0: //Loads a custom Instrument (Load Unsupported Program/Instrument) sl@0: // AddTestStepL( CTestLoadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0154"), ETestUnsupported )); sl@0: sl@0: //Removes a instrument (Invalid Bank ID) sl@0: // AddTestStepL( CTestUnloadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0156"), ETestInvalidId )); sl@0: sl@0: //Removes a instrument (ID of Program not Loaded) sl@0: // AddTestStepL( CTestUnloadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0157"), ETestNotLoaded )); sl@0: sl@0: //Removes a instrument (Non-unloadable Program/Instrument) sl@0: // AddTestStepL( CTestUnloadCustomInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0158"), ETestNotUnloadable )); sl@0: sl@0: //Queries the name of a particular percussion key (Invalid Note) sl@0: // AddTestStepL( CTestPercussionKeyName::NewL( _L("MM-MMF-MIDICLNT-U-0160"), ETestInvalidId )); sl@0: sl@0: // Disabled until real MIDI controller available sl@0: //Stop Time (No Midi Resource is Open) sl@0: //AddTestStepL( CTestStopTime::NewL( _L("MM-MMF-MIDICLNT-U-0162"),ETestNoResource)); sl@0: sl@0: //Set Stop Time (Stop time out of range high) sl@0: AddTestStepL( CTestSetStopTime::NewL( _L("MM-MMF-MIDICLNT-U-0164"),ETestOutOfRangeHigh)); sl@0: sl@0: //Set Stop Time (Stop time out of range low) sl@0: AddTestStepL( CTestSetStopTime::NewL( _L("MM-MMF-MIDICLNT-U-0165"),ETestOutOfRangeLow)); sl@0: sl@0: //Set the number of times to repeat (Repeat: Out of Range High, Trailing Silence: Out of Range High) sl@0: AddTestStepL( CTestSetRepeats::NewL( _L("MM-MMF-MIDICLNT-U-0169"), ETestOutOfRange )); sl@0: sl@0: //It gave no error even it is Channel16. So it should be because no plugin. sl@0: //volume setting of a channel (Invalid Channel) -- DEFERED (No suitable Midi Controller) sl@0: AddTestStepL( CTestReturnChannelVolume::NewL( _L("MM-MMF-MIDICLNT-U-0175"), ETestInvalidChannel )); sl@0: sl@0: //Set the volume of a channel (Invalid Channel Number) sl@0: AddTestStepL( CTestSetChannelVolume::NewL( _L("MM-MMF-MIDICLNT-U-0178"), ETestInvalidChannelOutOfRange)); sl@0: sl@0: //Set the volume of a channel (Volume out of Range High) sl@0: AddTestStepL( CTestSetChannelVolume::NewL( _L("MM-MMF-MIDICLNT-U-0179"), ETestVolumeHighOutOfRange)); sl@0: sl@0: //Set the volume of a channel (Volume out of Range Low) sl@0: AddTestStepL( CTestSetChannelVolume::NewL( _L("MM-MMF-MIDICLNT-U-0180"), ETestVolumeLowOutOfRange)); sl@0: sl@0: //Check this sl@0: //Is the error message 'NotSupported' corect?? sl@0: //Set the muting state of a channel (Invalid Channel) sl@0: AddTestStepL( CTestSetChannelMute::NewL( _L("MM-MMF-MIDICLNT-U-0182"), ETestInvalidChannelOutOfRange)); sl@0: // sl@0: sl@0: //Taken out as controller does not check values sl@0: //Set the overall volume (Out of Range Volume Low) sl@0: // AddTestStepL( CTestSetVolume::NewL( _L("MM-MMF-MIDICLNT-U-0186"), ETestVolumeLowOutOfRange)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Set the overall volume (Out of Range Volume High) sl@0: // AddTestStepL( CTestSetVolume::NewL( _L("MM-MMF-MIDICLNT-U-0187"), ETestVolumeHighOutOfRange)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Length of time over which the volume is faded up (Out of Range Volume Low) sl@0: // AddTestStepL( CTestSetVolumeRamp::NewL( _L("MM-MMF-MIDICLNT-U-0189"), ETestRampDurationLowOutOfRange)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Length of time over which the volume is faded up (Out of Range Volume High) sl@0: // AddTestStepL( CTestSetVolumeRamp::NewL( _L("MM-MMF-MIDICLNT-U-0190"), ETestRampDurationHighOutOfRange)); sl@0: sl@0: //Get the stereo balance value (Plugin Does Not Support Balance) sl@0: // AddTestStepL( CTestGetBalance::NewL( _L("MM-MMF-MIDICLNT-U-0192"), ETestUnsupported)); sl@0: sl@0: //Set the stereo balance value (Plugin Does Not Support Balance) sl@0: // AddTestStepL( CTestSetBalance::NewL( _L("MM-MMF-MIDICLNT-U-0194"), ETestUnsupported)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Set the stereo balance value (Out of Range Volume Low) sl@0: // AddTestStepL( CTestSetBalance::NewL( _L("MM-MMF-MIDICLNT-U-0195"), ETestBalanceLowOutOfRange)); sl@0: sl@0: //Taken out as controller does not check values sl@0: //Set the stereo balance value (Out of Range Volume High) sl@0: // AddTestStepL( CTestSetBalance::NewL( _L("MM-MMF-MIDICLNT-U-0196"), ETestBalanceHighOutOfRange)); sl@0: sl@0: // We need this to confict and cause PreferenceConflictsCannotBeResolved sl@0: //Set the priority (Preference Conflicts Cannot be Resolved) -- DEFERED (Need another Midi Client) sl@0: // AddTestStepL( CTestSetPriority::NewL( _L("MM-MMF-MIDICLNT-U-0198"), ETestPreferenceConflictsCannotBeResolved)); sl@0: sl@0: // Taken out we need plugin sl@0: //Get the number of meta data entries (Plugin Does Not Support Metadata) sl@0: // AddTestStepL( CTestNumberOfXmfMetaDataEntries::NewL( _L("MM-MMF-MIDICLNT-U-0200"), ETestUnsupported)); sl@0: sl@0: //Causes Access Violation sl@0: //Retrieve the specified meta data entry (Invalid Index) sl@0: // AddTestStepL( CTestGetXmfMetaDataEntry::NewL( _L("MM-MMF-MIDICLNT-U-0202"), ETestMetaDataIndexInvalid)); sl@0: sl@0: //Causes Access Violation sl@0: //Retrieve the specified meta data entry (Plugin Does Not Support Metadata) sl@0: // AddTestStepL( CTestGetXmfMetaDataEntry::NewL( _L("MM-MMF-MIDICLNT-U-0203"), ETestUnsupported)); sl@0: sl@0: //Query the instrument (Invalid channel) - DEFERRED sl@0: //AddTestStepL( CTestGetInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0216"), ETestInvalidChannel)); sl@0: sl@0: //Query the instrument (Invalid Id) - DEFERRED sl@0: //AddTestStepL( CTestGetInstrument::NewL( _L("MM-MMF-MIDICLNT-U-0217"), ETestInvalidId)); sl@0: sl@0: //Loads an individual instrument from descriptor (Invalid ID) - DEFERRED sl@0: //AddTestStepL( CTestLoadCustomInstrumentData::NewL( _L("MM-MMF-MIDICLNT-U-0220"), ETestInvalidId)); sl@0: sl@0: //Loads an individual instrument from descriptor (Already loaded) - DEFERRED sl@0: //AddTestStepL( CTestLoadCustomInstrumentData::NewL( _L("MM-MMF-MIDICLNT-U-0221"), ETestAlreadyLoaded)); sl@0: sl@0: //Loads an individual instrument from descriptor (Unsupported / Bad instrument data) - DEFERRED sl@0: //AddTestStepL( CTestLoadCustomInstrumentData::NewL( _L("MM-MMF-MIDICLNT-U-0222"), ETestUnsupported)); sl@0: sl@0: AddTestStepL( CTestCheckInterface::NewL( _L("MM-MMF-MIDICLNT-U-0300"), ETestValid)); sl@0: sl@0: AddTestStepL(CTestStepMidiClntAllocFailNew::NewL()); sl@0: AddTestStepL(CTestStepMidiClntAllocFailOpenFile::NewL(_L("MM-MMF-MIDICLNT-U-0200-CP"))); sl@0: AddTestStepL(CTestStepMidiClntAllocFailOpenDes::NewL()); sl@0: AddTestStepL(CTestStepMidiClntAllocFailOpenUrl::NewL()); sl@0: sl@0: //MS 3.4 File Handles API sl@0: //NEGATIVE TESTS sl@0: //Open a MIDI File containing text data and try to perform initialisation ready for playback - (Invalid File). sl@0: AddTestStepL( CTestMidiClntOpenFileByHandle::NewL( _L("MM-MMF-MIDICLNT-U-0223"), KSectionTwo, KFilename, ETrue, ETestValid) ); sl@0: sl@0: //POSITIVE TESTS sl@0: //Open a file containing midi data and perform initialisation ready for playback. sl@0: AddTestStepL( CTestMidiClntOpenFileByHandle::NewL( _L("MM-MMF-MIDICLNT-U-1001"), KSectionOne, KFilename, ETrue, ETestValid) ); sl@0: //Initiate or resume playback of a previously opened resource. sl@0: AddTestStepL( CTestMidiClntPlayFileByHandle::NewL( _L("MM-MMF-MIDICLNT-U-1002"))); sl@0: sl@0: //ALLOC TESTS sl@0: //Alloc test to Open a file containing midi data and perform initialisation ready for playback. sl@0: AddTestStepL(CTestStepMidiClntAllocFailOpenFile::NewL(_L("MM-MMF-MIDICLNT-U-1003"))); sl@0: sl@0: AddTestStepL(CTestDrmNegative::NewL(_L("MM-MMF-MIDICLNT-U-0321-HP"),ETestNegative ,KDrm0321)); sl@0: AddTestStepL(CTestDrmNegative::NewL(_L("MM-MMF-MIDICLNT-U-0322-HP"),ETestNegative ,KDrm0322)); sl@0: AddTestStepL(CTestDrmPlay::NewL(_L("MM-MMF-MIDICLNT-U-0323-HP"),ETestValid ,KDrm0323)); sl@0: AddTestStepL(CTestDrmNegative::NewL(_L("MM-MMF-MIDICLNT-U-0324-HP"),ETestNegative ,KDrm0324)); sl@0: AddTestStepL(CTestDrmPlay::NewL(_L("MM-MMF-MIDICLNT-U-1011-HP"),ETestValid ,KDrm1011)); sl@0: AddTestStepL(CTestDrmPlay::NewL(_L("MM-MMF-MIDICLNT-U-1012-HP"),ETestValid ,KDrm1012)); sl@0: AddTestStepL(CTestDrmPlayStop::NewL(_L("MM-MMF-MIDICLNT-U-1013-HP"),ETestValid ,KDrm1013)); sl@0: AddTestStepL(CTestDrmPlay::NewL(_L("MM-MMF-MIDICLNT-U-1014-HP"),ETestValid ,KDrm1014)); sl@0: AddTestStepL(CTestDrmPlay::NewL(_L("MM-MMF-MIDICLNT-U-1015-HP"),ETestValid ,KDrm1015)); sl@0: AddTestStepL(CTestDrmPlayWithUI::NewL(_L("MM-MMF-MIDICLNT-U-1016-HP"),ETestValid ,KDrm1016)); sl@0: sl@0: //Play a midifile without opening it and check the status while playing and after it is been stopped. sl@0: AddTestStepL(CTestMidiClntPlayWithoutFile::NewL(_L("MM-MMF-MIDICLNT-U-1020-HP"))); sl@0: //Open and Play a midifile and check the status while playing and after it is been stopped. sl@0: AddTestStepL(CTestMidiClntOpenAndPlayFile::NewL(_L("MM-MMF-MIDICLNT-U-1021-HP"),KSectionOne, KFilename)); sl@0: sl@0: //Open and play multiple concurrent midi objects, using shared heap mode, to check we don't run out of heaps sl@0: AddTestStepL(CTestMidiClntMultiSharedHeap::NewL(_L("MM-MMF-MIDICLNT-U-2000-HP"),KSectionOne, KFilename, EFalse)); sl@0: AddTestStepL(CTestMidiClntMultiSharedHeap::NewL(_L("MM-MMF-MIDICLNT-U-2001-HP"),KSectionOne, KFilename, ETrue)); sl@0: sl@0: // repeatedly create and delete multiple concurrent midi objects, using shared heap mode, to check no chunks are leaked sl@0: AddTestStepL(CTestMidiClntRepeatMultiSharedHeap::NewL(_L("MM-MMF-MIDICLNT-U-2002-HP"),KSectionOne, KFilename, EFalse)); sl@0: AddTestStepL(CTestMidiClntRepeatMultiSharedHeap::NewL(_L("MM-MMF-MIDICLNT-U-2003-HP"),KSectionOne, KFilename, ETrue)); sl@0: } sl@0: sl@0: