sl@0: // Copyright (c) 2007-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: #include "teststepcispeechencoderconfig.h" sl@0: sl@0: sl@0: TVerdict CTestStepCISpeechEncoderConfig::DoTestStepL() sl@0: { sl@0: iTestStepResult = ETestSuiteError; sl@0: sl@0: INFO_PRINTF1(_L("Initializing test CI device")); sl@0: sl@0: if (iTestStepName.Compare(_L("MM-MMF-DEVSOUNDCI-U-0001-HP")) == 0) sl@0: { sl@0: iTestStepResult = DoTestStep0001L(); sl@0: } sl@0: else if (iTestStepName.Compare(_L("MM-MMF-DEVSOUNDCI-U-0002-HP")) == 0) sl@0: { sl@0: iTestStepResult = DoTestStep0002L(); sl@0: } sl@0: else if (iTestStepName.Compare(_L("MM-MMF-DEVSOUNDCI-U-0003-HP")) == 0) sl@0: { sl@0: iTestStepResult = DoTestStep0003L(); sl@0: } sl@0: sl@0: return iTestStepResult; sl@0: } sl@0: sl@0: sl@0: TVerdict CTestStepCISpeechEncoderConfig::DoTestStep0001L() sl@0: { sl@0: iTestStepResult = EFail; sl@0: sl@0: INFO_PRINTF1(_L("SpeechEncoderConfig - Instantiating")); sl@0: sl@0: //Initialize - with the UID of our test HwDevice sl@0: #ifndef SYMBIAN_MULTIMEDIA_A3FDEVSOUND sl@0: TUid testUID = {KUidSpeechEncoderConfigTestDevice}; sl@0: #else sl@0: TFourCC testUID('T','0','1','4'); sl@0: #endif sl@0: sl@0: iTestStepResult = TestInitialize(testUID, EMMFStatePlaying); sl@0: sl@0: if (iTestStepResult != EPass) sl@0: { sl@0: INFO_PRINTF1(_L("DevSound failed to instantiate the test device")); sl@0: return EInconclusive; sl@0: } sl@0: sl@0: // reset the value as previous test is pass sl@0: iTestStepResult = EFail; sl@0: sl@0: // KUidSpeechEncoderConfig sl@0: MSpeechEncoderConfig* ptr = static_cast (iMMFDevSound->CustomInterface(KUidSpeechEncoderConfig)); sl@0: sl@0: if (ptr) sl@0: { sl@0: INFO_PRINTF1(_L("MSpeechEncoderConfig instantiated successfully")); sl@0: sl@0: iTestStepResult = EPass; sl@0: } sl@0: else sl@0: { sl@0: ERR_PRINTF1(_L("MSpeechEncoderConfig failed to retrieve the interface")); sl@0: } sl@0: sl@0: return iTestStepResult; sl@0: } sl@0: sl@0: sl@0: TVerdict CTestStepCISpeechEncoderConfig::DoTestStep0002L() sl@0: { sl@0: iTestStepResult = EFail; sl@0: TInt result = KErrGeneral; sl@0: sl@0: INFO_PRINTF1(_L("SpeechEncoderConfig - SetVadMode")); sl@0: sl@0: //Initialize - with the UID of our test HwDevice sl@0: #ifndef SYMBIAN_MULTIMEDIA_A3FDEVSOUND sl@0: TUid testUID = {KUidSpeechEncoderConfigTestDevice}; sl@0: #else sl@0: TFourCC testUID('T','0','1','4'); sl@0: #endif sl@0: sl@0: iTestStepResult = TestInitialize(testUID, EMMFStatePlaying); sl@0: sl@0: if (iTestStepResult != EPass) sl@0: { sl@0: INFO_PRINTF1(_L("DevSound failed to instantiate the test device")); sl@0: return EInconclusive; sl@0: } sl@0: sl@0: // reset the value as previous test is pass sl@0: iTestStepResult = EFail; sl@0: sl@0: // KUidSpeechEncoderConfig sl@0: MSpeechEncoderConfig* ptr = static_cast (iMMFDevSound->CustomInterface(KUidSpeechEncoderConfig)); sl@0: sl@0: if (ptr) sl@0: { sl@0: TBool vadModeOn = EFalse; sl@0: sl@0: result = ptr->SetVadMode(vadModeOn); // call method sl@0: sl@0: if (result == KErrNone) sl@0: { sl@0: INFO_PRINTF1(_L("MSpeechEncoderConfig::SetVadMode finished successfully")); sl@0: sl@0: iTestStepResult = EPass; sl@0: } sl@0: else sl@0: { sl@0: ERR_PRINTF2(_L("MSpeechEncoderConfig::SetVadMode failed with error %d"), result); sl@0: } sl@0: } sl@0: else sl@0: { sl@0: INFO_PRINTF1(_L("MSpeechEncoderConfig failed to retrieve the interface")); sl@0: iTestStepResult = EInconclusive; sl@0: } sl@0: sl@0: return iTestStepResult; sl@0: } sl@0: sl@0: sl@0: TVerdict CTestStepCISpeechEncoderConfig::DoTestStep0003L() sl@0: { sl@0: iTestStepResult = EFail; sl@0: TInt result = KErrGeneral; sl@0: sl@0: INFO_PRINTF1(_L("SpeechEncoderConfig - GetVadMode")); sl@0: sl@0: //Initialize - with the UID of our test HwDevice sl@0: #ifndef SYMBIAN_MULTIMEDIA_A3FDEVSOUND sl@0: TUid testUID = {KUidSpeechEncoderConfigTestDevice}; sl@0: #else sl@0: TFourCC testUID('T','0','1','4'); sl@0: #endif sl@0: sl@0: iTestStepResult = TestInitialize(testUID, EMMFStatePlaying); sl@0: sl@0: if (iTestStepResult != EPass) sl@0: { sl@0: INFO_PRINTF1(_L("DevSound failed to instantiate the test device")); sl@0: return EInconclusive; sl@0: } sl@0: sl@0: // reset the value as previous test is pass sl@0: iTestStepResult = EFail; sl@0: sl@0: // KUidSpeechEncoderConfig sl@0: MSpeechEncoderConfig* ptr = static_cast (iMMFDevSound->CustomInterface(KUidSpeechEncoderConfig)); sl@0: sl@0: if (ptr) sl@0: { sl@0: TBool vadModeOn = ETrue; sl@0: sl@0: result = ptr->SetVadMode(vadModeOn); // call method sl@0: sl@0: if (result == KErrNone) sl@0: { sl@0: INFO_PRINTF1(_L("MSpeechEncoderConfig::SetVadMode finished successfully")); sl@0: sl@0: result = ptr->GetVadMode(vadModeOn); sl@0: sl@0: if ( (result == KErrNone) && vadModeOn ) sl@0: { sl@0: INFO_PRINTF1(_L("MSpeechEncoderConfig::GetVadMode finished successfully")); sl@0: sl@0: iTestStepResult = EPass; sl@0: } sl@0: else if (result != KErrNone) sl@0: { sl@0: INFO_PRINTF2(_L("MSpeechEncoderConfig::GetVadMode failed with error %d"), result); sl@0: } sl@0: else sl@0: { sl@0: ERR_PRINTF1(_L("MSpeechEncoderConfig::GetVadMode failed - expected and received mismatch")); sl@0: } sl@0: } sl@0: else sl@0: { sl@0: ERR_PRINTF2(_L("MSpeechEncoderConfig::SetVadMode failed with error %d"), result); sl@0: } sl@0: } sl@0: else sl@0: { sl@0: INFO_PRINTF1(_L("MSpeechEncoderConfig failed to retrieve the interface")); sl@0: iTestStepResult = EInconclusive; sl@0: } sl@0: sl@0: return iTestStepResult; sl@0: }