//
// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of "Eclipse Public License v1.0"
// which accompanies this distribution, and is available
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
//
// Initial Contributors:
// Nokia Corporation - initial contribution.
//
// Contributors:
//
// Description:
//
LOAD_SUITE TSU_MILIF_OMXILIF.dll
//------------------------------------------------------------------------------------------//
// Test Suite for the Generic Multimedia Integration Layer Interface //
//
// This test suite is based on the generic DLL implementation of the MILIF interface that has
// been specialized to make use of a generic plugin implementation of the MILIF interface for
// OMX audio decoders
//
// Test Cases: MM-MILIF-DUMMYOMXILIF-U-0001 to MM-MILIF-DUMMYOMXILIF-U-0006
//
//------------------------------------------------------------------------------------------//
//------------------------------------------------------------------------------------------//
// TEST STEP: TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0001
// RTestStepMILIFPorts: To test access to IL component ports through MILIF.
// 1. Create an instance of the KUidOmxILAudioDecGenericIf test ECOM plugin interface.
// 2. Use the interface to instanciate a dummy omx component.
// 3. Set the role of the interface to "aac decoder".
// 4. Get Component Input ports through interface.
// 5. Get Component Output ports through interface.
//------------------------------------------------------------------------------------------//
//! @SYMTestCaseID MM-MILIF-DUMMYOMXILIF-U-0001
RUN_TEST_STEP -1 TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0001
TEST_COMPLETE
//------------------------------------------------------------------------------------------//
// TEST STEP: TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0002
// RTestStepMILIFConfig: To test configuration of IL component through MILIF.
// 1. Create an instance of the KUidOmxILAudioDecGenericIf test ECOM plugin interface.
// 2. Use the interface to instanciate a dummy omx component.
// 3. Set the role of the interface to "aac decoder".
// 4. Get Component Input ports through interface.
// 5a. Set a (partial) config port parameter through the interface.
// 5b. Now Get the TPortDefinitionType config parameter through the interface.
// 6a. Configure component through the interface.
// 6b. Now Get the TOMXILStructParam config parameter through the interface.
//------------------------------------------------------------------------------------------//
//! @SYMTestCaseID MM-MILIF-DUMMYOMXILIF-U-0002
RUN_TEST_STEP -1 TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0002
TEST_COMPLETE
//------------------------------------------------------------------------------------------//
// TEST STEP: TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0003
// RTestStepMILIFStates: To test driving the IL component state machine through MILIF.
// 1. Create an instance of the KUidOmxILAudioDecGenericIf test ECOM plugin interface.
// 2. Use the interface to instanciate a dummy omx component.
// 3. Set the role of the interface to "aac decoder".
// 4. Trigger transition from Load to Idle in component by calling Initialize()
// 5a. Check the component was left in the correct state after EEventInitComplete event
// 5b. Trigger transition from Idle to Execute in component by calling Execute()
// 6a. Check the component was left in the correct state after EEventExecuteComplete event
// 6b. Trigger transition from Executing to Pause in component by calling Pause()
// 7a. Check the component was left in the correct state after EEventPauseComplete event
// 7b. Trigger transition from Pause to Idle in component by calling Stop()
// 8. Check the component was left in the correct state after EEventStopComplete event
//------------------------------------------------------------------------------------------//
//! @SYMTestCaseID MM-MILIF-DUMMYOMXILIF-U-0003
RUN_TEST_STEP -1 TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0003
TEST_COMPLETE
//------------------------------------------------------------------------------------------//
// TEST STEP: TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0004
// RTestStepMILIFCommands: To test sending commands to the IL component through MILIF.
// 1. Create an instance of the KUidOmxILAudioDecGenericIf test ECOM plugin interface.
// 2. Use the interface to instanciate a dummy omx component.
// 3. Set the role of the interface to "aac decoder".
// 4. Trigger FlushAllPorts
// 5. Trigger SendCommand() with ECommandPortDisable
//------------------------------------------------------------------------------------------//
//! @SYMTestCaseID MM-MILIF-DUMMYOMXILIF-U-0004
RUN_TEST_STEP -1 TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0004
TEST_COMPLETE
//------------------------------------------------------------------------------------------//
// TEST STEP: TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0005
// RTestStepMILIFExtensions: To test configuration of the IL component with extended params through MILIF.
// 1. Create an instance of the KUidOmxILAudioDecGenericIf test ECOM plugin interface.
// 2. Use the interface to instanciate a dummy omx component.
// 3. Set the role of the interface to "aac decoder".
// 4. Get Component Input ports through interface.
// 5a. Set a (partial) config port parameter through the interface's extension mechanism.
// 5b. Get the parameter set in 5a through the interface's extension mechanism.
//------------------------------------------------------------------------------------------//
//! @SYMTestCaseID MM-MILIF-DUMMYOMXILIF-U-0005
RUN_TEST_STEP -1 TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0005
TEST_COMPLETE
//------------------------------------------------------------------------------------------//
// TEST STEP: TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0006
// RTestStepMILIFComponentRole: To test access to the IL component role through MILIF.
// 1. Create an instance of the KUidOmxILAudioDecGenericIf test ECOM plugin interface.
// 2. Use the interface to instanciate a dummy omx component.
// 3. Set the role of the interface to "aac decoder".
// 4. Get component role through interface.
// 5. Check the component's role returned is the expected role
//------------------------------------------------------------------------------------------//
//! @SYMTestCaseID MM-MILIF-DUMMYOMXILIF-U-0006
RUN_TEST_STEP -1 TSU_MILIF_OMXILIF MM-MILIF-DUMMYOMXILIF-U-0006
TEST_COMPLETE
// End of Test Script