mmlibs/mmfw/tsrc/mmfunittest/aclnt/TSU_MMF_ACLNT_01/TESTSTEPRecorderVARIOUS.cpp
author hgs
Tue, 02 Nov 2010 12:28:51 +0000
changeset 6 fe9d1bf55678
parent 0 b8ed18f6c07b
permissions -rw-r--r--
2010wk46_02
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
//#include <MdaAudioToneRecorder.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    33
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    34
// Test system includes
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    35
#include <testframework.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    36
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    37
// Specific includes for this test suite
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    38
#include "TestStepUnitMMFAudClient.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    39
#include "TestSuiteUnitMMFAudClient.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    40
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    41
// Specific includes for these test steps
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    42
#include "TestStepRecorder.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    43
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    44
#include "mmfclientaudiorecorder.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    45
#include "../../ctlfrm/TS_Codes.h"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    46
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    47
_LIT(KAudioControllerName,"Symbian Audio Wav Test controller");
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
 * Static constructor for CTestStepRecorderGetImplementationInfo.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    56
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    57
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    58
 * @return	"CTestStepRecorderGetImplementationInfo*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    59
 *			The constructed CTestStepRecorderGetImplementationInfo
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    60
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    61
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    62
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    63
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    64
CTestStepRecorderGetImplementationInfo* CTestStepRecorderGetImplementationInfo::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    65
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    66
	CTestStepRecorderGetImplementationInfo* self = new(ELeave) CTestStepRecorderGetImplementationInfo;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    67
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    68
	}
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
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    73
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    74
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    75
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    76
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    77
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    78
CTestStepRecorderGetImplementationInfo::CTestStepRecorderGetImplementationInfo() 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    79
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    80
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    81
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    82
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    83
	iTestStepName = _L("MM-MMF-ACLNT-U-0271-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    84
	}
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
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    89
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    90
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    91
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    92
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    93
CTestStepRecorderGetImplementationInfo::~CTestStepRecorderGetImplementationInfo()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    94
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    95
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    96
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    97
void CTestStepRecorderGetImplementationInfo::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    98
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    99
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   100
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   101
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   102
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   103
	if (aPreviousState == CMdaAudioClipUtility::ENotReady
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   104
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   105
		iIsOpen = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   106
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   107
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   108
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   109
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   110
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   111
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   112
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   113
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   114
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   115
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   116
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   117
enum TVerdict CTestStepRecorderGetImplementationInfo::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   118
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   119
	enum TVerdict verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   120
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   121
	verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   122
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   123
		return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   124
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   125
	 if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName1"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   126
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   127
		 //INFO_PRINTF2(_L("file name %s not found..."), fileptr);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   128
		 return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   129
		}
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 test is a test of CMMFMdaAudioRecorderUtility::ControllerImplementationInformationL()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   134
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   135
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   136
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   137
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   138
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   139
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   140
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   141
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   142
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   143
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   144
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   145
enum TVerdict CTestStepRecorderGetImplementationInfo::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   146
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   147
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   148
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   149
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   150
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   151
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   152
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   153
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   154
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   155
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   156
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   157
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   158
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   159
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   160
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   161
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   162
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   163
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   164
TVerdict CTestStepRecorderGetImplementationInfo::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   165
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   166
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   167
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   168
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   169
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   170
	iRecorder = CMMFMdaAudioRecorderUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   171
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   172
	TRAP(err, iRecorder->OpenFileL(iFileName));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   173
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   174
	if (err != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   175
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   176
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   177
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   178
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   179
	if (iError != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   180
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   181
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   182
	const CMMFControllerImplementationInformation* info = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   183
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   184
	TRAP(err, info = &iRecorder->AudioPlayControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   185
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   186
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   187
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   188
	if (info->DisplayName().Compare(KAudioControllerName)!=0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   189
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   190
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   191
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   192
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   193
	TRAP(err, info = &iRecorder->AudioRecorderControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   194
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   195
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   196
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   197
	if (info->DisplayName().Compare(KAudioControllerName)!=0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   198
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   199
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   200
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   201
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   202
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   203
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   204
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   205
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   206
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   207
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   208
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   209
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   210
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   211
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   212
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   213
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   214
// --------------------------------------------
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   215
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   216
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   217
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   218
 * Static constructor for CTestStepRecorderSendCustomCommandSync.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   219
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   220
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   221
 * @return	"CTestStepRecorderSendCustomCommandSync*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   222
 *			The constructed CTestStepRecorderSendCustomCommandSync
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   223
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   224
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   225
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   226
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   227
CTestStepRecorderSendCustomCommandSync* CTestStepRecorderSendCustomCommandSync::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   228
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   229
	CTestStepRecorderSendCustomCommandSync* self = new(ELeave) CTestStepRecorderSendCustomCommandSync;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   230
	return self;
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
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   235
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   236
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   237
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   238
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   239
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   240
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   241
CTestStepRecorderSendCustomCommandSync::CTestStepRecorderSendCustomCommandSync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   242
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   243
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   244
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   245
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   246
	iTestStepName = _L("MM-MMF-ACLNT-U-0272-HP");
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 destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   252
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   253
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   254
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   255
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   256
CTestStepRecorderSendCustomCommandSync::~CTestStepRecorderSendCustomCommandSync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   257
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   258
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   259
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   260
void CTestStepRecorderSendCustomCommandSync::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   261
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   262
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   263
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   264
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   265
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   266
	if (aPreviousState == CMdaAudioClipUtility::ENotReady
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   267
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   268
		iIsOpen = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   269
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   270
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   271
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   272
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   273
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   274
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   275
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   276
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   277
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   278
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   279
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   280
enum TVerdict CTestStepRecorderSendCustomCommandSync::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   281
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   282
	enum TVerdict verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   283
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   284
	verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   285
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   286
		return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   287
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   288
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioFNameTestController"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   289
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   290
		 //INFO_PRINTF2(_L("file name %s not found..."), fileptr);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   291
		 return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   292
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   293
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   294
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   295
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   296
	INFO_PRINTF1(_L("this test is a test of CMMFMdaAudioRecorderUtility::CustomCommandSync()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   297
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   298
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   299
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   300
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   301
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   302
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   303
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   304
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   305
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   306
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   307
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   308
enum TVerdict CTestStepRecorderSendCustomCommandSync::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   309
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   310
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   311
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   312
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   313
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   314
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   315
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   316
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   317
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   318
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   319
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   320
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   321
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   322
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   323
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   324
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   325
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   326
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   327
TVerdict CTestStepRecorderSendCustomCommandSync::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   328
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   329
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   330
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   331
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   332
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   333
	iRecorder = CMMFMdaAudioRecorderUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   334
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   335
	TUid testController = TUid::Uid(KUidTestController);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   336
	TRAP(err, iRecorder->OpenFileL(iFileName,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   337
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   338
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   339
									KNullUid));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   340
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   341
	if (err!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   342
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   343
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   344
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   345
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   346
	if (iError!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   347
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   348
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   349
	TUid uid;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   350
	uid = TUid::Uid(0x101f72B4);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   351
	TMMFMessageDestinationPckg destPckg(uid);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   352
	// test without a return value
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   353
	err = iRecorder->RecordControllerCustomCommandSync(destPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   354
								EMMFTestCustomCommandGeneralSynchronous,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   355
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   356
								KSecondParameter);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   357
								
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   358
	if (err!=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   359
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   360
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   361
	TBuf8<256> buf;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   362
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   363
	err = iRecorder->RecordControllerCustomCommandSync(destPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   364
								EMMFTestCustomCommandGeneralSynchronousWithReturn,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   365
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   366
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   367
								buf);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   368
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   369
	if (err!=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   370
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   371
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   372
	if (buf.Compare(KReturnParameter)==0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   373
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   374
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   375
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   376
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   377
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   378
	err = iRecorder->PlayControllerCustomCommandSync(destPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   379
								EMMFTestCustomCommandGeneralSynchronous,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   380
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   381
								KSecondParameter);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   382
								
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   383
	if (err!=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   384
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   385
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   386
	err = iRecorder->PlayControllerCustomCommandSync(destPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   387
								EMMFTestCustomCommandGeneralSynchronousWithReturn,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   388
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   389
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   390
								buf);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   391
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   392
	if (err!=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   393
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   394
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   395
	if (buf.Compare(KReturnParameter)==0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   396
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   397
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   398
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   399
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   400
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   401
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   402
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   403
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   404
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   405
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   406
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   407
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   408
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   409
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   410
//
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
 * Static constructor for CTestStepRecorderSendCustomCommandAsync.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   418
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   419
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   420
 * @return	"CTestStepRecorderSendCustomCommandAsync*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   421
 *			The constructed CTestStepRecorderSendCustomCommandAsync
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   422
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   423
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   424
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   425
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   426
CTestStepRecorderSendCustomCommandAsync* CTestStepRecorderSendCustomCommandAsync::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   427
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   428
	CTestStepRecorderSendCustomCommandAsync* self = new(ELeave) CTestStepRecorderSendCustomCommandAsync;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   429
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   430
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   431
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   432
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   433
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   434
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   435
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   436
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   437
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   438
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   439
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   440
CTestStepRecorderSendCustomCommandAsync::CTestStepRecorderSendCustomCommandAsync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   441
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   442
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   443
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   444
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   445
	iTestStepName = _L("MM-MMF-ACLNT-U-0273-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   446
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   447
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   448
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   449
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   450
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   451
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   452
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   453
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   454
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   455
CTestStepRecorderSendCustomCommandAsync::~CTestStepRecorderSendCustomCommandAsync()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   456
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   457
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   458
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   459
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   460
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   461
 * Test step Close
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   462
 * handles all deletion
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   463
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   464
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   465
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   466
void CTestStepRecorderSendCustomCommandAsync::Close()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   467
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   468
	delete iAsyncObserver;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   469
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   470
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   471
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   472
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   473
 * Implementation of the MVideoRecorderUtilityObserver interface functions
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   474
 **/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   475
void CTestStepRecorderSendCustomCommandAsync::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   476
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   477
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   478
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   479
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   480
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   481
	if (aPreviousState == CMdaAudioClipUtility::ENotReady
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   482
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   483
		iIsOpen = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   484
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   485
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   486
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   487
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   488
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   489
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   490
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   491
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   492
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   493
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   494
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   495
enum TVerdict CTestStepRecorderSendCustomCommandAsync::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   496
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   497
	enum TVerdict verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   498
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   499
	verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   500
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   501
		return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   502
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   503
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioFNameTestController"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   504
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   505
		 //INFO_PRINTF2(_L("file name %s not found..."), fileptr);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   506
		 return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   507
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   508
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   509
	iAsyncObserver = new (ELeave) CAsyncObserver;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   510
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   511
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   512
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   513
	INFO_PRINTF1(_L("this test is a test of CMMFMdaAudioRecorderUtility::CustomCommandAsync()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   514
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   515
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   516
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   517
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   518
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   519
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   520
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   521
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   522
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   523
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   524
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   525
enum TVerdict CTestStepRecorderSendCustomCommandAsync::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   526
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   527
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   528
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   529
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   530
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   531
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   532
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   533
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   534
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   535
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   536
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   537
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   538
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   539
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   540
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   541
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   542
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   543
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   544
TVerdict CTestStepRecorderSendCustomCommandAsync::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   545
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   546
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   547
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   548
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   549
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   550
	iRecorder = CMMFMdaAudioRecorderUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   551
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   552
	TUid testController= TUid::Uid(KUidTestController);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   553
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   554
	TRAP(err, iRecorder->OpenFileL(iFileName,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   555
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   556
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   557
									KNullUid));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   558
	if (err!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   559
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   560
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   561
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   562
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   563
	if (iError!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   564
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   565
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   566
	TUid uid;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   567
	uid = TUid::Uid(0x101f72B4);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   568
	// destinationPckg can be temporary as the asynchronous custom command returns before the temporary variable goes out of scope
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   569
	TMMFMessageDestinationPckg destinationPckg(uid);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   570
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   571
	// test without a return value
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   572
	iRecorder->RecordControllerCustomCommandAsync(destinationPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   573
								EMMFTestCustomCommandGeneralAsynchronous,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   574
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   575
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   576
								iAsyncObserver->ActiveStatus());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   577
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   578
	CActiveScheduler::Start();	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   579
	if (iAsyncObserver->iStatus.Int() !=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   580
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   581
								
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   582
	TBuf8<256> buf;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   583
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   584
	iRecorder->RecordControllerCustomCommandAsync(destinationPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   585
								EMMFTestCustomCommandGeneralAsynchronousWithReturn,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   586
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   587
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   588
								buf,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   589
								iAsyncObserver->ActiveStatus());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   590
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   591
	CActiveScheduler::Start();	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   592
	if (iAsyncObserver->iStatus.Int() !=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   593
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   594
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   595
	if (buf.Compare(KReturnParameter)==0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   596
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   597
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   598
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   599
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   600
		// test without a return value
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   601
	iRecorder->PlayControllerCustomCommandAsync(destinationPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   602
								EMMFTestCustomCommandGeneralAsynchronous,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   603
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   604
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   605
								iAsyncObserver->ActiveStatus());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   606
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   607
	CActiveScheduler::Start();	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   608
	if (iAsyncObserver->iStatus.Int() !=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   609
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   610
								
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   611
	iRecorder->PlayControllerCustomCommandAsync(destinationPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   612
								EMMFTestCustomCommandGeneralAsynchronousWithReturn,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   613
								KFirstParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   614
								KSecondParameter,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   615
								buf,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   616
								iAsyncObserver->ActiveStatus());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   617
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   618
	CActiveScheduler::Start();	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   619
	if (iAsyncObserver->iStatus.Int() !=KTestCustomCommandSuccess)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   620
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   621
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   622
	if (buf.Compare(KReturnParameter)==0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   623
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   624
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   625
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   626
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   627
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   628
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   629
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   630
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   631
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   632
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   633
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   634
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   635
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   636
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   637
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   638
// --------------------------------------------
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   639
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   640
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   641
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   642
 * Static constructor for CTestStepRecorderReloadingTest.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   643
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   644
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   645
 * @return	"CTestStepRecorderReloadingTest*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   646
 *			The constructed CTestStepRecorderReloadingTest
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
CTestStepRecorderReloadingTest* CTestStepRecorderReloadingTest::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   652
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   653
	CTestStepRecorderReloadingTest* self = new(ELeave) CTestStepRecorderReloadingTest;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   654
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   655
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   656
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   657
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   658
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   659
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   660
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   661
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   662
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   663
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   664
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   665
CTestStepRecorderReloadingTest::CTestStepRecorderReloadingTest()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   666
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   667
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   668
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   669
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   670
	iTestStepName = _L("MM-MMF-ACLNT-U-0274-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   671
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   672
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   673
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   674
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   675
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   676
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   677
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   678
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   679
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   680
CTestStepRecorderReloadingTest::~CTestStepRecorderReloadingTest()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   681
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   682
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   683
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   684
void CTestStepRecorderReloadingTest::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   685
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   686
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   687
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   688
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   689
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   690
	if (aPreviousState == CMdaAudioClipUtility::ENotReady
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   691
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   692
		iIsOpen = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   693
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   694
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   695
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   696
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   697
void CTestStepRecorderReloadingTest::MaloLoadingStarted()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   698
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   699
	iLoadingStarted = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   700
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   701
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   702
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   703
void CTestStepRecorderReloadingTest::MaloLoadingComplete()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   704
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   705
	iLoadingComplete = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   706
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   707
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   708
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   709
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   710
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   711
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   712
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   713
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   714
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   715
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   716
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   717
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   718
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   719
enum TVerdict CTestStepRecorderReloadingTest::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   720
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   721
	enum TVerdict verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   722
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   723
	verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   724
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   725
		return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   726
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   727
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioFNameTestController"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   728
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   729
		 //INFO_PRINTF2(_L("file name %s not found..."), fileptr);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   730
		 return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   731
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   732
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   733
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   734
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   735
	INFO_PRINTF1(_L("this test simulates Audio Reloading and tests CMMFMdaAudioRecorderUtility::GetAudioLoadingProgressL"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   736
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   737
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   738
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   739
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   740
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   741
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   742
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   743
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   744
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   745
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   746
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   747
enum TVerdict CTestStepRecorderReloadingTest::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   748
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   749
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   750
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   751
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   752
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   753
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   754
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   755
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   756
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   757
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   758
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   759
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   760
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   761
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   762
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   763
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   764
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   765
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   766
TVerdict CTestStepRecorderReloadingTest::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   767
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   768
	TInt err;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   769
	err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   770
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   771
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   772
	iRecorder = CMMFMdaAudioRecorderUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   773
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   774
	TUid testController = TUid::Uid(KUidTestController);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   775
	TRAP(err, iRecorder->OpenFileL(iFileName,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   776
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   777
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   778
									KNullUid));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   779
	if (err!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   780
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   781
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   782
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   783
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   784
	if (iError!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   785
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   786
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   787
	iRecorder->RegisterForAudioLoadingNotification(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   788
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   789
	TUid uid;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   790
	uid = TUid::Uid(0x101f72B4);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   791
	TMMFMessageDestinationPckg destPckg(uid);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   792
	// test without a return value
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   793
	err = iRecorder->PlayControllerCustomCommandSync(destPckg,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   794
								EMMFTestCustomCommandSimulateReloading,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   795
								KNullDesC8,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   796
								KNullDesC8);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   797
								
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   798
	if (err!=KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   799
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   800
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   801
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   802
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   803
	if (!iLoadingStarted)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   804
		return EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   805
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   806
	TInt percentageComplete = 0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   807
	TInt oldPercentageComplete =0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   808
	while (percentageComplete!=100 && percentageComplete>=oldPercentageComplete)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   809
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   810
		oldPercentageComplete = percentageComplete;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   811
		iRecorder->GetAudioLoadingProgressL(percentageComplete);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   812
		INFO_PRINTF2(_L("Loading progress: %d"),percentageComplete);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   813
		User::After(100);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   814
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   815
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   816
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   817
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   818
	if (iLoadingComplete && percentageComplete==100)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   819
		iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   820
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   821
		iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   822
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   823
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   824
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   825
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   826
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   827
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   828
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   829
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   830
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   831
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   832
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   833
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   834
 * Static constructor for CTestStepRecorderCheckPlayImplementationInfo.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   835
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   836
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   837
 * @return	"CTestStepRecorderCheckPlayImplementationInfo*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   838
 *			The constructed CTestStepRecorderCheckPlayImplementationInfo
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   839
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   840
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   841
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   842
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   843
CTestStepRecorderCheckPlayImplementationInfo* CTestStepRecorderCheckPlayImplementationInfo::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   844
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   845
	CTestStepRecorderCheckPlayImplementationInfo* self = new(ELeave) CTestStepRecorderCheckPlayImplementationInfo;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   846
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   847
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   848
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   849
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   850
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   851
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   852
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   853
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   854
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   855
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   856
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   857
CTestStepRecorderCheckPlayImplementationInfo::CTestStepRecorderCheckPlayImplementationInfo() 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   858
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   859
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   860
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   861
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   862
	iTestStepName = _L("MM-MMF-ACLNT-U-1006-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   863
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   864
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   865
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   866
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   867
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   868
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   869
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   870
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   871
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   872
CTestStepRecorderCheckPlayImplementationInfo::~CTestStepRecorderCheckPlayImplementationInfo()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   873
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   874
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   875
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   876
void CTestStepRecorderCheckPlayImplementationInfo::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   877
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   878
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   879
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   880
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   881
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   882
	if (aPreviousState == CMdaAudioClipUtility::ENotReady
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   883
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   884
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   885
		iIsOpen = ETrue;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   886
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   887
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   888
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   889
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   890
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   891
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   892
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   893
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   894
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   895
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   896
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   897
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   898
TVerdict CTestStepRecorderCheckPlayImplementationInfo::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   899
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   900
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   901
	TVerdict verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   902
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   903
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   904
		return verdict;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   905
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   906
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   907
	 if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName1"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   908
		{	 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   909
		 return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   910
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   911
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   912
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   913
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   914
	INFO_PRINTF1(_L("this test is a test of CMMFMdaAudioRecorderUtility::ControllerImplementationInformationL()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   915
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   916
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   917
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   918
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   919
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   920
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   921
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   922
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   923
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   924
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   925
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   926
enum TVerdict CTestStepRecorderCheckPlayImplementationInfo::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   927
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   928
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   929
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   930
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   931
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   932
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   933
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   934
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   935
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   936
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   937
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   938
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   939
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   940
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   941
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   942
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   943
TVerdict CTestStepRecorderCheckPlayImplementationInfo::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   944
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   945
	TInt err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   946
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   947
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   948
	iRecorder = CMMFMdaAudioRecorderUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   949
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   950
	TRAP(err, iRecorder->OpenFileL(iFileName));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   951
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   952
	if (err != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   953
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   954
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   955
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   956
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   957
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   958
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   959
	if (iError != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   960
		{	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   961
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   962
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   963
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   964
	const CMMFControllerImplementationInformation* info = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   965
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   966
	TRAP(err, info = &iRecorder->AudioPlayControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   967
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   968
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   969
		return EFail;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   970
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   971
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   972
	TBuf<40> displayName;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   973
	displayName.Copy(info->DisplayName());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   974
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   975
	iRecorder->Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   976
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   977
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioFNameTestController"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   978
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   979
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   980
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   981
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   982
	TUid testController = TUid::Uid(KUidTestController);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   983
	TRAP(err, iRecorder->OpenFileL(iFileName,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   984
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   985
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   986
									KNullUid));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   987
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   988
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   989
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   990
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   991
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   992
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   993
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   994
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   995
	if (iError != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   996
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   997
		return EInconclusive;		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   998
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   999
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1000
	TRAP(err, info = &iRecorder->AudioPlayControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1001
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1002
	if(info->DisplayName().Compare(displayName) != 0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1003
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1004
		iTestStepResult = EPass;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1005
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1006
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1007
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1008
		iTestStepResult = EFail;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1009
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1010
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1011
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1012
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1013
			
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1014
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1015
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1016
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1017
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1018
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1019
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1020
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1021
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1022
 * Static constructor for CTestStepRecorderCheckRecordImplementationInfo.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1023
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1024
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1025
 * @return	"CTestStepRecorderCheckRecordImplementationInfo*"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1026
 *			The constructed CTestStepRecorderCheckRecordImplementationInfo
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1027
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1028
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1029
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1030
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1031
CTestStepRecorderCheckRecordImplementationInfo* CTestStepRecorderCheckRecordImplementationInfo::NewL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1032
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1033
	CTestStepRecorderCheckRecordImplementationInfo* self = new(ELeave) CTestStepRecorderCheckRecordImplementationInfo;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1034
	return self;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1035
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1036
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1037
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1038
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1039
 * Test step constructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1040
 * Each test step initialises its own name.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1041
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1042
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1043
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1044
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1045
CTestStepRecorderCheckRecordImplementationInfo::CTestStepRecorderCheckRecordImplementationInfo() 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1046
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1047
	iTestStepResult = EPass;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1048
	// store the name of this test case
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1049
	// this is the name that is used by the script file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1050
	iTestStepName = _L("MM-MMF-ACLNT-U-1007-HP");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1051
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1052
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1053
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1054
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1055
 * Test step destructor.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1056
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1057
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1058
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1059
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1060
CTestStepRecorderCheckRecordImplementationInfo::~CTestStepRecorderCheckRecordImplementationInfo()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1061
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1062
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1063
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1064
void CTestStepRecorderCheckRecordImplementationInfo::MoscoStateChangeEvent(CBase* /*aObject*/,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1065
														  TInt aPreviousState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1066
														  TInt aCurrentState,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1067
														  TInt aErrorcCode)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1068
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1069
	iError = aErrorcCode;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1070
	if (aPreviousState == CMdaAudioClipUtility::ENotReady
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1071
		&& aCurrentState == CMdaAudioClipUtility::EOpen)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1072
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1073
		iIsOpen = ETrue;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1074
		}		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1075
	CActiveScheduler::Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1076
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1077
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1078
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1079
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1080
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1081
 * Test step Preamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1082
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1083
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1084
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1085
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1086
TVerdict CTestStepRecorderCheckRecordImplementationInfo::DoTestStepPreambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1087
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1088
	// this installs the scheduler
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1089
	TVerdict verdict = CTestStepUnitMMFAudClient::DoTestStepPreambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1090
	if (verdict != EPass)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1091
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1092
		return verdict;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1093
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1094
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1095
	 if(!GetStringFromConfig(_L("SectionOne"), _L("AudioPlayFName1"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1096
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1097
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1098
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1099
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1100
	// Printing to the console and log file
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1101
	INFO_PRINTF1(iTestStepName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1102
	INFO_PRINTF1(_L("this test is a test of CMMFMdaAudioRecorderUtility::ControllerImplementationInformationL()"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1103
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1104
	return verdict;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1105
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1106
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1107
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1108
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1109
 * Test step Postamble.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1110
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1111
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1112
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1113
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1114
enum TVerdict CTestStepRecorderCheckRecordImplementationInfo::DoTestStepPostambleL(void)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1115
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1116
	//[ Destroy the scheduler ]
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1117
	return CTestStepUnitMMFAudClient::DoTestStepPostambleL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1118
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1119
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1120
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1121
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1122
 * Do the test step.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1123
 * Each test step must supply an implementation for DoTestStepL.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1124
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1125
 * @return	"TVerdict"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1126
 *			The result of the test step
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1127
 *
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1128
 * @xxxx
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1129
 * 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1130
 */
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1131
TVerdict CTestStepRecorderCheckRecordImplementationInfo::DoTestStepL()
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1132
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1133
	TInt err = KErrNone;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1134
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1135
	iTestStepResult = EFail;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1136
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1137
	iRecorder = CMMFMdaAudioRecorderUtility::NewL(*this);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1138
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1139
	TRAP(err, iRecorder->OpenFileL(iFileName));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1140
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1141
	if (err != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1142
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1143
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1144
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1145
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1146
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1147
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1148
	if (iError != KErrNone) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1149
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1150
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1151
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1152
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1153
	const CMMFControllerImplementationInformation* info = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1154
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1155
	TRAP(err, info = &iRecorder->AudioRecorderControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1156
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1157
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1158
		return EFail;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1159
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1160
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1161
	TBuf<40> displayName;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1162
	displayName.Copy(info->DisplayName());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1163
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1164
	iRecorder->Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1165
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1166
	if(!GetStringFromConfig(_L("SectionOne"), _L("AudioFNameTestController"), iFileName))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1167
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1168
		return EInconclusive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1169
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1170
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1171
	TUid testController = TUid::Uid(KUidTestController);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1172
	TRAP(err, iRecorder->OpenFileL(iFileName,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1173
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1174
									testController,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1175
									KNullUid));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1176
	if (err != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1177
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1178
		return EInconclusive;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1179
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1180
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1181
	CActiveScheduler::Start();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1182
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1183
	if (iError != KErrNone)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1184
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1185
		return EInconclusive;		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1186
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1187
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1188
	TRAP(err, info = &iRecorder->AudioRecorderControllerImplementationInformationL());
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1189
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1190
	if(info->DisplayName().Compare(displayName) != 0)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1191
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1192
		iTestStepResult = EPass;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1193
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1194
	else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1195
		{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1196
		iTestStepResult = EFail;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1197
		}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1198
		
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1199
	delete iRecorder;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1200
	iRecorder = NULL;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1201
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1202
	INFO_PRINTF1(_L("finished with this test step"));
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1203
	// test steps return a result
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1204
	return iTestStepResult;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1205
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1206
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
  1207