mmlibs/mmfw/tsrc/mmfunittest/aclnt/TSU_MMF_ACLNT_01/TestStepConvertVarious.cpp
author hgs
Thu, 07 Oct 2010 22:34:12 +0100
changeset 0 b8ed18f6c07b
permissions -rw-r--r--
2010wk40
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     1
// Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     2
// All rights reserved.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     3
// This component and the accompanying materials are made available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     5
// which accompanies this distribution, and is available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     7
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     8
// Initial Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    10
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    11
// Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    12
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    13
// Description:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    14
// This file contains an example Test step implementation 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    15
// This demonstrates the various functions provided
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    16
// by the CTestStep base class which are available within
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    17
// a test step 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    18
// 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    19
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    20
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    21
// EPOC includes
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    22
#include <e32base.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    23
#include <e32test.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    24
#include <e32keys.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    25
#include <c32comm.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    26
#include <f32file.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    27
#include <etel.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    28
#include <etelmm.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    29
#include <testframework.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    30
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    31
#include <mdaaudiosampleeditor.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    32
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    33
// Test system includes
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    34
#include <testframework.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    35
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    36
// Specific includes for this test suite
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    37
#include "TestStepUnitMMFAudClient.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    38
#include "TestSuiteUnitMMFAudClient.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    39
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    40
// Specific includes for these test steps
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    41
#include "TestStepConvert.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    42
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    43
#include "mmfclientaudioplayer.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    44
#include "../../ctlfrm/TS_Codes.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    45
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    46
_LIT(KAudioControllerName,"Symbian Audio Wav Test controller");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    47
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    48
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    49
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    50
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    51
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    52
// --------------------------------------------
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    53
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    54
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    55
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    56
 * Static constructor for CTestStepConvertGetImplementationInfo.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    57
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    58
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    59
 * @return	"CTestStepConvertGetImplementationInfo*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    60
 *			The constructed CTestStepConvertGetImplementationInfo
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    61
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    62
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    63
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    64
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    65
CTestStepConvertGetImplementationInfo* CTestStepConvertGetImplementationInfo::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    66
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    67
	CTestStepConvertGetImplementationInfo* self = new(ELeave) CTestStepConvertGetImplementationInfo;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    68
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    69
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    70
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    71
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    72
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    73
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    74
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    75
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    76
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    77
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    78
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    79
CTestStepConvertGetImplementationInfo::CTestStepConvertGetImplementationInfo() 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    80
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    81
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    82
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    83
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    84
	iTestStepName = _L("MM-MMF-ACLNT-U-0571-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    85
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    86
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    87
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    88
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    89
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    90
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    91
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    92
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    93
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    94
CTestStepConvertGetImplementationInfo::~CTestStepConvertGetImplementationInfo()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    95
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    96
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    97
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    98
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    99
void CTestStepConvertGetImplementationInfo::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   100
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   101
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   102
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   103
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   104
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   105
	iHasStartedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   106
	iHasFinishedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   107
	if (aPreviousState == CMdaAudioClipUtility::EOpen
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   108
		&& aCurrentState == CMdaAudioClipUtility::EPlaying)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   109
		iHasStartedConverting = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   110
	if (aPreviousState == CMdaAudioClipUtility::EPlaying
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   111
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   112
		iHasFinishedConverting = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   113
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   114
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   115
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   116
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   117
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   118
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   119
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   120
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   121
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   122
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   123
enum TVerdict CTestStepConvertGetImplementationInfo::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   124
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   125
	enum TVerdict verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   126
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   127
	verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   128
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   129
		return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   130
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   131
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   132
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   133
	INFO_PRINTF1(_L("this is a test of CMMFMdaAudioConvertUtility::ControllerImplementationInformationL()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   134
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   135
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName7"), iFileName) ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   136
	   !GetStringFromConfig(_L("SectionOne"), _L("AudioFNameToConvert"), iFileName2) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   137
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   138
		//INFO_PRINTF2(_L("file name %s not found..."), fileptr);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   139
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   140
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   141
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   142
	// create the Convert utility
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   143
	if ( (iConvert = CMdaAudioConvertUtility::NewL(*this)) == NULL )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   144
		verdict = EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   145
	// create an empty target file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   146
	iFs.Connect();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   147
	if ( iFile.Replace(iFs, iFileName2, EFileWrite) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   148
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   149
	if ( iFile.SetSize(0) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   150
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   151
	iFile.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   152
	iFs.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   153
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   154
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   155
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   156
	INFO_PRINTF1(_L("CMMFMdaAudioConvertUtility::ControllerImplementationInformationL()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   157
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   158
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   159
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   160
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   161
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   162
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   163
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   164
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   165
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   166
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   167
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   168
enum TVerdict CTestStepConvertGetImplementationInfo::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   169
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   170
	//delete the output file 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   171
	CFileMan* fileMan;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   172
	iFs.Connect();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   173
	fileMan = CFileMan::NewL(iFs);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   174
	fileMan->Delete(iFileName2);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   175
	iFs.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   176
	delete fileMan;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   177
	fileMan = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   178
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   179
	delete iConvert;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   180
	iConvert = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   181
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   182
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   183
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   184
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   185
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   186
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   187
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   188
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   189
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   190
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   191
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   192
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   193
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   194
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   195
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   196
TVerdict CTestStepConvertGetImplementationInfo::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   197
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   198
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   199
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   200
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   201
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   202
	iConvert->OpenL(iFileName, iFileName2 );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   203
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   204
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   205
	if (iError != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   206
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   207
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   208
	const CMMFControllerImplementationInformation* info = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   209
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   210
	TRAP(err, info = &iConvert->ControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   211
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   212
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   213
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   214
	if (info->DisplayName().Compare(KAudioControllerName)!=0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   215
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   216
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   217
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   218
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   219
	delete iConvert;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   220
	iConvert = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   221
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   222
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   223
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   224
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   225
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   226
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   227
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   228
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   229
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   230
// --------------------------------------------
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   231
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   232
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   233
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   234
 * Static constructor for CTestStepConvertSendCustomCommandSync.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   235
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   236
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   237
 * @return	"CTestStepConvertSendCustomCommandSync*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   238
 *			The constructed CTestStepConvertSendCustomCommandSync
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   239
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   240
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   241
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   242
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   243
CTestStepConvertSendCustomCommandSync* CTestStepConvertSendCustomCommandSync::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   244
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   245
	CTestStepConvertSendCustomCommandSync* self = new(ELeave) CTestStepConvertSendCustomCommandSync;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   246
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   247
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   248
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   249
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   250
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   251
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   252
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   253
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   254
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   255
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   256
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   257
CTestStepConvertSendCustomCommandSync::CTestStepConvertSendCustomCommandSync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   258
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   259
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   260
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   261
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   262
	iTestStepName = _L("MM-MMF-ACLNT-U-0572-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   263
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   264
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   265
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   266
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   267
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   268
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   269
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   270
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   271
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   272
CTestStepConvertSendCustomCommandSync::~CTestStepConvertSendCustomCommandSync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   273
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   274
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   275
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   276
void CTestStepConvertSendCustomCommandSync::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   277
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   278
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   279
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   280
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   281
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   282
	iHasStartedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   283
	iHasFinishedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   284
	if (aPreviousState == CMdaAudioClipUtility::EOpen
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   285
		&& aCurrentState == CMdaAudioClipUtility::EPlaying)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   286
		iHasStartedConverting = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   287
	if (aPreviousState == CMdaAudioClipUtility::EPlaying
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   288
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   289
		iHasFinishedConverting = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   290
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   291
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   292
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   293
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   294
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   295
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   296
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   297
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   298
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   299
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   300
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   301
enum TVerdict CTestStepConvertSendCustomCommandSync::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   302
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   303
	enum TVerdict verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   304
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   305
	verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   306
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   307
		return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   308
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   309
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName7"), iFileName) ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   310
	   !GetStringFromConfig(_L("SectionOne"), _L("AudioFNameToConvert"), iFileName2) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   311
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   312
		//INFO_PRINTF2(_L("file name %s not found..."), fileptr);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   313
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   314
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   315
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   316
	iClipLocationSrc = new TMdaFileClipLocation(iFileName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   317
	iClipLocationTrgt = new TMdaFileClipLocation(iFileName2);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   318
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   319
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   320
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   321
	INFO_PRINTF1(_L("this test is a test of CMMFMdaAudioConvertUtility::CustomCommandSync()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   322
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   323
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   324
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   325
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   326
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   327
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   328
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   329
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   330
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   331
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   332
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   333
enum TVerdict CTestStepConvertSendCustomCommandSync::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   334
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   335
	//delete the output file 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   336
	CFileMan* fileMan;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   337
	iFs.Connect();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   338
	fileMan = CFileMan::NewL(iFs);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   339
	fileMan->Delete(iFileName2);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   340
	iFs.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   341
	delete fileMan;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   342
	fileMan = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   343
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   344
	delete iConvert;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   345
	iConvert = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   346
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   347
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   348
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   349
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   350
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   351
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   352
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   353
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   354
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   355
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   356
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   357
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   358
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   359
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   360
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   361
TVerdict CTestStepConvertSendCustomCommandSync::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   362
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   363
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   364
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   365
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   366
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   367
	iConvert = CMdaAudioConvertUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   368
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   369
	TRAP( err, iConvert->OpenL(iClipLocationSrc,iClipLocationTrgt,TUid::Uid(KUidTestController),KNullUid,KFourCCNULL));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   370
	if (err!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   371
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   372
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   373
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   374
	if (iError!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   375
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   376
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   377
	TUid uid;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   378
	uid = TUid::Uid(0x101f72B4);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   379
	TMMFMessageDestinationPckg destPckg(uid);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   380
	// test without a return value
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   381
	err = iConvert->CustomCommandSync(destPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   382
								EMMFTestCustomCommandGeneralSynchronous,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   383
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   384
								KSecondParameter);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   385
								
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   386
	if (err!=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   387
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   388
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   389
	TBuf8<256> buf;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   390
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   391
	err = iConvert->CustomCommandSync(destPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   392
								EMMFTestCustomCommandGeneralSynchronousWithReturn,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   393
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   394
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   395
								buf);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   396
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   397
	if (err!=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   398
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   399
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   400
	if (buf.Compare(KReturnParameter)==0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   401
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   402
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   403
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   404
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   405
	delete iConvert;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   406
	iConvert = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   407
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   408
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   409
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   410
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   411
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   412
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   413
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   414
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   415
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   416
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   417
// --------------------------------------------
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   418
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   419
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   420
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   421
 * Static constructor for CTestStepConvertSendCustomCommandAsync.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   422
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   423
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   424
 * @return	"CTestStepConvertSendCustomCommandAsync*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   425
 *			The constructed CTestStepConvertSendCustomCommandAsync
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   426
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   427
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   428
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   429
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   430
CTestStepConvertSendCustomCommandAsync* CTestStepConvertSendCustomCommandAsync::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   431
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   432
	CTestStepConvertSendCustomCommandAsync* self = new(ELeave) CTestStepConvertSendCustomCommandAsync;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   433
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   434
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   435
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   436
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   437
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   438
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   439
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   440
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   441
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   442
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   443
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   444
CTestStepConvertSendCustomCommandAsync::CTestStepConvertSendCustomCommandAsync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   445
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   446
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   447
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   448
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   449
	iTestStepName = _L("MM-MMF-ACLNT-U-0573-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   450
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   451
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   452
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   453
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   454
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   455
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   456
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   457
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   458
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   459
CTestStepConvertSendCustomCommandAsync::~CTestStepConvertSendCustomCommandAsync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   460
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   461
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   462
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   463
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   464
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   465
 * Test step Close
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   466
 * handles all deletion
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   467
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   468
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   469
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   470
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   471
void CTestStepConvertSendCustomCommandAsync::Close()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   472
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   473
	delete iAsyncObserver;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   474
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   475
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   476
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   477
void CTestStepConvertSendCustomCommandAsync::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   478
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   479
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   480
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   481
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   482
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   483
	iHasStartedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   484
	iHasFinishedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   485
	if (aPreviousState == CMdaAudioClipUtility::EOpen
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   486
		&& aCurrentState == CMdaAudioClipUtility::EPlaying)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   487
		iHasStartedConverting = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   488
	if (aPreviousState == CMdaAudioClipUtility::EPlaying
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   489
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   490
		iHasFinishedConverting = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   491
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   492
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   493
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   494
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   495
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   496
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   497
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   498
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   499
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   500
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   501
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   502
enum TVerdict CTestStepConvertSendCustomCommandAsync::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   503
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   504
	enum TVerdict verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   505
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   506
	verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   507
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   508
		return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   509
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   510
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName7"), iFileName) ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   511
	   !GetStringFromConfig(_L("SectionOne"), _L("AudioFNameToConvert"), iFileName2) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   512
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   513
		//INFO_PRINTF2(_L("file name %s not found..."), fileptr);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   514
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   515
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   516
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   517
	iClipLocationSrc = new TMdaFileClipLocation(iFileName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   518
	iClipLocationTrgt = new TMdaFileClipLocation(iFileName2);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   519
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   520
	iAsyncObserver = new (ELeave) CAsyncObserver;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   521
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   522
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   523
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   524
	INFO_PRINTF1(_L("this test is a test of CMMFMdaAudioConvertUtility::CustomCommandAsync()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   525
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   526
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   527
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   528
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   529
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   530
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   531
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   532
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   533
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   534
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   535
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   536
enum TVerdict CTestStepConvertSendCustomCommandAsync::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   537
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   538
	delete iConvert;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   539
	iConvert = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   540
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   541
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   542
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   543
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   544
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   545
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   546
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   547
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   548
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   549
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   550
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   551
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   552
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   553
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   554
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   555
TVerdict CTestStepConvertSendCustomCommandAsync::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   556
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   557
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   558
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   559
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   560
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   561
	iConvert = CMdaAudioConvertUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   562
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   563
	TRAP( err, iConvert->OpenL(iClipLocationSrc,iClipLocationTrgt,TUid::Uid(KUidTestController),KNullUid,KFourCCNULL));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   564
	if (err!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   565
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   566
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   567
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   568
	if (iError!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   569
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   570
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   571
	TUid uid;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   572
	uid = TUid::Uid(0x101f72B4);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   573
	// destinationPckg can be temporary as the asynchronous custom command returns before the temporary variable goes out of scope
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   574
	TMMFMessageDestinationPckg destinationPckg(uid);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   575
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   576
	// test without a return value
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   577
	iConvert->CustomCommandAsync(destinationPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   578
								EMMFTestCustomCommandGeneralAsynchronous,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   579
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   580
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   581
								iAsyncObserver->ActiveStatus());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   582
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   583
	CActiveScheduler::Start();	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   584
	if (iAsyncObserver->iStatus.Int() !=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   585
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   586
								
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   587
	TBuf8<256> buf;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   588
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   589
	iConvert->CustomCommandAsync(destinationPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   590
								EMMFTestCustomCommandGeneralAsynchronousWithReturn,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   591
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   592
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   593
								buf,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   594
								iAsyncObserver->ActiveStatus());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   595
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   596
	CActiveScheduler::Start();	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   597
	if (iAsyncObserver->iStatus.Int() !=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   598
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   599
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   600
	if (buf.Compare(KReturnParameter)==0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   601
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   602
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   603
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   604
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   605
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   606
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   607
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   608
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   609
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   610
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   611
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   612
 * Static constructor for CTestStepConvertCheckImplementationInfo.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   613
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   614
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   615
 * @return	"CTestStepConvertCheckImplementationInfo*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   616
 *			The constructed CTestStepConvertCheckImplementationInfo
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   617
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   618
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   619
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   620
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   621
CTestStepConvertCheckImplementationInfo* CTestStepConvertCheckImplementationInfo::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   622
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   623
	CTestStepConvertCheckImplementationInfo* self = new(ELeave) CTestStepConvertCheckImplementationInfo;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   624
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   625
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   626
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   627
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   628
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   629
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   630
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   631
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   632
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   633
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   634
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   635
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   636
CTestStepConvertCheckImplementationInfo::CTestStepConvertCheckImplementationInfo() 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   637
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   638
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   639
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   640
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   641
	iTestStepName = _L("MM-MMF-ACLNT-U-1005-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   642
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   643
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   644
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   645
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   646
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   647
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   648
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   649
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   650
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   651
CTestStepConvertCheckImplementationInfo::~CTestStepConvertCheckImplementationInfo()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   652
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   653
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   654
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   655
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   656
void CTestStepConvertCheckImplementationInfo::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   657
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   658
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   659
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   660
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   661
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   662
	iHasStartedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   663
	iHasFinishedConverting = EFalse;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   664
	if (aPreviousState == CMdaAudioClipUtility::EOpen
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   665
		&& aCurrentState == CMdaAudioClipUtility::EPlaying)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   666
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   667
		iHasStartedConverting = ETrue;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   668
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   669
	if (aPreviousState == CMdaAudioClipUtility::EPlaying
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   670
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   671
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   672
		iHasFinishedConverting = ETrue;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   673
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   674
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   675
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   676
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   677
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   678
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   679
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   680
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   681
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   682
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   683
TVerdict CTestStepConvertCheckImplementationInfo::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   684
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   685
	TVerdict verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   686
	if (verdict != EPass)	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   687
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   688
		return verdict;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   689
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   690
	TInt err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   691
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   692
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   693
	INFO_PRINTF1(_L("this is a test of CMMFMdaAudioConvertUtility::ControllerImplementationInformationL()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   694
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   695
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName7"), iFileName) ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   696
	   !GetStringFromConfig(_L("SectionOne"), _L("AudioFNameToConvert"), iFileName2) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   697
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   698
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   699
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   700
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   701
	// create the Convert utility
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   702
	if ( (iConvert = CMdaAudioConvertUtility::NewL(*this)) == NULL )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   703
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   704
		verdict = EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   705
		return verdict;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   706
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   707
	// create an empty target file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   708
	User::LeaveIfError(iFs.Connect());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   709
	err = iFile.Replace(iFs, iFileName2, EFileWrite);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   710
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   711
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   712
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   713
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   714
	err = iFile.SetSize(0);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   715
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   716
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   717
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   718
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   719
	iFile.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   720
	iFs.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   721
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   722
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   723
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   724
	INFO_PRINTF1(_L("CMMFMdaAudioConvertUtility::ControllerImplementationInformationL()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   725
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   726
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   727
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   728
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   729
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   730
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   731
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   732
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   733
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   734
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   735
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   736
TVerdict CTestStepConvertCheckImplementationInfo::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   737
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   738
	//delete the output file 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   739
	CFileMan* fileMan;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   740
	iFs.Connect();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   741
	fileMan = CFileMan::NewL(iFs);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   742
	fileMan->Delete(iFileName2);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   743
	iFs.Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   744
	delete fileMan;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   745
	fileMan = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   746
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   747
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   748
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   749
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   750
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   751
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   752
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   753
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   754
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   755
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   756
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   757
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   758
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   759
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   760
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   761
TVerdict CTestStepConvertCheckImplementationInfo::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   762
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   763
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   764
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   765
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   766
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   767
	iConvert->OpenL(iFileName, iFileName2 );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   768
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   769
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   770
	if (iError != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   771
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   772
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   773
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   774
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   775
	const CMMFControllerImplementationInformation* info = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   776
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   777
	TRAP(err, info = &iConvert->ControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   778
	TBuf<40> displayName;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   779
	displayName.Copy(info->DisplayName());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   780
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   781
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   782
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   783
		return EFail;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   784
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   785
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   786
	iConvert->Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   787
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   788
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName7"), iFileName) ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   789
	   !GetStringFromConfig(_L("SectionOne"), _L("AudioFNameToConvert"), iFileName2) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   790
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   791
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   792
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   793
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   794
	iClipLocationSrc = new(ELeave) TMdaFileClipLocation(iFileName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   795
	iClipLocationDest = new(ELeave) TMdaFileClipLocation(iFileName2);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   796
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   797
	TRAP( err, iConvert->OpenL(iClipLocationSrc,iClipLocationDest,TUid::Uid(KUidTestController),KNullUid,KFourCCNULL));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   798
	if (err != KErrNone)	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   799
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   800
		return EInconclusive;		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   801
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   802
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   803
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   804
	if (iError != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   805
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   806
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   807
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   808
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   809
	TRAP(err, info = &iConvert->ControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   810
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   811
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   812
		return EFail;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   813
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   814
			
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   815
	if(info->DisplayName().Compare(displayName) != 0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   816
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   817
		iTestStepResult = EPass;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   818
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   819
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   820
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   821
		iTestStepResult = EFail;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   822
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   823
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   824
	delete iClipLocationSrc;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   825
	iClipLocationSrc = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   826
	delete iClipLocationDest;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   827
	iClipLocationDest = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   828
	delete iConvert;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   829
	iConvert = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   830
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   831
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   832
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   833
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   834
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   835
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   836