1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/mm/mmlibs/mmfw/tsrc/mmfunittest/srssnk/TSU_MMF_SRSSNK.h Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,2752 @@
1.4 +// Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
1.5 +// All rights reserved.
1.6 +// This component and the accompanying materials are made available
1.7 +// under the terms of "Eclipse Public License v1.0"
1.8 +// which accompanies this distribution, and is available
1.9 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
1.10 +//
1.11 +// Initial Contributors:
1.12 +// Nokia Corporation - initial contribution.
1.13 +//
1.14 +// Contributors:
1.15 +//
1.16 +// Description:
1.17 +//
1.18 +
1.19 +#ifndef __TSU_MMF_SRSSNK_H__
1.20 +#define __TSU_MMF_SRSSNK_H__
1.21 +
1.22 +#include <e32math.h>
1.23 +
1.24 +#include <testframework.h>
1.25 +#include <mmf/server/mmfdatapath.h>
1.26 +
1.27 +#include "CmmfTestControllerUIDs.hrh"
1.28 +#include <mmf/plugin/mmfformatimplementationuids.hrh>
1.29 +#include "TS_Codes.h"
1.30 +
1.31 +#include <mmf/common/mmffourcc.h>
1.32 +#include <mmf/common/mmfcontroller.h>
1.33 +#include <mmf/server/mmfdes.h>
1.34 +#include <mmf/server/mmffile.h>
1.35 +#include <mmf/server/mmfurl.h>
1.36 +#include <mmf/server/mmfaudioinput.h>
1.37 +#include <mmf/server/mmfaudiooutput.h>
1.38 +#include "../../../../../mmplugins/mmfwplugins/src/Plugin/Format/MmfWAVFormat/mmfwavformat.h"
1.39 +
1.40 +const TInt KTestBufferSize = 1032; // 1024 + 8
1.41 +const TInt KTestDataSize = 51200; // 50K
1.42 +const TInt KTestOverDataSize = KTestDataSize + 20;
1.43 +
1.44 +const TInt KTestReadSize = KTestBufferSize/2;
1.45 +const TInt KTestOverReadSize = KTestBufferSize + 10;
1.46 +
1.47 +const TInt KTestWriteSize = KTestBufferSize/2;
1.48 +const TInt KTestOverWriteSize = KTestBufferSize + 10;
1.49 +
1.50 +class CTestSuite;
1.51 +class CTestSuite_MMF_SRSSNK;
1.52 +
1.53 +enum TSourceType
1.54 + {
1.55 + ESourceTypeDes,
1.56 + ESourceTypeFile,
1.57 + ESourceTypeFileHandle,
1.58 + ESourceTypeAudio
1.59 + };
1.60 +
1.61 +enum TSinkType
1.62 + {
1.63 + ESinkTypeFile,
1.64 + ESinkTypeFileHandle
1.65 + };
1.66 +
1.67 +
1.68 +class TThreadData
1.69 + {
1.70 +public:
1.71 + TThreadData()
1.72 + : iFileSize(-1), iErr(KErrNone)
1.73 + { }
1.74 +
1.75 +public:
1.76 + CMMFFile* iFilePtr;
1.77 + MAsyncEventHandler *iEventHandler;
1.78 + TInt iFileSize;
1.79 + TInt iErr;
1.80 + };
1.81 +
1.82 +const TUid KTestDummyUid = { -1 };
1.83 +class CMMFTestBuffer : public CMMFBuffer
1.84 + {
1.85 +public:
1.86 + CMMFTestBuffer()
1.87 + : CMMFBuffer(KTestDummyUid)
1.88 + { }
1.89 +
1.90 + TUint BufferSize() const
1.91 + { return 0; }
1.92 + };
1.93 +
1.94 +
1.95 +MDataSink* CreateFileSinkL(TSinkType aSinkType, RFs& aFs, const TDesC& aFileName);
1.96 +MDataSource* CreateFileSourceL(TSourceType aSourceType, RFs& aFs, const TDesC& aFileName);
1.97 +MDataSource* CreateFileHandleSourceL(RFs& aFs, const TDesC& aFileName);
1.98 +
1.99 +class CMMFDummySource : public CBase, public MDataSource, public MAsyncEventHandler
1.100 + {
1.101 +public:
1.102 + CMMFDummySource();
1.103 +
1.104 + void SetExpectedEmptyCount(TInt aExpectedEmptyCount)
1.105 + { iExpectedEmptyCount = aExpectedEmptyCount; }
1.106 +
1.107 + TBool BufferEmptiedOk()
1.108 + {
1.109 + TBool bufferEmptiedOk = iBufferEmptiedOk;
1.110 + if (bufferEmptiedOk)
1.111 + ResetBufferEmptiedOk();
1.112 +
1.113 + return bufferEmptiedOk;
1.114 + }
1.115 +
1.116 + void ResetBufferEmptiedOk()
1.117 + { iBufferEmptiedOk = EFalse ; iEmptyCount = 0 ; iErrorCount = 0 ; iExpectedEmptyCount = 1; }
1.118 +
1.119 + // From MDataSource
1.120 + TFourCC SourceDataTypeCode(TMediaId aMediaId);
1.121 + void FillBufferL(CMMFBuffer* aBuffer, MDataSink* aConsumer, TMediaId aMediaId);
1.122 + void BufferEmptiedL(CMMFBuffer* aBuffer);
1.123 + TBool CanCreateSourceBuffer();
1.124 + CMMFBuffer* CreateSourceBufferL(TMediaId aMediaId, TBool &aReference);
1.125 +
1.126 + // MAsyncEventHandler
1.127 + TInt SendEventToClient(const TMMFEvent& aEvent);
1.128 +
1.129 + TInt Error()
1.130 + { ResetBufferEmptiedOk() ; return iError; }
1.131 +
1.132 + TInt ErrorCount()
1.133 + { return iErrorCount; }
1.134 +
1.135 + void SetFillBuffer()
1.136 + { iFillBuffer = ETrue; }
1.137 +
1.138 + void SetActiveScheduler()
1.139 + { iActiveScheduler = CActiveScheduler::Current(); }
1.140 +
1.141 + void ClearActiveScheduler()
1.142 + { iActiveScheduler = NULL; }
1.143 +
1.144 + CMMFBuffer* MmfBuffer()
1.145 + { return iBuffer; }
1.146 +
1.147 +protected:
1.148 + void ConstructSourceL(const TDesC8& aInitData);
1.149 +
1.150 +private:
1.151 + TFourCC iSourceDataTypeCode;
1.152 + TBool iBufferEmptiedOk;
1.153 +
1.154 + TInt iEmptyCount;
1.155 + TInt iExpectedEmptyCount;
1.156 +
1.157 + CActiveScheduler *iActiveScheduler;
1.158 + TInt iError;
1.159 + TInt iErrorCount;
1.160 +
1.161 + TBool iFillBuffer;
1.162 +
1.163 + CMMFBuffer* iBuffer; // buffer returned in BufferEmptiedL callback
1.164 + };
1.165 +
1.166 +
1.167 +class CMMFDummySink : public CBase, public MDataSink, public MAsyncEventHandler
1.168 + {
1.169 +public:
1.170 + CMMFDummySink();
1.171 +
1.172 + void SetExpectedFillCount(TInt aExpectedFillCount)
1.173 + { iExpectedFillCount = aExpectedFillCount; }
1.174 +
1.175 + TBool BufferFilledOk()
1.176 + {
1.177 + TBool bufferFilledOk = iBufferFilledOk;
1.178 + if (bufferFilledOk)
1.179 + ResetBufferFilledOk();
1.180 +
1.181 + return bufferFilledOk;
1.182 + }
1.183 +
1.184 + void ResetBufferFilledOk()
1.185 + { iBufferFilledOk = EFalse ; iFillCount = 0 ; iErrorCount = 0 ; iExpectedFillCount = 1; }
1.186 +
1.187 + void BufferFilledError();
1.188 +
1.189 + // From MDataSink
1.190 + TFourCC SinkDataTypeCode(TMediaId aMediaId);
1.191 + void EmptyBufferL(CMMFBuffer* aBuffer, MDataSource* aSupplier, TMediaId aMediaId);
1.192 + void BufferFilledL(CMMFBuffer* aBuffer);
1.193 + TBool CanCreateSinkBuffer();
1.194 + CMMFBuffer* CreateSinkBufferL(TMediaId aMediaId, TBool &aReference);
1.195 +
1.196 + // MAsyncEventHandler
1.197 + TInt SendEventToClient(const TMMFEvent& aEvent);
1.198 +
1.199 + TInt Error()
1.200 + { ResetBufferFilledOk() ; return iError; }
1.201 +
1.202 + TInt ErrorCount()
1.203 + { return iErrorCount; }
1.204 +
1.205 + CMMFBuffer* MmfBuffer()
1.206 + { return iBuffer; }
1.207 +
1.208 +protected:
1.209 + void ConstructSinkL(const TDesC8& aInitData);
1.210 +
1.211 +private:
1.212 + TFourCC iSinkDataTypeCode;
1.213 + TBool iBufferFilledOk;
1.214 +
1.215 + TInt iFillCount;
1.216 + TInt iExpectedFillCount;
1.217 +
1.218 + CActiveScheduler *iActiveScheduler;
1.219 + TInt iError;
1.220 + TInt iErrorCount;
1.221 +
1.222 + CMMFBuffer* iBuffer; // buffer returned in BufferFilledL callback
1.223 + };
1.224 +
1.225 +class TTestStep
1.226 + {
1.227 +public:
1.228 + TTestStep()
1.229 + : iSource(NULL), iSink(NULL)
1.230 + { }
1.231 +
1.232 + TTestStep(MDataSource* aSource)
1.233 + : iSource(aSource), iSink(NULL)
1.234 + { }
1.235 +
1.236 + TTestStep(MDataSink* aSink)
1.237 + : iSource(NULL), iSink(aSink)
1.238 + { }
1.239 +
1.240 + TTestStep(MDataSource* aSource, MDataSink* aSink)
1.241 + : iSource(aSource), iSink(aSink)
1.242 + { }
1.243 +
1.244 + virtual TVerdict DoTestStepL() = 0;
1.245 +
1.246 + virtual void DoTestPreambleL();
1.247 + virtual TVerdict DoTestPostambleL(TBool aCheck);
1.248 + virtual TVerdict DoNegativeTestPostambleL();
1.249 + virtual MDataSource* CreateSourceL(TSourceType aSourceType, HBufC8* aDes);
1.250 +
1.251 +public:
1.252 + MDataSource* iSource;
1.253 + MDataSink* iSink;
1.254 + };
1.255 +
1.256 +
1.257 +class TFileTestStep : public TTestStep
1.258 + {
1.259 +public:
1.260 + TFileTestStep()
1.261 + : iFileFailureExpected(EFalse)
1.262 + { }
1.263 +
1.264 + TFileTestStep(MDataSource* aSource)
1.265 + : TTestStep(aSource), iFileFailureExpected(EFalse)
1.266 + { }
1.267 +
1.268 + TFileTestStep(MDataSink* aSink)
1.269 + : TTestStep(aSink), iFileFailureExpected(EFalse)
1.270 + { }
1.271 +
1.272 + TFileTestStep(MDataSource* aSource, MDataSink* aSink)
1.273 + : TTestStep(aSource, aSink), iFileFailureExpected(EFalse)
1.274 + { }
1.275 +
1.276 + TVerdict DoTestPostambleL(TBool aCheck);
1.277 +
1.278 +public:
1.279 + TBool iFileFailureExpected;
1.280 + };
1.281 +
1.282 +class TReadBufferTestStep : public TFileTestStep
1.283 + {
1.284 + public:
1.285 + TReadBufferTestStep(MDataSource* aSource, CMMFBuffer* aBuffer, TInt aPosition, const TDes8& aSourceDes)
1.286 + : TFileTestStep(aSource), iBuffer(aBuffer), iPosition(aPosition), iSourceDes(aSourceDes), iAsynchronousRead(EFalse)
1.287 + { InitRandomNumberGenerator(); }
1.288 +
1.289 + TReadBufferTestStep(MDataSource* aSource, CMMFBuffer* aBuffer, TInt aPosition, MDataSink* aSink, const TDes8& aSourceDes)
1.290 + : TFileTestStep(aSource, aSink), iBuffer(aBuffer), iPosition(aPosition), iSourceDes(aSourceDes), iAsynchronousRead(EFalse)
1.291 + { InitRandomNumberGenerator(); }
1.292 +
1.293 + void InitRandomNumberGenerator()
1.294 + {
1.295 + TTime seedTime;
1.296 + seedTime.UniversalTime();
1.297 + iSeed = seedTime.Int64();
1.298 + }
1.299 +
1.300 + void SetPosition(TInt aPosition)
1.301 + { iPosition = aPosition; }
1.302 +
1.303 + void SetAsynchronousRead(TBool aAsynchronousRead)
1.304 + { iAsynchronousRead = aAsynchronousRead; }
1.305 +
1.306 + void RandomiseBuffer();
1.307 + TInt CheckBuffer();
1.308 +
1.309 + public:
1.310 + CMMFBuffer* iBuffer;
1.311 + TInt64 iSeed;
1.312 +
1.313 + TInt iPosition;
1.314 + const TDes8& iSourceDes;
1.315 +
1.316 + TBool iAsynchronousRead;
1.317 + };
1.318 +
1.319 +class TWriteBufferTestStep : public TFileTestStep
1.320 + {
1.321 + public:
1.322 + TWriteBufferTestStep(MDataSink* aSink, CMMFBuffer* aBuffer)
1.323 + : TFileTestStep(aSink), iBuffer(aBuffer), iPosition(0), iAsynchronousWrite(EFalse)
1.324 + { InitRandomNumberGenerator(); }
1.325 +
1.326 + TWriteBufferTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, TInt aPosition)
1.327 + : TFileTestStep(aSink), iBuffer(aBuffer), iPosition(aPosition), iAsynchronousWrite(EFalse)
1.328 + { InitRandomNumberGenerator(); }
1.329 +
1.330 + TWriteBufferTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, MDataSource* aSource)
1.331 + : TFileTestStep(aSource, aSink), iBuffer(aBuffer), iPosition(0), iAsynchronousWrite(EFalse)
1.332 + { InitRandomNumberGenerator(); }
1.333 +
1.334 + TWriteBufferTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, TInt aPosition, MDataSource* aSource)
1.335 + : TFileTestStep(aSource, aSink), iBuffer(aBuffer), iPosition(aPosition), iAsynchronousWrite(EFalse)
1.336 + { InitRandomNumberGenerator(); }
1.337 +
1.338 + void InitRandomNumberGenerator()
1.339 + {
1.340 + TTime seedTime;
1.341 + seedTime.UniversalTime();
1.342 + iSeed = seedTime.Int64();
1.343 + }
1.344 +
1.345 + void SetPosition(TInt aPosition)
1.346 + { iPosition = aPosition; }
1.347 +
1.348 + void SetAsynchronousWrite(TBool aAsynchronousWrite)
1.349 + { iAsynchronousWrite = aAsynchronousWrite; }
1.350 +
1.351 + void RandomiseBuffer();
1.352 +
1.353 + TVerdict DoTestPostambleL(TBool aCheck);
1.354 + virtual TInt CheckDestinationL() = 0;
1.355 +
1.356 + public:
1.357 + CMMFBuffer* iBuffer;
1.358 + TInt64 iSeed;
1.359 +
1.360 + TInt iPosition;
1.361 + TBool iAsynchronousWrite;
1.362 + };
1.363 +
1.364 +class TWriteBufferToDescriptorTestStep : public TWriteBufferTestStep
1.365 + {
1.366 + public:
1.367 + TWriteBufferToDescriptorTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes)
1.368 + : TWriteBufferTestStep(aSink, aBuffer), iDestinationDes(aDestinationDes), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.369 + { }
1.370 +
1.371 + TWriteBufferToDescriptorTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, TInt aPosition, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes)
1.372 + : TWriteBufferTestStep(aSink, aBuffer, aPosition), iDestinationDes(aDestinationDes), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.373 + { }
1.374 +
1.375 + TWriteBufferToDescriptorTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, MDataSource* aSource, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes)
1.376 + : TWriteBufferTestStep(aSink, aBuffer, aSource), iDestinationDes(aDestinationDes), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.377 + { }
1.378 +
1.379 + TWriteBufferToDescriptorTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, TInt aPosition, MDataSource* aSource, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes)
1.380 + : TWriteBufferTestStep(aSink, aBuffer, aPosition, aSource), iDestinationDes(aDestinationDes), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.381 + { }
1.382 +
1.383 + TInt CheckDestinationL();
1.384 +
1.385 + public:
1.386 + const TDes8& iDestinationDes;
1.387 + TDes8& iCopyOfDestinationDes;
1.388 + };
1.389 +
1.390 +class TWriteBufferToFileTestStep : public TWriteBufferTestStep
1.391 + {
1.392 + public:
1.393 + TWriteBufferToFileTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes)
1.394 + : TWriteBufferTestStep(aSink, aBuffer), iFsSession(aFsSession), iDestinationFileName(aDestinationFileName), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.395 + { }
1.396 +
1.397 + TWriteBufferToFileTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, TInt aPosition, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes)
1.398 + : TWriteBufferTestStep(aSink, aBuffer, aPosition), iFsSession(aFsSession), iDestinationFileName(aDestinationFileName), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.399 + { }
1.400 +
1.401 + TWriteBufferToFileTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, MDataSource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes)
1.402 + : TWriteBufferTestStep(aSink, aBuffer, aSource), iFsSession(aFsSession), iDestinationFileName(aDestinationFileName), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.403 + { }
1.404 +
1.405 + TWriteBufferToFileTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, TInt aPosition, MDataSource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes)
1.406 + : TWriteBufferTestStep(aSink, aBuffer, aPosition, aSource), iFsSession(aFsSession), iDestinationFileName(aDestinationFileName), iCopyOfDestinationDes(aCopyOfDestinationDes)
1.407 + { }
1.408 +
1.409 + TInt CheckDestinationL();
1.410 + void DoTestPreambleL();
1.411 +
1.412 + public:
1.413 + RFs& iFsSession;
1.414 + const TFileName& iDestinationFileName;
1.415 + TDes8& iCopyOfDestinationDes;
1.416 + };
1.417 +
1.418 +
1.419 +class TNewSourceTestStep : public TFileTestStep
1.420 + {
1.421 +public:
1.422 + TNewSourceTestStep(TUid aUid, TDesC8& aConfigDes)
1.423 + : iUid(aUid), iConfigDes(&aConfigDes)
1.424 + { }
1.425 +
1.426 + TVerdict DoTestStepL();
1.427 +
1.428 +public:
1.429 + TUid iUid;
1.430 + TDesC8* iConfigDes;
1.431 + };
1.432 +
1.433 +
1.434 +class TSourceTypeTestStep : public TTestStep
1.435 + {
1.436 +public:
1.437 + TSourceTypeTestStep(MDataSource* aSource, TUid aUid, TFourCC aFourCC, TBool aCanSetSourceDataType)
1.438 + : TTestStep(aSource), iUid(aUid), iFourCC(aFourCC), iCanSetSourceDataType(aCanSetSourceDataType)
1.439 + { }
1.440 +
1.441 + TVerdict DoTestStepL();
1.442 +
1.443 +public:
1.444 + TUid iUid;
1.445 + TFourCC iFourCC;
1.446 + TBool iCanSetSourceDataType;
1.447 + };
1.448 +
1.449 +class TCanCreateSourceBufferTestStep : public TTestStep
1.450 + {
1.451 +public:
1.452 + TCanCreateSourceBufferTestStep(MDataSource* aSource, TBool aCanCreateSourceBuffer)
1.453 + : TTestStep(aSource), iCanCreateSourceBuffer(aCanCreateSourceBuffer)
1.454 + { }
1.455 +
1.456 + TVerdict DoTestStepL();
1.457 +
1.458 +public:
1.459 + TBool iCanCreateSourceBuffer;
1.460 + };
1.461 +
1.462 +class TSourceSampleConvertTestStep : public TTestStep
1.463 + {
1.464 +public:
1.465 + TSourceSampleConvertTestStep(MDataSource* aSource, TBool aSourceSampleConvert)
1.466 + : TTestStep(aSource), iSourceSampleConvert(aSourceSampleConvert)
1.467 + { }
1.468 +
1.469 + TVerdict DoTestStepL();
1.470 +
1.471 +public:
1.472 + TBool iSourceSampleConvert;
1.473 + };
1.474 +
1.475 +class TCreateSourceBuffer1TestStep : public TTestStep, public MAsyncEventHandler
1.476 + {
1.477 +public:
1.478 + TCreateSourceBuffer1TestStep(TSourceType aSourceType, MDataSink* aSink, TUid aExpectedType, TBool aExpectedRef, TInt aExpectedMaxLength = 0)
1.479 + : TTestStep(NULL, aSink), iSourceType(aSourceType), iExpectedType(aExpectedType), iExpectedRef(aExpectedRef), iExpectedMaxLength(aExpectedMaxLength)
1.480 + { }
1.481 +
1.482 + TVerdict DoTestStepL();
1.483 + TInt SendEventToClient(const TMMFEvent& aEvent);
1.484 +
1.485 +public:
1.486 + TSourceType iSourceType;
1.487 + CMMFBuffer* iSinkBuffer;
1.488 + TUid iExpectedType;
1.489 + TBool iExpectedRef;
1.490 + TInt iExpectedMaxLength;
1.491 +};
1.492 +
1.493 +class TCreateSourceBuffer2TestStep : public TTestStep, public MAsyncEventHandler
1.494 + {
1.495 +public:
1.496 + TCreateSourceBuffer2TestStep(TSourceType aSourceType, MDataSink* aSink, CMMFBuffer* aSinkBuffer, TUid aExpectedType, TBool aExpectedRef, TInt aExpectedMaxLength = 0)
1.497 + : TTestStep(NULL, aSink), iSourceType(aSourceType), iSinkBuffer(aSinkBuffer), iExpectedType(aExpectedType), iExpectedRef(aExpectedRef), iExpectedMaxLength(aExpectedMaxLength)
1.498 + { }
1.499 +
1.500 + TVerdict DoTestStepL();
1.501 + TInt SendEventToClient(const TMMFEvent& aEvent);
1.502 +
1.503 +public:
1.504 + TSourceType iSourceType;
1.505 + CMMFBuffer* iSinkBuffer;
1.506 + TUid iExpectedType;
1.507 + TBool iExpectedRef;
1.508 + TInt iExpectedMaxLength;
1.509 +};
1.510 +
1.511 +class TSourceThreadLogonTestStep : public TFileTestStep
1.512 + {
1.513 +public:
1.514 + TSourceThreadLogonTestStep(MDataSource* aSource, MAsyncEventHandler* aEventHandler)
1.515 + : TFileTestStep(aSource), iEventHandler(aEventHandler)
1.516 + { }
1.517 +
1.518 + TVerdict DoTestStepL();
1.519 +
1.520 +public:
1.521 + MAsyncEventHandler* iEventHandler;
1.522 + };
1.523 +
1.524 +class TNegotiateSourceTestStep : public TTestStep
1.525 + {
1.526 +public:
1.527 + TNegotiateSourceTestStep(MDataSource* aSource, MDataSink* aSink)
1.528 + : TTestStep(aSource, aSink)
1.529 + { }
1.530 +
1.531 + TVerdict DoTestStepL();
1.532 + };
1.533 +
1.534 +class TFillBufferTestStep : public TReadBufferTestStep
1.535 + {
1.536 +public:
1.537 + TFillBufferTestStep(MDataSource* aSource, CMMFBuffer* aBuffer, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.538 + : TReadBufferTestStep(aSource, aBuffer, 0, aSink, aSourceDes), iReadLength(aReadLength)
1.539 + { }
1.540 +
1.541 + void SetReadLength(TInt aReadLength)
1.542 + { iReadLength = aReadLength; }
1.543 +
1.544 + TVerdict DoTestStepL();
1.545 +
1.546 +public:
1.547 + TInt iReadLength;
1.548 + };
1.549 +
1.550 +class TFillLastBufferTestStep : public TReadBufferTestStep
1.551 + {
1.552 +public:
1.553 + TFillLastBufferTestStep(TUid aSourceUid, TDesC8& aConfigDes, CMMFDummySink* aSink, const TDes8& aSourceDes)
1.554 + : TReadBufferTestStep(NULL, NULL, 0, aSink, aSourceDes), iSourceUid(aSourceUid), iConfigDes(aConfigDes)
1.555 + { }
1.556 +
1.557 + TVerdict DoTestStepL();
1.558 +
1.559 +public:
1.560 + TUid iSourceUid;
1.561 + TDesC8 &iConfigDes;
1.562 + };
1.563 +
1.564 +class TReadLastBufferTestStep : public TReadBufferTestStep
1.565 + {
1.566 +public:
1.567 + TReadLastBufferTestStep(CMMFClip* aClip, CMMFDummySink* aSink, const TDes8& aSourceDes)
1.568 + : TReadBufferTestStep(aClip, NULL, 0, aSink, aSourceDes)
1.569 + { }
1.570 +
1.571 + TVerdict DoTestStepL();
1.572 + };
1.573 +
1.574 +class TReadLastBuffer2TestStep : public TReadBufferTestStep
1.575 + {
1.576 +public:
1.577 + TReadLastBuffer2TestStep(CMMFClip* aClip, CMMFDummySink* aSink, const TDes8& aSourceDes)
1.578 + : TReadBufferTestStep(aClip, NULL, 0, aSink, aSourceDes)
1.579 + { }
1.580 +
1.581 + TVerdict DoTestStepL();
1.582 + };
1.583 +
1.584 +class TReadLastBuffer3TestStep : public TReadBufferTestStep
1.585 + {
1.586 +public:
1.587 + TReadLastBuffer3TestStep(CMMFClip* aClip, const TDes8& aSourceDes)
1.588 + : TReadBufferTestStep(aClip, NULL, 0, NULL, aSourceDes)
1.589 + { }
1.590 +
1.591 + TVerdict DoTestStepL();
1.592 + };
1.593 +
1.594 +
1.595 +class TNewSinkTestStep : public TFileTestStep
1.596 + {
1.597 +public:
1.598 + TNewSinkTestStep(TUid aUid, TDesC8& aConfigDes)
1.599 + : iUid(aUid), iConfigDes(&aConfigDes)
1.600 + { }
1.601 +
1.602 + TVerdict DoTestStepL();
1.603 +
1.604 +public:
1.605 + TUid iUid;
1.606 + TDesC8* iConfigDes;
1.607 + };
1.608 +
1.609 +
1.610 +class TSinkTypeTestStep : public TTestStep
1.611 + {
1.612 +public:
1.613 + TSinkTypeTestStep(MDataSink* aSink, TUid aUid, TFourCC aFourCC, TBool aCanSetSinkDataType)
1.614 + : TTestStep(aSink), iUid(aUid), iFourCC(aFourCC), iCanSetSinkDataType(aCanSetSinkDataType)
1.615 + { }
1.616 +
1.617 + TVerdict DoTestStepL();
1.618 +
1.619 +public:
1.620 + TUid iUid;
1.621 + TFourCC iFourCC;
1.622 + TBool iCanSetSinkDataType;
1.623 + };
1.624 +
1.625 +class TCanCreateSinkBufferTestStep : public TTestStep
1.626 + {
1.627 +public:
1.628 + TCanCreateSinkBufferTestStep(MDataSink* aSink, TBool aCanCreateSinkBuffer)
1.629 + : TTestStep(aSink), iCanCreateSinkBuffer(aCanCreateSinkBuffer)
1.630 + { }
1.631 +
1.632 + TVerdict DoTestStepL();
1.633 +
1.634 +public:
1.635 + TBool iCanCreateSinkBuffer;
1.636 + };
1.637 +
1.638 +class TCreateSinkBufferTestStep0 : public TTestStep
1.639 + {
1.640 +public:
1.641 + TCreateSinkBufferTestStep0(MDataSink* aSink, TUid aExpectedType, TBool aExpectedRef, TInt aExpectedMaxLength = 0, CMMFDummySource* aSource = NULL)
1.642 + : TTestStep(aSource, aSink), iExpectedType(aExpectedType), iExpectedRef(aExpectedRef), iExpectedMaxLength(aExpectedMaxLength)
1.643 + { }
1.644 +
1.645 + TVerdict DoTestStepL();
1.646 +
1.647 +public:
1.648 + TUid iExpectedType;
1.649 + TBool iExpectedRef;
1.650 + CMMFFormatDecode* iFormat;
1.651 + TInt iExpectedMaxLength;
1.652 + };
1.653 +
1.654 +class TCreateSinkBufferTestStep : public TTestStep
1.655 + {
1.656 +public:
1.657 + TCreateSinkBufferTestStep(TUid aExpectedType, TBool aExpectedRef, CMMFFormatDecode* aFormat,
1.658 + TInt aExpectedMaxLength = 0, CMMFDummySource* aSource = NULL)
1.659 + : TTestStep(aSource, NULL), iExpectedType(aExpectedType), iExpectedRef(aExpectedRef), iFormat(aFormat), iExpectedMaxLength(aExpectedMaxLength)
1.660 + {
1.661 + }
1.662 +
1.663 + TVerdict DoTestPostambleL(TBool aCheck);
1.664 +
1.665 +public:
1.666 + TUid iExpectedType;
1.667 + TBool iExpectedRef;
1.668 + CMMFFormatDecode* iFormat;
1.669 + TInt iExpectedMaxLength;
1.670 + };
1.671 +
1.672 +class TCreateSinkBufferTestStep1 : public TCreateSinkBufferTestStep
1.673 + {
1.674 +public:
1.675 + TCreateSinkBufferTestStep1(TUid aExpectedType, TBool aExpectedRef, CMMFFormatDecode* aFormat,
1.676 + TInt aExpectedMaxLength = 0, CMMFDummySource* aSource = NULL)
1.677 + : TCreateSinkBufferTestStep(aExpectedType, aExpectedRef, aFormat, aExpectedMaxLength, aSource)
1.678 + {
1.679 + }
1.680 +
1.681 + TVerdict DoTestStepL();
1.682 + };
1.683 +
1.684 +class TCreateSinkBufferTestStep2 : public TCreateSinkBufferTestStep
1.685 + {
1.686 +public:
1.687 + TCreateSinkBufferTestStep2(TUid aExpectedType, TBool aExpectedRef, CMMFFormatDecode* aFormat,
1.688 + TInt aExpectedMaxLength = 0, CMMFDummySource* aSource = NULL)
1.689 + : TCreateSinkBufferTestStep(aExpectedType, aExpectedRef, aFormat, aExpectedMaxLength, aSource)
1.690 + {
1.691 + }
1.692 +
1.693 + TVerdict DoTestStepL();
1.694 + };
1.695 +
1.696 +class TCreateSinkBufferTestStep3 : public TCreateSinkBufferTestStep
1.697 + {
1.698 +public:
1.699 + TCreateSinkBufferTestStep3(TUid aExpectedType, TBool aExpectedRef, CMMFFormatDecode* aFormat,
1.700 + TInt aExpectedMaxLength = 0, CMMFDummySource* aSource = NULL)
1.701 + : TCreateSinkBufferTestStep(aExpectedType, aExpectedRef, aFormat, aExpectedMaxLength, aSource)
1.702 + {
1.703 + }
1.704 +
1.705 + TVerdict DoTestStepL();
1.706 + };
1.707 +
1.708 +class TCreateSinkBufferTestStep4 : public TCreateSinkBufferTestStep
1.709 + {
1.710 +public:
1.711 + TCreateSinkBufferTestStep4(TUid aExpectedType, TBool aExpectedRef, CMMFFormatDecode* aFormat,
1.712 + TInt aExpectedMaxLength = 0, CMMFDummySource* aSource = NULL)
1.713 + : TCreateSinkBufferTestStep(aExpectedType, aExpectedRef, aFormat, aExpectedMaxLength, aSource)
1.714 + {
1.715 + }
1.716 +
1.717 + TVerdict DoTestStepL();
1.718 + };
1.719 +
1.720 +class TSinkThreadLogonTestStep : public TFileTestStep
1.721 + {
1.722 +public:
1.723 + TSinkThreadLogonTestStep(MDataSink* aSink, MAsyncEventHandler* aEventHandler)
1.724 + : TFileTestStep(aSink), iEventHandler(aEventHandler)
1.725 + { }
1.726 +
1.727 + TVerdict DoTestStepL();
1.728 +
1.729 +public:
1.730 + MAsyncEventHandler* iEventHandler;
1.731 + };
1.732 +
1.733 +class TNegotiateTestStep : public TTestStep
1.734 + {
1.735 +public:
1.736 + TNegotiateTestStep(MDataSink* aSink, MDataSource* aSource)
1.737 + : TTestStep(aSource, aSink)
1.738 + { }
1.739 +
1.740 + TVerdict DoTestStepL();
1.741 + };
1.742 +
1.743 +class TEmptyBufferTestStep : public TWriteBufferToDescriptorTestStep
1.744 + {
1.745 +public:
1.746 + TEmptyBufferTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, CMMFDummySource* aSource, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes)
1.747 + : TWriteBufferToDescriptorTestStep(aSink, aBuffer, aSource, aDestinationDes, aCopyOfDestinationDes), iWriteLength((aBuffer != NULL) ? aBuffer->BufferSize() : 0)
1.748 + { }
1.749 +
1.750 + void SetWriteLength(TInt aWriteLength)
1.751 + { iWriteLength = aWriteLength; }
1.752 +
1.753 + TVerdict DoTestStepL();
1.754 +
1.755 +public:
1.756 + TInt iWriteLength;
1.757 + };
1.758 +
1.759 +
1.760 +class TClipBytesFreeTestStep : public TFileTestStep
1.761 + {
1.762 +public:
1.763 + TClipBytesFreeTestStep(CMMFClip* aClip, TInt64 aExpectedBytesFree)
1.764 + : TFileTestStep(aClip, aClip), iExpectedBytesFree(aExpectedBytesFree)
1.765 + { }
1.766 +
1.767 + TVerdict DoTestStepL();
1.768 +
1.769 +public:
1.770 + TInt64 iExpectedBytesFree;
1.771 + };
1.772 +
1.773 +class TClipSizeTestStep : public TFileTestStep
1.774 + {
1.775 +public:
1.776 + TClipSizeTestStep(CMMFClip* aClip, TInt aExpectedSize)
1.777 + : TFileTestStep(aClip, aClip), iExpectedSize(aExpectedSize)
1.778 + { }
1.779 +
1.780 + TVerdict DoTestStepL();
1.781 +
1.782 +public:
1.783 + TInt iExpectedSize;
1.784 + };
1.785 +
1.786 +class TClipSetSizeTestStep : public TFileTestStep
1.787 + {
1.788 +public:
1.789 + TClipSetSizeTestStep(CMMFClip* aClip, TBool aCanSetSize)
1.790 + : TFileTestStep(aClip, aClip), iCanSetSize(aCanSetSize)
1.791 + { }
1.792 +
1.793 + TVerdict DoTestStepL();
1.794 +
1.795 +public:
1.796 + TBool iCanSetSize;
1.797 + };
1.798 +
1.799 +class TClipDeleteTestStep : public TFileTestStep
1.800 + {
1.801 +public:
1.802 + TClipDeleteTestStep(CMMFClip* aClip)
1.803 + : TFileTestStep(aClip, aClip)
1.804 + { }
1.805 +
1.806 + TVerdict DoTestStepL();
1.807 + };
1.808 +
1.809 +class TClipReadBufferTestStep : public TReadBufferTestStep
1.810 + {
1.811 +public:
1.812 + TClipReadBufferTestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.813 + : TReadBufferTestStep(aClip, aBuffer, aPosition, aSink, aSourceDes), iReadLength(aReadLength)
1.814 + { }
1.815 +
1.816 + void SetReadLength(TInt aReadLength)
1.817 + { iReadLength = aReadLength; }
1.818 +
1.819 + TVerdict DoTestStepL();
1.820 +
1.821 +public:
1.822 + TInt iReadLength;
1.823 + };
1.824 +
1.825 +class TClipReadBuffer2TestStep : public TReadBufferTestStep
1.826 + {
1.827 +public:
1.828 + TClipReadBuffer2TestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.829 + : TReadBufferTestStep(aClip, aBuffer, aPosition, aSink, aSourceDes), iReadLength(aReadLength)
1.830 + { }
1.831 +
1.832 + void SetReadLength(TInt aReadLength)
1.833 + { iReadLength = aReadLength; }
1.834 +
1.835 + TVerdict DoTestStepL();
1.836 +
1.837 +public:
1.838 + TInt iReadLength;
1.839 + };
1.840 +
1.841 +class TClipReadBuffer3TestStep : public TReadBufferTestStep
1.842 + {
1.843 +public:
1.844 + TClipReadBuffer3TestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, const TDes8& aSourceDes, TUint aReadLength = 0)
1.845 + : TReadBufferTestStep(aClip, aBuffer, aPosition, aSourceDes), iReadLength(aReadLength)
1.846 + { }
1.847 +
1.848 + void SetReadLength(TInt aReadLength)
1.849 + { iReadLength = aReadLength; }
1.850 +
1.851 + TVerdict DoTestStepL();
1.852 +
1.853 +public:
1.854 + TInt iReadLength;
1.855 + };
1.856 +
1.857 +class TClipReadBuffer4TestStep : public TReadBufferTestStep
1.858 + {
1.859 +public:
1.860 + TClipReadBuffer4TestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.861 + : TReadBufferTestStep(aClip, aBuffer, aPosition, aSink, aSourceDes), iReadLength(aReadLength), iExpectedReadLength(aReadLength)
1.862 + { }
1.863 +
1.864 + void SetReadLength(TInt aReadLength)
1.865 + { iReadLength = aReadLength; }
1.866 +
1.867 + void SetExpectedReadLength(TInt aExpectedReadLength)
1.868 + { iExpectedReadLength = aExpectedReadLength; }
1.869 +
1.870 + TVerdict DoTestStepL();
1.871 +
1.872 +public:
1.873 + TInt iReadLength;
1.874 + TInt iExpectedReadLength;
1.875 + };
1.876 +
1.877 +
1.878 +class TDescriptorClipWriteBufferTestStep : public TWriteBufferToDescriptorTestStep
1.879 + {
1.880 +public:
1.881 + TDescriptorClipWriteBufferTestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySource* aSource, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.882 + : TWriteBufferToDescriptorTestStep(aClip, aBuffer, aPosition, aSource, aDestinationDes, aCopyOfDestinationDes), iWriteLength(aWriteLength)
1.883 + { }
1.884 +
1.885 + void SetWriteLength(TInt aWriteLength)
1.886 + { iWriteLength = aWriteLength; }
1.887 +
1.888 + TVerdict DoTestStepL();
1.889 +
1.890 +public:
1.891 + TInt iWriteLength;
1.892 + };
1.893 +
1.894 +class TDescriptorClipWriteBuffer2TestStep : public TWriteBufferToDescriptorTestStep
1.895 + {
1.896 +public:
1.897 + TDescriptorClipWriteBuffer2TestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySource* aSource, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.898 + : TWriteBufferToDescriptorTestStep(aClip, aBuffer, aPosition, aSource, aDestinationDes, aCopyOfDestinationDes), iWriteLength(aWriteLength)
1.899 + { }
1.900 +
1.901 + void SetWriteLength(TInt aWriteLength)
1.902 + { iWriteLength = aWriteLength; }
1.903 +
1.904 + TVerdict DoTestStepL();
1.905 +
1.906 +public:
1.907 + TInt iWriteLength;
1.908 + };
1.909 +
1.910 +class TDescriptorClipWriteBuffer3TestStep : public TWriteBufferToDescriptorTestStep
1.911 + {
1.912 +public:
1.913 + TDescriptorClipWriteBuffer3TestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, const TDes8& aDestinationDes, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.914 + : TWriteBufferToDescriptorTestStep(aClip, aBuffer, aPosition, aDestinationDes, aCopyOfDestinationDes), iWriteLength(aWriteLength)
1.915 + { }
1.916 +
1.917 + void SetWriteLength(TInt aWriteLength)
1.918 + { iWriteLength = aWriteLength; }
1.919 +
1.920 + TVerdict DoTestStepL();
1.921 +
1.922 +public:
1.923 + TInt iWriteLength;
1.924 + };
1.925 +
1.926 +class TNewFileSourceTestStep : public TNewSourceTestStep
1.927 + {
1.928 +public:
1.929 + TNewFileSourceTestStep(TUid aUid, TDesC8& aConfigDes)
1.930 + : TNewSourceTestStep(aUid, aConfigDes)
1.931 + { }
1.932 +
1.933 + TVerdict DoTestStepL();
1.934 + };
1.935 +
1.936 +class TFileSourceThreadLogonTestStep : public TSourceThreadLogonTestStep
1.937 + {
1.938 +public:
1.939 + TFileSourceThreadLogonTestStep(MDataSource* aSource, MAsyncEventHandler* aEventHandler, TInt aFileSize)
1.940 + : TSourceThreadLogonTestStep(aSource, aEventHandler), iFileSize(aFileSize)
1.941 + { }
1.942 +
1.943 + TVerdict DoTestStepL();
1.944 +
1.945 +public:
1.946 + TInt iFileSize;
1.947 + };
1.948 +
1.949 +class TFileFillBufferTestStep : public TFillBufferTestStep
1.950 + {
1.951 +public:
1.952 + TFileFillBufferTestStep(TSourceType aSourceType, TDesC& aFileName, CMMFBuffer* aBuffer, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.953 + : TFillBufferTestStep(NULL, aBuffer, aSink, aSourceDes, aReadLength), iFileName(aFileName), iSourceType(aSourceType)
1.954 + { }
1.955 +
1.956 + TVerdict DoTestStepL();
1.957 +
1.958 +public:
1.959 + TDesC& iFileName;
1.960 + TSourceType iSourceType;
1.961 + };
1.962 +
1.963 +class TFileFillBuffer2TestStep : public TFileFillBufferTestStep
1.964 + {
1.965 +public:
1.966 + TFileFillBuffer2TestStep(TSourceType aSourceType, TDesC& aFileName, CMMFBuffer* aBuffer, CMMFDummySink* aSink, const TDes8& aSourceDes)
1.967 + : TFileFillBufferTestStep(aSourceType, aFileName, aBuffer, aSink, aSourceDes)
1.968 + { }
1.969 +
1.970 + TVerdict DoTestStepL();
1.971 + };
1.972 +
1.973 +class TFileFillBuffer3TestStep : public TFileFillBufferTestStep
1.974 + {
1.975 +public:
1.976 + TFileFillBuffer3TestStep(TSourceType aSourceType, TDesC& aFileName, RPointerArray<CMMFBuffer>* aBufferArray, CMMFDummySink* aSink, const TDes8& aSourceDes, TInt aReadLength = 0)
1.977 + : TFileFillBufferTestStep(aSourceType, aFileName, NULL, aSink, aSourceDes, aReadLength), iBufferArray(aBufferArray), iMaxRequestCount(20)
1.978 + { }
1.979 +
1.980 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.981 + { iMaxRequestCount = aMaxRequestCount; }
1.982 +
1.983 + TVerdict DoTestStepL();
1.984 +
1.985 +public:
1.986 + RPointerArray<CMMFBuffer>* iBufferArray;
1.987 + TInt iMaxRequestCount;
1.988 + };
1.989 +
1.990 +class TFileFillBuffer4TestStep : public TFillBufferTestStep
1.991 + {
1.992 +public:
1.993 + TFileFillBuffer4TestStep(MDataSource* aSource, RPointerArray<CMMFBuffer>* aBufferArray, CMMFDummySink* aSink, const TDes8& aSourceDes, TInt aReadLength = 0)
1.994 + : TFillBufferTestStep(aSource, NULL, aSink, aSourceDes, aReadLength), iBufferArray(aBufferArray), iMaxRequestCount(3)
1.995 + { }
1.996 +
1.997 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.998 + { iMaxRequestCount = aMaxRequestCount; }
1.999 +
1.1000 + TVerdict DoTestStepL();
1.1001 +
1.1002 +public:
1.1003 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1004 + TInt iMaxRequestCount;
1.1005 + };
1.1006 +
1.1007 +class TFileReadBufferTestStep : public TClipReadBufferTestStep
1.1008 + {
1.1009 +public:
1.1010 + TFileReadBufferTestStep(TSourceType aSourceType, const TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1011 + : TClipReadBufferTestStep(NULL, aBuffer, aPosition, aSink, aSourceDes, aReadLength), iSourceType(aSourceType), iFileName(aFileName)
1.1012 + { }
1.1013 +
1.1014 + TVerdict DoTestStepL();
1.1015 +
1.1016 +public:
1.1017 + TSourceType iSourceType;
1.1018 + const TDesC& iFileName;
1.1019 +
1.1020 + };
1.1021 +
1.1022 +class TFileReadBuffer2TestStep : public TClipReadBuffer2TestStep
1.1023 + {
1.1024 +public:
1.1025 + TFileReadBuffer2TestStep(TSourceType aSourceType, const TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1026 + : TClipReadBuffer2TestStep(NULL, aBuffer, aPosition, aSink, aSourceDes, aReadLength), iSourceType(aSourceType), iFileName(aFileName)
1.1027 + { }
1.1028 +
1.1029 + TVerdict DoTestStepL();
1.1030 +
1.1031 +public:
1.1032 + TSourceType iSourceType;
1.1033 + const TDesC& iFileName;
1.1034 + };
1.1035 +
1.1036 +class TFileReadBuffer3TestStep : public TClipReadBuffer3TestStep
1.1037 + {
1.1038 +public:
1.1039 + TFileReadBuffer3TestStep(TSourceType aSourceType, const TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1040 + : TClipReadBuffer3TestStep(NULL, aBuffer, aPosition, aSourceDes, aReadLength), iSourceType(aSourceType), iFileName(aFileName)
1.1041 + { }
1.1042 +
1.1043 + void SetReadLength(TInt aReadLength)
1.1044 + { iReadLength = aReadLength; }
1.1045 +
1.1046 + TVerdict DoTestStepL();
1.1047 +
1.1048 +public:
1.1049 + TSourceType iSourceType;
1.1050 + const TDesC& iFileName;
1.1051 + };
1.1052 +
1.1053 +class TFileReadBuffer4TestStep : public TClipReadBuffer4TestStep
1.1054 + {
1.1055 +public:
1.1056 + TFileReadBuffer4TestStep(TSourceType aSourceType, const TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1057 + : TClipReadBuffer4TestStep(NULL, aBuffer, aPosition, aSink, aSourceDes, aReadLength), iSourceType(aSourceType), iFileName(aFileName)
1.1058 + { }
1.1059 +
1.1060 + TVerdict DoTestStepL();
1.1061 +
1.1062 +public:
1.1063 + TSourceType iSourceType;
1.1064 + const TDesC& iFileName;
1.1065 + };
1.1066 +
1.1067 +class TFileReadBuffer5TestStep : public TClipReadBuffer4TestStep
1.1068 + {
1.1069 +public:
1.1070 + TFileReadBuffer5TestStep(TSourceType aSourceType, const TDesC& aFileName, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1071 + : TClipReadBuffer4TestStep(NULL, NULL, aPosition, aSink, aSourceDes, aReadLength), iSourceType(aSourceType), iFileName(aFileName), iBufferArray(aBufferArray), iMaxRequestCount(20)
1.1072 + { }
1.1073 +
1.1074 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1075 + { iMaxRequestCount = aMaxRequestCount; }
1.1076 +
1.1077 + TVerdict DoTestStepL();
1.1078 +
1.1079 +public:
1.1080 + TSourceType iSourceType;
1.1081 + const TDesC& iFileName;
1.1082 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1083 + TInt iMaxRequestCount;
1.1084 + };
1.1085 +
1.1086 +class TFileReadBuffer6TestStep : public TClipReadBuffer4TestStep
1.1087 + {
1.1088 +public:
1.1089 + TFileReadBuffer6TestStep(TSourceType aSourceType, const TDesC& aFileName, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1090 + : TClipReadBuffer4TestStep(NULL, NULL, aPosition, aSink, aSourceDes, aReadLength), iSourceType(aSourceType), iFileName(aFileName), iBufferArray(aBufferArray), iMaxRequestCount(20)
1.1091 + { }
1.1092 +
1.1093 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1094 + { iMaxRequestCount = aMaxRequestCount; }
1.1095 +
1.1096 + TVerdict DoTestStepL();
1.1097 +
1.1098 +public:
1.1099 + TSourceType iSourceType;
1.1100 + const TDesC& iFileName;
1.1101 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1102 + TInt iMaxRequestCount;
1.1103 + };
1.1104 +
1.1105 +class TFileReadBuffer7TestStep : public TClipReadBuffer4TestStep
1.1106 + {
1.1107 +public:
1.1108 + TFileReadBuffer7TestStep(CMMFClip* aSource, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1109 + : TClipReadBuffer4TestStep(aSource, NULL, aPosition, aSink, aSourceDes, aReadLength), iBufferArray(aBufferArray), iMaxRequestCount(3)
1.1110 + { }
1.1111 +
1.1112 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1113 + { iMaxRequestCount = aMaxRequestCount; }
1.1114 +
1.1115 + TVerdict DoTestStepL();
1.1116 +
1.1117 +public:
1.1118 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1119 + TInt iMaxRequestCount;
1.1120 + };
1.1121 +
1.1122 +class TFileReadBuffer8TestStep : public TClipReadBuffer4TestStep
1.1123 + {
1.1124 +public:
1.1125 + TFileReadBuffer8TestStep(CMMFClip* aSource, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySink* aSink, const TDes8& aSourceDes, TUint aReadLength = 0)
1.1126 + : TClipReadBuffer4TestStep(aSource, NULL, aPosition, aSink, aSourceDes, aReadLength), iBufferArray(aBufferArray), iMaxRequestCount(3)
1.1127 + { }
1.1128 +
1.1129 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1130 + { iMaxRequestCount = aMaxRequestCount; }
1.1131 +
1.1132 + TVerdict DoTestStepL();
1.1133 +
1.1134 +public:
1.1135 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1136 + TInt iMaxRequestCount;
1.1137 + };
1.1138 +
1.1139 +
1.1140 +class TNewFileSinkTestStep : public TNewSinkTestStep
1.1141 + {
1.1142 +public:
1.1143 + TNewFileSinkTestStep(TUid aUid, TDesC8& aConfigDes)
1.1144 + : TNewSinkTestStep(aUid, aConfigDes)
1.1145 + { }
1.1146 +
1.1147 + TVerdict DoTestStepL();
1.1148 + };
1.1149 +
1.1150 +class TFileSinkSetSizeTestStep : public TClipSetSizeTestStep
1.1151 + {
1.1152 +public:
1.1153 + TFileSinkSetSizeTestStep(CMMFClip* aClip, TBool aCanSetSize)
1.1154 + : TClipSetSizeTestStep(aClip, aCanSetSize)
1.1155 + { }
1.1156 +
1.1157 + TVerdict DoTestStepL();
1.1158 + };
1.1159 +
1.1160 +class TFileSinkThreadLogonTestStep : public TSinkThreadLogonTestStep
1.1161 + {
1.1162 +public:
1.1163 + TFileSinkThreadLogonTestStep(MDataSink* aSink, MAsyncEventHandler* aEventHandler, TInt aFileSize)
1.1164 + : TSinkThreadLogonTestStep(aSink, aEventHandler), iFileSize(aFileSize)
1.1165 + { }
1.1166 +
1.1167 + TVerdict DoTestStepL();
1.1168 +
1.1169 +public:
1.1170 + TInt iFileSize;
1.1171 + };
1.1172 +
1.1173 +class TFileEmptyBufferTestStep : public TWriteBufferToFileTestStep
1.1174 + {
1.1175 +public:
1.1176 + TFileEmptyBufferTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFile, TDes8& aCopyOfDestinationDes)
1.1177 + : TWriteBufferToFileTestStep(aSink, aBuffer, aSource, aFsSession, aDestinationFile, aCopyOfDestinationDes), iWriteLength((aBuffer != NULL) ? aBuffer->BufferSize() : 0)
1.1178 + { }
1.1179 +
1.1180 + void SetWriteLength(TInt aWriteLength)
1.1181 + { iWriteLength = aWriteLength; }
1.1182 +
1.1183 + TVerdict DoTestStepL();
1.1184 +
1.1185 +public:
1.1186 + TInt iWriteLength;
1.1187 + };
1.1188 +
1.1189 +class TFileEmptyBuffer2TestStep : public TFileEmptyBufferTestStep
1.1190 + {
1.1191 +public:
1.1192 + TFileEmptyBuffer2TestStep(TSinkType aSinkType, CMMFBuffer* aBuffer, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFile, TDes8& aCopyOfDestinationDes)
1.1193 + : TFileEmptyBufferTestStep(NULL, aBuffer, aSource, aFsSession, aDestinationFile, aCopyOfDestinationDes), iSinkType(aSinkType)
1.1194 + { }
1.1195 +
1.1196 + TVerdict DoTestStepL();
1.1197 +protected:
1.1198 + TSinkType iSinkType;
1.1199 + };
1.1200 +
1.1201 +class TFileEmptyBuffer3TestStep : public TFileEmptyBuffer2TestStep
1.1202 + {
1.1203 +public:
1.1204 + TFileEmptyBuffer3TestStep(TSinkType aSinkType, CMMFBuffer* aBuffer, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFile, TDes8& aCopyOfDestinationDes)
1.1205 + : TFileEmptyBuffer2TestStep(aSinkType, aBuffer, aSource, aFsSession, aDestinationFile, aCopyOfDestinationDes)
1.1206 + { }
1.1207 +
1.1208 + TVerdict DoTestStepL();
1.1209 +
1.1210 + void DoTestPreambleL();
1.1211 + TVerdict DoTestPostambleL(TBool aCheck);
1.1212 + };
1.1213 +
1.1214 +class TFileEmptyBuffer4TestStep : public TFileEmptyBuffer3TestStep
1.1215 + {
1.1216 +public:
1.1217 + TFileEmptyBuffer4TestStep(TSinkType aSinkType, RPointerArray<CMMFBuffer>* aBufferArray, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFile, TDes8& aCopyOfDestinationDes)
1.1218 + : TFileEmptyBuffer3TestStep(aSinkType, NULL, aSource, aFsSession, aDestinationFile, aCopyOfDestinationDes), iBufferArray(aBufferArray), iMaxRequestCount(20)
1.1219 + { }
1.1220 +
1.1221 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1222 + { iMaxRequestCount = aMaxRequestCount; }
1.1223 +
1.1224 + TVerdict DoTestStepL();
1.1225 +
1.1226 + void DoTestPreambleL();
1.1227 + TVerdict DoTestPostambleL(TBool aCheck);
1.1228 +
1.1229 +public:
1.1230 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1231 + TInt iMaxRequestCount;
1.1232 + };
1.1233 +
1.1234 +class TFileEmptyBuffer5TestStep : public TFileEmptyBuffer4TestStep
1.1235 + {
1.1236 +public:
1.1237 + TFileEmptyBuffer5TestStep(TSinkType aSinkType, RPointerArray<CMMFBuffer>* aBufferArray, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFile, TDes8& aCopyOfDestinationDes)
1.1238 + : TFileEmptyBuffer4TestStep(aSinkType, aBufferArray, aSource, aFsSession, aDestinationFile, aCopyOfDestinationDes)
1.1239 + { }
1.1240 +
1.1241 + TInt CheckDestinationL();
1.1242 + };
1.1243 +
1.1244 +class TFileEmptyBuffer6TestStep : public TFileEmptyBufferTestStep
1.1245 + {
1.1246 +public:
1.1247 + TFileEmptyBuffer6TestStep(MDataSink* aSink, RPointerArray<CMMFBuffer>* aBufferArray, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFile, TDes8& aCopyOfDestinationDes)
1.1248 + : TFileEmptyBufferTestStep(aSink, NULL, aSource, aFsSession, aDestinationFile, aCopyOfDestinationDes), iBufferArray(aBufferArray), iMaxRequestCount(3)
1.1249 + { }
1.1250 +
1.1251 + TVerdict DoTestStepL();
1.1252 + TInt CheckDestinationL();
1.1253 +
1.1254 +public:
1.1255 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1256 + TInt iMaxRequestCount;
1.1257 + };
1.1258 +
1.1259 +class TFileWriteBufferTestStep : public TWriteBufferToFileTestStep
1.1260 + {
1.1261 +public:
1.1262 + TFileWriteBufferTestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1263 + : TWriteBufferToFileTestStep(aClip, aBuffer, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes), iWriteLength(aWriteLength)
1.1264 + { iAsynchronousWrite = ETrue; }
1.1265 +
1.1266 + void SetWriteLength(TInt aWriteLength)
1.1267 + { iWriteLength = aWriteLength; }
1.1268 +
1.1269 + TVerdict DoTestStepL();
1.1270 +
1.1271 +public:
1.1272 + TInt iWriteLength;
1.1273 + };
1.1274 +
1.1275 +class TFileWriteBuffer2TestStep : public TFileWriteBufferTestStep
1.1276 + {
1.1277 +public:
1.1278 + TFileWriteBuffer2TestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1279 + : TFileWriteBufferTestStep(aClip, aBuffer, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes, aWriteLength)
1.1280 + { iAsynchronousWrite = ETrue; }
1.1281 +
1.1282 + TVerdict DoTestStepL();
1.1283 + };
1.1284 +
1.1285 +class TFileWriteBuffer3TestStep : public TFileWriteBufferTestStep
1.1286 + {
1.1287 +public:
1.1288 + TFileWriteBuffer3TestStep(CMMFClip* aClip, CMMFBuffer* aBuffer, TInt aPosition, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1289 + : TFileWriteBufferTestStep(aClip, aBuffer, aPosition, NULL, aFsSession, aDestinationFileName, aCopyOfDestinationDes, aWriteLength)
1.1290 + { }
1.1291 +
1.1292 + TVerdict DoTestStepL();
1.1293 + };
1.1294 +
1.1295 +class TFileWriteBuffer4TestStep : public TWriteBufferToFileTestStep
1.1296 + {
1.1297 +public:
1.1298 + TFileWriteBuffer4TestStep(TSinkType aSinkType, TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1299 + : TWriteBufferToFileTestStep(NULL, aBuffer, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes), iWriteLength(aWriteLength), iSinkType(aSinkType), iFileName(aFileName)
1.1300 + { iAsynchronousWrite = ETrue; }
1.1301 +
1.1302 + void SetWriteLength(TInt aWriteLength)
1.1303 + { iWriteLength = aWriteLength; }
1.1304 +
1.1305 + TVerdict DoTestStepL();
1.1306 +
1.1307 +public:
1.1308 + TInt iWriteLength;
1.1309 + TSinkType iSinkType;
1.1310 + TDesC& iFileName;
1.1311 + };
1.1312 +
1.1313 +class TFileWriteBuffer5TestStep : public TFileWriteBuffer4TestStep
1.1314 + {
1.1315 +public:
1.1316 + TFileWriteBuffer5TestStep(TSinkType aSinkType, TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1317 + : TFileWriteBuffer4TestStep(aSinkType, aFileName, aBuffer, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes, aWriteLength)
1.1318 + { }
1.1319 +
1.1320 + TInt CheckDestinationL();
1.1321 + TVerdict DoNegativeTestPostambleL();
1.1322 + };
1.1323 +
1.1324 +class TFileWriteBuffer6TestStep : public TWriteBufferToFileTestStep
1.1325 + {
1.1326 +public:
1.1327 + TFileWriteBuffer6TestStep(TSinkType aSinkType, TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1328 + : TWriteBufferToFileTestStep(NULL, aBuffer, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes), iWriteLength(aWriteLength), iSinkType(aSinkType), iFileName(aFileName)
1.1329 + { }
1.1330 +
1.1331 + void SetWriteLength(TInt aWriteLength)
1.1332 + { iWriteLength = aWriteLength; }
1.1333 +
1.1334 + TVerdict DoTestStepL();
1.1335 +
1.1336 +public:
1.1337 + TInt iWriteLength;
1.1338 + TSinkType iSinkType;
1.1339 + TDesC& iFileName;
1.1340 + };
1.1341 +
1.1342 +class TFileWriteBuffer7TestStep : public TWriteBufferToFileTestStep
1.1343 + {
1.1344 +public:
1.1345 + TFileWriteBuffer7TestStep(TSinkType aSinkType, TDesC& aFileName, CMMFBuffer* aBuffer, TInt aPosition, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1346 + : TWriteBufferToFileTestStep(NULL, aBuffer, aPosition, aFsSession, aDestinationFileName, aCopyOfDestinationDes),iSinkType(aSinkType), iFileName(aFileName), iWriteLength(aWriteLength)
1.1347 + { }
1.1348 +
1.1349 + void SetWriteLength(TInt aWriteLength)
1.1350 + { iWriteLength = aWriteLength; }
1.1351 +
1.1352 + TVerdict DoTestStepL();
1.1353 +
1.1354 +public:
1.1355 + TSinkType iSinkType;
1.1356 + TDesC& iFileName;
1.1357 + TInt iWriteLength;
1.1358 + };
1.1359 +
1.1360 +class TFileWriteBuffer8TestStep : public TWriteBufferToFileTestStep
1.1361 + {
1.1362 +public:
1.1363 + TFileWriteBuffer8TestStep(TSinkType aSinkType, TDesC& aFileName, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1364 + : TWriteBufferToFileTestStep(NULL, NULL, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes), iSinkType(aSinkType), iFileName(aFileName), iWriteLength(aWriteLength), iBufferArray(aBufferArray), iMaxRequestCount(20)
1.1365 + { }
1.1366 +
1.1367 + void SetWriteLength(TInt aWriteLength)
1.1368 + { iWriteLength = aWriteLength; }
1.1369 +
1.1370 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1371 + { iMaxRequestCount = aMaxRequestCount; }
1.1372 +
1.1373 + TVerdict DoTestStepL();
1.1374 +
1.1375 +public:
1.1376 + TSinkType iSinkType;
1.1377 + TDesC& iFileName;
1.1378 + TInt iWriteLength;
1.1379 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1380 + TInt iMaxRequestCount;
1.1381 + };
1.1382 +
1.1383 +class TFileWriteBuffer9TestStep : public TWriteBufferToFileTestStep
1.1384 + {
1.1385 +public:
1.1386 + TFileWriteBuffer9TestStep(TSinkType aSinkType, TDesC& aFileName, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1387 + : TWriteBufferToFileTestStep(NULL, NULL, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes), iFileName(aFileName), iWriteLength(aWriteLength), iBufferArray(aBufferArray), iMaxRequestCount(20), iSinkType(aSinkType)
1.1388 + { }
1.1389 +
1.1390 + void SetWriteLength(TInt aWriteLength)
1.1391 + { iWriteLength = aWriteLength; }
1.1392 +
1.1393 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1394 + { iMaxRequestCount = aMaxRequestCount; }
1.1395 +
1.1396 + TVerdict DoTestStepL();
1.1397 +
1.1398 +public:
1.1399 + TDesC& iFileName;
1.1400 + TInt iWriteLength;
1.1401 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1402 + TInt iMaxRequestCount;
1.1403 + TSinkType iSinkType;
1.1404 + };
1.1405 +
1.1406 +class TFileWriteBuffer10TestStep : public TFileWriteBuffer8TestStep
1.1407 + {
1.1408 +public:
1.1409 + TFileWriteBuffer10TestStep(TSinkType aSinkType, TDesC& aFileName, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1410 + : TFileWriteBuffer8TestStep(aSinkType, aFileName, aBufferArray, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes, aWriteLength)
1.1411 + { iMaxRequestCount = 3; }
1.1412 +
1.1413 + TInt CheckDestinationL();
1.1414 + };
1.1415 +
1.1416 +class TFileWriteBuffer11TestStep : public TFileWriteBuffer9TestStep
1.1417 + {
1.1418 +public:
1.1419 + TFileWriteBuffer11TestStep(TSinkType aSinkType, TDesC& aFileName, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1420 + : TFileWriteBuffer9TestStep(aSinkType, aFileName, aBufferArray, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes, aWriteLength)
1.1421 + { iMaxRequestCount = 3; }
1.1422 +
1.1423 + TInt CheckDestinationL();
1.1424 + };
1.1425 +
1.1426 +class TFileWriteBuffer12TestStep : public TWriteBufferToFileTestStep
1.1427 + {
1.1428 +public:
1.1429 + TFileWriteBuffer12TestStep(MDataSink* aSink, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1430 + : TWriteBufferToFileTestStep(aSink, NULL, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes), iWriteLength(aWriteLength), iBufferArray(aBufferArray), iMaxRequestCount(3)
1.1431 + { ASSERT(iBufferArray->Count() == 5); }
1.1432 +
1.1433 + void SetWriteLength(TInt aWriteLength)
1.1434 + { iWriteLength = aWriteLength; }
1.1435 +
1.1436 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1437 + { iMaxRequestCount = aMaxRequestCount; }
1.1438 +
1.1439 + TVerdict DoTestStepL();
1.1440 + TInt CheckDestinationL();
1.1441 +
1.1442 +public:
1.1443 + TInt iWriteLength;
1.1444 +
1.1445 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1446 + TInt iMaxRequestCount;
1.1447 + };
1.1448 +
1.1449 +class TFileWriteBuffer13TestStep : public TWriteBufferToFileTestStep
1.1450 + {
1.1451 +public:
1.1452 + TFileWriteBuffer13TestStep(MDataSink* aSink, RPointerArray<CMMFBuffer>* aBufferArray, TInt aPosition, CMMFDummySource* aSource, RFs& aFsSession, const TFileName& aDestinationFileName, TDes8& aCopyOfDestinationDes, TUint aWriteLength = 0)
1.1453 + : TWriteBufferToFileTestStep(aSink, NULL, aPosition, aSource, aFsSession, aDestinationFileName, aCopyOfDestinationDes), iWriteLength(aWriteLength), iBufferArray(aBufferArray), iMaxRequestCount(3)
1.1454 + { ASSERT(iBufferArray->Count() == 5); }
1.1455 +
1.1456 + void SetWriteLength(TInt aWriteLength)
1.1457 + { iWriteLength = aWriteLength; }
1.1458 +
1.1459 + void SetMaxRequestCount(TInt aMaxRequestCount)
1.1460 + { iMaxRequestCount = aMaxRequestCount; }
1.1461 +
1.1462 + TVerdict DoTestStepL();
1.1463 + TInt CheckDestinationL();
1.1464 +
1.1465 +public:
1.1466 + TInt iWriteLength;
1.1467 +
1.1468 + RPointerArray<CMMFBuffer>* iBufferArray;
1.1469 + TInt iMaxRequestCount;
1.1470 + };
1.1471 +
1.1472 +class TAudioInputCreateSourceBuffer1TestStep : public TTestStep
1.1473 + {
1.1474 +public:
1.1475 + TAudioInputCreateSourceBuffer1TestStep(CMMFAudioInput* aSource)
1.1476 + : TTestStep(aSource)
1.1477 + { }
1.1478 +
1.1479 + TVerdict DoTestStepL();
1.1480 +};
1.1481 +
1.1482 +class TAudioInputCreateSourceBuffer2TestStep : public TTestStep
1.1483 + {
1.1484 +public:
1.1485 + TAudioInputCreateSourceBuffer2TestStep(CMMFAudioInput* aSource, CMMFBuffer* aSinkBuffer)
1.1486 + : TTestStep(aSource), iSinkBuffer(aSinkBuffer)
1.1487 + { }
1.1488 +
1.1489 + TVerdict DoTestStepL();
1.1490 +
1.1491 +public:
1.1492 + CMMFBuffer* iSinkBuffer;
1.1493 +};
1.1494 +
1.1495 +class TAudioInputFillBufferTestStep : public TTestStep
1.1496 + {
1.1497 +public:
1.1498 + TAudioInputFillBufferTestStep(MDataSource* aSource, CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1499 + : TTestStep(aSource, aSink), iBuffer(aBuffer)
1.1500 + { }
1.1501 +
1.1502 + TVerdict DoTestStepL();
1.1503 +
1.1504 +public:
1.1505 + CMMFBuffer* iBuffer;
1.1506 + };
1.1507 +
1.1508 +class TAudioInputFillBuffer2TestStep : public TAudioInputFillBufferTestStep
1.1509 + {
1.1510 +public:
1.1511 + TAudioInputFillBuffer2TestStep(MDataSource* aSource, CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1512 + : TAudioInputFillBufferTestStep(aSource, aBuffer, aSink)
1.1513 + { }
1.1514 +
1.1515 + TVerdict DoTestStepL();
1.1516 + };
1.1517 +
1.1518 +class TAudioInputFillBuffer3TestStep : public TAudioInputFillBufferTestStep
1.1519 + {
1.1520 +public:
1.1521 + TAudioInputFillBuffer3TestStep(MDataSource* aSource, CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1522 + : TAudioInputFillBufferTestStep(aSource, aBuffer, aSink)
1.1523 + { }
1.1524 +
1.1525 + TVerdict DoTestStepL();
1.1526 + };
1.1527 +
1.1528 +class TAudioInputFillBuffer4TestStep : public TAudioInputFillBufferTestStep
1.1529 + {
1.1530 +public:
1.1531 + TAudioInputFillBuffer4TestStep(CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1532 + : TAudioInputFillBufferTestStep(NULL, aBuffer, aSink)
1.1533 + { }
1.1534 +
1.1535 + TVerdict DoTestStepL();
1.1536 + };
1.1537 +
1.1538 +class TAudioInputFillBuffer5TestStep : public TAudioInputFillBufferTestStep
1.1539 + {
1.1540 +public:
1.1541 + TAudioInputFillBuffer5TestStep(CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1542 + : TAudioInputFillBufferTestStep(NULL, aBuffer, aSink)
1.1543 + { }
1.1544 +
1.1545 + TVerdict DoTestStepL();
1.1546 + };
1.1547 +
1.1548 +class TAudioInputFillBuffer6TestStep : public TAudioInputFillBufferTestStep
1.1549 + {
1.1550 +public:
1.1551 + TAudioInputFillBuffer6TestStep(CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1552 + : TAudioInputFillBufferTestStep(NULL, aBuffer, aSink)
1.1553 + { }
1.1554 +
1.1555 + TVerdict DoTestStepL();
1.1556 + };
1.1557 +
1.1558 +class TAudioInputFillBuffer7TestStep : public TAudioInputFillBufferTestStep
1.1559 + {
1.1560 +public:
1.1561 + TAudioInputFillBuffer7TestStep(CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1562 + : TAudioInputFillBufferTestStep(NULL, aBuffer, aSink)
1.1563 + { }
1.1564 +
1.1565 + TVerdict DoTestStepL();
1.1566 + };
1.1567 +
1.1568 +class TAudioInputFillBuffer8TestStep : public TAudioInputFillBufferTestStep
1.1569 + {
1.1570 +public:
1.1571 + TAudioInputFillBuffer8TestStep(CMMFBuffer* aBuffer, CMMFDummySink* aSink)
1.1572 + : TAudioInputFillBufferTestStep(NULL, aBuffer, aSink)
1.1573 + { }
1.1574 +
1.1575 + TVerdict DoTestStepL();
1.1576 + };
1.1577 +
1.1578 +
1.1579 +class TAudioOutputEmptyBufferTestStep : public TTestStep
1.1580 + {
1.1581 +public:
1.1582 + TAudioOutputEmptyBufferTestStep(MDataSink* aSink, CMMFBuffer* aBuffer, CMMFDummySource* aSource)
1.1583 + : TTestStep(aSource, aSink), iBuffer(aBuffer), iAsynchronousWrite(EFalse)
1.1584 + { }
1.1585 +
1.1586 + void SetAsynchronousWrite()
1.1587 + { iAsynchronousWrite = ETrue; }
1.1588 +
1.1589 + TVerdict DoTestStepL();
1.1590 +
1.1591 +public:
1.1592 + CMMFBuffer* iBuffer;
1.1593 + TBool iAsynchronousWrite;
1.1594 + };
1.1595 +
1.1596 +class TAudioOutputEmptyBuffer2TestStep : public TAudioOutputEmptyBufferTestStep
1.1597 + {
1.1598 +public:
1.1599 + TAudioOutputEmptyBuffer2TestStep(MDataSink* aSink, CMMFBuffer* aBuffer, CMMFDummySource* aSource)
1.1600 + : TAudioOutputEmptyBufferTestStep(aSink, aBuffer, aSource)
1.1601 + { iAsynchronousWrite = ETrue; }
1.1602 +
1.1603 + TVerdict DoTestStepL();
1.1604 + };
1.1605 +
1.1606 +class TAudioOutputEmptyBuffer3TestStep : public TAudioOutputEmptyBufferTestStep
1.1607 + {
1.1608 +public:
1.1609 + TAudioOutputEmptyBuffer3TestStep(MDataSink* aSink, CMMFBuffer* aBuffer, CMMFDummySource* aSource)
1.1610 + : TAudioOutputEmptyBufferTestStep(aSink, aBuffer, aSource)
1.1611 + { iAsynchronousWrite = ETrue; }
1.1612 +
1.1613 + TVerdict DoTestStepL();
1.1614 + };
1.1615 +
1.1616 +class TAudioOutputEmptyBuffer4TestStep : public TAudioOutputEmptyBufferTestStep
1.1617 + {
1.1618 +public:
1.1619 + TAudioOutputEmptyBuffer4TestStep(CMMFBuffer* aBuffer, CMMFDummySource* aSource, MDataSource& aRealFormat)
1.1620 + : TAudioOutputEmptyBufferTestStep(NULL, aBuffer, aSource), iRealFormat(aRealFormat)
1.1621 + { }
1.1622 +
1.1623 + TVerdict DoTestStepL();
1.1624 +
1.1625 +public:
1.1626 + MDataSource& iRealFormat;
1.1627 + };
1.1628 +
1.1629 +class TAudioOutputEmptyBuffer5TestStep : public TAudioOutputEmptyBufferTestStep
1.1630 + {
1.1631 +public:
1.1632 + TAudioOutputEmptyBuffer5TestStep(CMMFBuffer* aBuffer, CMMFDummySource* aSource, MDataSource& aRealFormat)
1.1633 + : TAudioOutputEmptyBufferTestStep(NULL, aBuffer, aSource), iRealFormat(aRealFormat)
1.1634 + { }
1.1635 +
1.1636 + TVerdict DoTestStepL();
1.1637 +
1.1638 +public:
1.1639 + MDataSource& iRealFormat;
1.1640 + };
1.1641 +
1.1642 +class TAudioOutputEmptyBuffer6TestStep : public TAudioOutputEmptyBufferTestStep
1.1643 + {
1.1644 +public:
1.1645 + TAudioOutputEmptyBuffer6TestStep(CMMFBuffer* aBuffer, CMMFDummySource* aSource, MDataSource& aRealFormat)
1.1646 + : TAudioOutputEmptyBufferTestStep(NULL, aBuffer, aSource), iRealFormat(aRealFormat)
1.1647 + { }
1.1648 +
1.1649 + TVerdict DoTestStepL();
1.1650 +
1.1651 +public:
1.1652 + MDataSource& iRealFormat;
1.1653 + };
1.1654 +
1.1655 +class TPrimeStopTestStep : public TFileTestStep
1.1656 + {
1.1657 +public:
1.1658 + TPrimeStopTestStep()
1.1659 + { }
1.1660 +
1.1661 + virtual TVerdict DoTestStepL();
1.1662 + };
1.1663 +
1.1664 +
1.1665 +class TPrimeStopSinkTestStep : public TFileTestStep
1.1666 + {
1.1667 +public:
1.1668 + TPrimeStopSinkTestStep()
1.1669 + { }
1.1670 +
1.1671 + virtual TVerdict DoTestStepL();
1.1672 + };
1.1673 +
1.1674 +
1.1675 +/**
1.1676 + *
1.1677 + * CTestStep_MMF_SRSSNK, which is the base class for all
1.1678 + * the SelfTest suite test steps.
1.1679 + *
1.1680 + * @lib "TSU_MMF_SRSSNK.lib"
1.1681 + *
1.1682 + * @xxxx
1.1683 + *
1.1684 + */
1.1685 +const TInt KErrFileFail = -12345;
1.1686 +class CTestStep_MMF_SRSSNK : public CTestStep
1.1687 + {
1.1688 +public:
1.1689 + CTestStep_MMF_SRSSNK(TBool aIsAllocTest = ETrue);
1.1690 + ~CTestStep_MMF_SRSSNK();
1.1691 + static void CleanUp(TAny *aPtr);
1.1692 + inline void SetTestSuite(const CTestSuite_MMF_SRSSNK* aTestSuite);
1.1693 +
1.1694 + void DoTestStep(TTestStep& aTestStep, TPtrC aTestDescription, TInt aExpectedTestResult, TInt aHeapCellCount = 0);
1.1695 + void DoTestStepWithAllocFail(TTestStep& aTestStep, TPtrC aTestDescription, TInt aExpectedTestResult, TInt aHeapCellCount = 0);
1.1696 + void DoTestStepWithFileFail(TFileTestStep& aTestStep, TPtrC aTestDescription, TInt aExpectedTestResult, TInt aHeapCellCount = 0);
1.1697 + void DoTestStepWithAllocAndFileFail(TFileTestStep& aTestStep, TPtrC aTestDescription, TInt aExpectedTestResult);
1.1698 +
1.1699 + void DoTest(TTestStep& aTestStep, TPtrC aTestDescription, TInt aExpectedTestResult, TInt aHeapCellCount = 0);
1.1700 + void DoFileTest(TFileTestStep& aTestStep, TPtrC aTestDescription, TInt aExpectedTestResult);
1.1701 + void DoFileTestWithoutAllocFail(TFileTestStep& aTestStep, TPtrC aTestDescription, TInt aExpectedTestResult, TInt aHeapCellCount);
1.1702 +
1.1703 + // from CTestStep
1.1704 +public:
1.1705 + TVerdict OpenL();
1.1706 +
1.1707 +protected:
1.1708 + void CopyFileL(RFs& aFs, const TDesC& aOld, const TDesC& aNew);
1.1709 +
1.1710 + void OpenFileL(const TDesC& aFileName, TInt aMode, TBool aShareProtected=EFalse);
1.1711 + void CloseFile();
1.1712 +
1.1713 + void DeleteFileSinkL(TSinkType aSinkType, RFs& aFs, TDesC& aFileName);
1.1714 +
1.1715 +
1.1716 +protected:
1.1717 + // pointer to suite which owns this test
1.1718 + const CTestSuite_MMF_SRSSNK* iMMFBaseClTestSuite;
1.1719 +
1.1720 + TVerdict iTestResult;
1.1721 + TBool iIsAllocTest;
1.1722 + TBool iFileFailureTestingEnabled;
1.1723 + RFile iFile;
1.1724 + RFs iFs;
1.1725 + };
1.1726 +
1.1727 +inline void CTestStep_MMF_SRSSNK::SetTestSuite(const CTestSuite_MMF_SRSSNK* aTestSuite)
1.1728 + {
1.1729 + iMMFBaseClTestSuite = aTestSuite;
1.1730 + }
1.1731 +
1.1732 +/**
1.1733 + *
1.1734 + *
1.1735 + */
1.1736 +class CTestStep_MMF_SRSSNK_U_0001 : public CTestStep_MMF_SRSSNK
1.1737 + {
1.1738 +public:
1.1739 + CTestStep_MMF_SRSSNK_U_0001();
1.1740 + ~CTestStep_MMF_SRSSNK_U_0001();
1.1741 + virtual TVerdict DoTestStepL();
1.1742 + };
1.1743 +
1.1744 +
1.1745 +/**
1.1746 + *
1.1747 + *
1.1748 + */
1.1749 +class CTestStep_MMF_SRSSNK_U_0002 : public CTestStep_MMF_SRSSNK
1.1750 + {
1.1751 +public:
1.1752 + CTestStep_MMF_SRSSNK_U_0002();
1.1753 + ~CTestStep_MMF_SRSSNK_U_0002();
1.1754 + virtual TVerdict DoTestStepL();
1.1755 + };
1.1756 +
1.1757 +/**
1.1758 + *
1.1759 + *
1.1760 + */
1.1761 +class CTestStep_MMF_SRSSNK_U_0003 : public CTestStep_MMF_SRSSNK
1.1762 + {
1.1763 +public:
1.1764 + CTestStep_MMF_SRSSNK_U_0003();
1.1765 + ~CTestStep_MMF_SRSSNK_U_0003();
1.1766 + virtual TVerdict DoTestStepL();
1.1767 + };
1.1768 +
1.1769 +
1.1770 +/**
1.1771 + *
1.1772 + *
1.1773 + */
1.1774 +class CTestStep_MMF_SRSSNK_U_0004 : public CTestStep_MMF_SRSSNK
1.1775 + {
1.1776 +public:
1.1777 + CTestStep_MMF_SRSSNK_U_0004();
1.1778 + ~CTestStep_MMF_SRSSNK_U_0004();
1.1779 + virtual TVerdict DoTestStepL();
1.1780 + };
1.1781 +
1.1782 +
1.1783 +/**
1.1784 + *
1.1785 + *
1.1786 + */
1.1787 +class CTestStep_MMF_SRSSNK_U_0005 : public CTestStep_MMF_SRSSNK
1.1788 + {
1.1789 +public:
1.1790 + CTestStep_MMF_SRSSNK_U_0005();
1.1791 + ~CTestStep_MMF_SRSSNK_U_0005();
1.1792 + virtual TVerdict DoTestStepL();
1.1793 + };
1.1794 +
1.1795 +
1.1796 +/**
1.1797 + *
1.1798 + *
1.1799 + */
1.1800 +class CTestStep_MMF_SRSSNK_U_0006 : public CTestStep_MMF_SRSSNK
1.1801 + {
1.1802 +public:
1.1803 + CTestStep_MMF_SRSSNK_U_0006();
1.1804 + ~CTestStep_MMF_SRSSNK_U_0006();
1.1805 + virtual TVerdict DoTestStepL();
1.1806 + };
1.1807 +
1.1808 +
1.1809 +/**
1.1810 + *
1.1811 + *
1.1812 + */
1.1813 +class CTestStep_MMF_SRSSNK_U_0007 : public CTestStep_MMF_SRSSNK
1.1814 + {
1.1815 +public:
1.1816 + CTestStep_MMF_SRSSNK_U_0007();
1.1817 + ~CTestStep_MMF_SRSSNK_U_0007();
1.1818 + virtual TVerdict DoTestStepL();
1.1819 + };
1.1820 +
1.1821 +
1.1822 +/**
1.1823 + *
1.1824 + *
1.1825 + */
1.1826 +class CTestStep_MMF_SRSSNK_U_0008 : public CTestStep_MMF_SRSSNK
1.1827 + {
1.1828 +public:
1.1829 + CTestStep_MMF_SRSSNK_U_0008();
1.1830 + ~CTestStep_MMF_SRSSNK_U_0008();
1.1831 + virtual TVerdict DoTestStepL();
1.1832 + };
1.1833 +
1.1834 +
1.1835 +/**
1.1836 + *
1.1837 + *
1.1838 + */
1.1839 +class CTestStep_MMF_SRSSNK_U_0009 : public CTestStep_MMF_SRSSNK
1.1840 + {
1.1841 +public:
1.1842 + CTestStep_MMF_SRSSNK_U_0009();
1.1843 + ~CTestStep_MMF_SRSSNK_U_0009();
1.1844 + virtual TVerdict DoTestStepL();
1.1845 + };
1.1846 +
1.1847 +
1.1848 +/**
1.1849 + *
1.1850 + *
1.1851 + */
1.1852 +class CTestStep_MMF_SRSSNK_U_0010 : public CTestStep_MMF_SRSSNK
1.1853 + {
1.1854 +public:
1.1855 + CTestStep_MMF_SRSSNK_U_0010();
1.1856 + ~CTestStep_MMF_SRSSNK_U_0010();
1.1857 + virtual TVerdict DoTestStepL();
1.1858 + };
1.1859 +
1.1860 +/**
1.1861 + *
1.1862 + *
1.1863 + */
1.1864 +class CTestStep_MMF_SRSSNK_U_0011 : public CTestStep_MMF_SRSSNK
1.1865 + {
1.1866 +public:
1.1867 + CTestStep_MMF_SRSSNK_U_0011();
1.1868 + ~CTestStep_MMF_SRSSNK_U_0011();
1.1869 + virtual TVerdict DoTestStepL();
1.1870 + };
1.1871 +
1.1872 +/**
1.1873 + *
1.1874 + *
1.1875 + */
1.1876 +class CTestStep_MMF_SRSSNK_U_0012 : public CTestStep_MMF_SRSSNK
1.1877 + {
1.1878 +public:
1.1879 + CTestStep_MMF_SRSSNK_U_0012();
1.1880 + ~CTestStep_MMF_SRSSNK_U_0012();
1.1881 + virtual TVerdict DoTestStepL();
1.1882 + };
1.1883 +
1.1884 +/**
1.1885 + *
1.1886 + *
1.1887 + */
1.1888 +class CTestStep_MMF_SRSSNK_U_0013 : public CTestStep_MMF_SRSSNK
1.1889 + {
1.1890 +public:
1.1891 + CTestStep_MMF_SRSSNK_U_0013();
1.1892 + ~CTestStep_MMF_SRSSNK_U_0013();
1.1893 + virtual TVerdict DoTestStepL();
1.1894 + };
1.1895 +
1.1896 +/**
1.1897 + *
1.1898 + *
1.1899 + */
1.1900 +class CTestStep_MMF_SRSSNK_U_0014 : public CTestStep_MMF_SRSSNK
1.1901 + {
1.1902 +public:
1.1903 + CTestStep_MMF_SRSSNK_U_0014();
1.1904 + ~CTestStep_MMF_SRSSNK_U_0014();
1.1905 + virtual TVerdict DoTestStepL();
1.1906 + };
1.1907 +
1.1908 +/**
1.1909 + *
1.1910 + *
1.1911 + */
1.1912 +class CTestStep_MMF_SRSSNK_U_0015 : public CTestStep_MMF_SRSSNK
1.1913 + {
1.1914 +public:
1.1915 + CTestStep_MMF_SRSSNK_U_0015();
1.1916 + ~CTestStep_MMF_SRSSNK_U_0015();
1.1917 + virtual TVerdict DoTestStepL();
1.1918 + };
1.1919 +
1.1920 +
1.1921 +/**
1.1922 + *
1.1923 + *
1.1924 + */
1.1925 +class CTestStep_MMF_SRSSNK_U_0101 : public CTestStep_MMF_SRSSNK
1.1926 + {
1.1927 +public:
1.1928 + CTestStep_MMF_SRSSNK_U_0101();
1.1929 + ~CTestStep_MMF_SRSSNK_U_0101();
1.1930 + virtual TVerdict DoTestStepL();
1.1931 + };
1.1932 +
1.1933 +/**
1.1934 + *
1.1935 + *
1.1936 + */
1.1937 +class CTestStep_MMF_SRSSNK_U_0102 : public CTestStep_MMF_SRSSNK
1.1938 + {
1.1939 +public:
1.1940 + CTestStep_MMF_SRSSNK_U_0102();
1.1941 + ~CTestStep_MMF_SRSSNK_U_0102();
1.1942 + virtual TVerdict DoTestStepL();
1.1943 + };
1.1944 +
1.1945 +
1.1946 +/**
1.1947 + *
1.1948 + *
1.1949 + */
1.1950 +class CTestStep_MMF_SRSSNK_U_0103 : public CTestStep_MMF_SRSSNK
1.1951 + {
1.1952 +public:
1.1953 + CTestStep_MMF_SRSSNK_U_0103();
1.1954 + ~CTestStep_MMF_SRSSNK_U_0103();
1.1955 + virtual TVerdict DoTestStepL();
1.1956 + };
1.1957 +
1.1958 +
1.1959 +/**
1.1960 + *
1.1961 + *
1.1962 + */
1.1963 +class CTestStep_MMF_SRSSNK_U_0104 : public CTestStep_MMF_SRSSNK
1.1964 + {
1.1965 +public:
1.1966 + CTestStep_MMF_SRSSNK_U_0104();
1.1967 + ~CTestStep_MMF_SRSSNK_U_0104();
1.1968 + virtual TVerdict DoTestStepL();
1.1969 + };
1.1970 +
1.1971 +
1.1972 +
1.1973 +/**
1.1974 + *
1.1975 + *
1.1976 + */
1.1977 +class CTestStep_MMF_SRSSNK_FileSourceMisc : public CTestStep_MMF_SRSSNK
1.1978 + {
1.1979 +public:
1.1980 + CTestStep_MMF_SRSSNK_FileSourceMisc(TSourceType aSourceType);
1.1981 + ~CTestStep_MMF_SRSSNK_FileSourceMisc();
1.1982 + virtual TVerdict DoTestStepL();
1.1983 +private:
1.1984 + TSourceType iSourceType;
1.1985 + };
1.1986 +
1.1987 +
1.1988 +/**
1.1989 + *
1.1990 + *
1.1991 + */
1.1992 +class CTestStep_MMF_SRSSNK_FileFillBuffer : public CTestStep_MMF_SRSSNK
1.1993 + {
1.1994 +public:
1.1995 + CTestStep_MMF_SRSSNK_FileFillBuffer(TSourceType aSourceType);
1.1996 + ~CTestStep_MMF_SRSSNK_FileFillBuffer();
1.1997 + virtual TVerdict DoTestStepL();
1.1998 +private:
1.1999 + TSourceType iSourceType;
1.2000 + };
1.2001 +
1.2002 +
1.2003 +
1.2004 +
1.2005 +/**
1.2006 + *
1.2007 + *
1.2008 + */
1.2009 +class CTestStep_MMF_SRSSNK_U_0107 : public CTestStep_MMF_SRSSNK
1.2010 + {
1.2011 +public:
1.2012 + CTestStep_MMF_SRSSNK_U_0107();
1.2013 + ~CTestStep_MMF_SRSSNK_U_0107();
1.2014 + virtual TVerdict DoTestStepL();
1.2015 + };
1.2016 +
1.2017 +
1.2018 +/**
1.2019 + *
1.2020 + *
1.2021 + */
1.2022 +class CTestStep_MMF_SRSSNK_FileReadBuffer : public CTestStep_MMF_SRSSNK
1.2023 + {
1.2024 +public:
1.2025 + CTestStep_MMF_SRSSNK_FileReadBuffer(TSourceType aSourceType);
1.2026 + ~CTestStep_MMF_SRSSNK_FileReadBuffer();
1.2027 + virtual TVerdict DoTestStepL();
1.2028 +private:
1.2029 + TSourceType iSourceType;
1.2030 + };
1.2031 +
1.2032 +
1.2033 +/**
1.2034 + *
1.2035 + *
1.2036 + */
1.2037 +class CTestStep_MMF_SRSSNK_U_0109 : public CTestStep_MMF_SRSSNK
1.2038 + {
1.2039 +public:
1.2040 + CTestStep_MMF_SRSSNK_U_0109();
1.2041 + ~CTestStep_MMF_SRSSNK_U_0109();
1.2042 + virtual TVerdict DoTestStepL();
1.2043 + };
1.2044 +
1.2045 +
1.2046 +/**
1.2047 + *
1.2048 + *
1.2049 + */
1.2050 +class CTestStep_MMF_SRSSNK_FileSinkMisc : public CTestStep_MMF_SRSSNK
1.2051 + {
1.2052 +public:
1.2053 + CTestStep_MMF_SRSSNK_FileSinkMisc(TSinkType aSinkType);
1.2054 + ~CTestStep_MMF_SRSSNK_FileSinkMisc();
1.2055 + virtual TVerdict DoTestStepL();
1.2056 +private:
1.2057 + TSinkType iSinkType;
1.2058 + };
1.2059 +
1.2060 +
1.2061 +/**
1.2062 + *
1.2063 + *
1.2064 + */
1.2065 +class CTestStep_MMF_SRSSNK_FileEmptyBuffer : public CTestStep_MMF_SRSSNK
1.2066 + {
1.2067 +public:
1.2068 + CTestStep_MMF_SRSSNK_FileEmptyBuffer(TSinkType aSinkType);
1.2069 + ~CTestStep_MMF_SRSSNK_FileEmptyBuffer();
1.2070 + virtual TVerdict DoTestStepL();
1.2071 +
1.2072 +private:
1.2073 + TSinkType iSinkType;
1.2074 + };
1.2075 +
1.2076 +
1.2077 +/**
1.2078 + *
1.2079 + *
1.2080 + */
1.2081 +class CTestStep_MMF_SRSSNK_U_0112 : public CTestStep_MMF_SRSSNK
1.2082 + {
1.2083 +public:
1.2084 + CTestStep_MMF_SRSSNK_U_0112();
1.2085 + ~CTestStep_MMF_SRSSNK_U_0112();
1.2086 + virtual TVerdict DoTestStepL();
1.2087 + };
1.2088 +
1.2089 +
1.2090 +/**
1.2091 + *
1.2092 + *
1.2093 + */
1.2094 +class CTestStep_MMF_SRSSNK_FileWriteBuffer : public CTestStep_MMF_SRSSNK
1.2095 + {
1.2096 +public:
1.2097 + CTestStep_MMF_SRSSNK_FileWriteBuffer(TSinkType aSinkType);
1.2098 + ~CTestStep_MMF_SRSSNK_FileWriteBuffer();
1.2099 + virtual TVerdict DoTestStepL();
1.2100 +
1.2101 +private:
1.2102 + TSinkType iSinkType;
1.2103 + };
1.2104 +
1.2105 +
1.2106 +/**
1.2107 + *
1.2108 + *
1.2109 + */
1.2110 +class CTestStep_MMF_SRSSNK_U_0114 : public CTestStep_MMF_SRSSNK
1.2111 + {
1.2112 +public:
1.2113 + CTestStep_MMF_SRSSNK_U_0114();
1.2114 + ~CTestStep_MMF_SRSSNK_U_0114();
1.2115 + virtual TVerdict DoTestStepL();
1.2116 + };
1.2117 +
1.2118 +/**
1.2119 + *
1.2120 + *
1.2121 + */
1.2122 +class CTestStep_MMF_SRSSNK_U_0115 : public CTestStep_MMF_SRSSNK
1.2123 + {
1.2124 +public:
1.2125 + CTestStep_MMF_SRSSNK_U_0115();
1.2126 + ~CTestStep_MMF_SRSSNK_U_0115();
1.2127 + virtual TVerdict DoTestStepL();
1.2128 + };
1.2129 +
1.2130 +
1.2131 +/**
1.2132 + *
1.2133 + *
1.2134 + */
1.2135 +class CTestStep_MMF_SRSSNK_FileEvaluateIntent : public CTestStep_MMF_SRSSNK
1.2136 + {
1.2137 +public:
1.2138 + CTestStep_MMF_SRSSNK_FileEvaluateIntent(TSourceType aSourceType);
1.2139 + ~CTestStep_MMF_SRSSNK_FileEvaluateIntent();
1.2140 + virtual TVerdict DoTestStepL();
1.2141 +private:
1.2142 + TSourceType iSourceType;
1.2143 + TSinkType iSinkType;
1.2144 + };
1.2145 +
1.2146 +/**
1.2147 + *
1.2148 + *
1.2149 + */
1.2150 +class CTestStep_MMF_SRSSNK_FileExecuteIntent : public CTestStep_MMF_SRSSNK
1.2151 + {
1.2152 +public:
1.2153 + CTestStep_MMF_SRSSNK_FileExecuteIntent(TSourceType aSourceType);
1.2154 + ~CTestStep_MMF_SRSSNK_FileExecuteIntent();
1.2155 + virtual TVerdict DoTestStepL();
1.2156 +private:
1.2157 + TSourceType iSourceType;
1.2158 + TSinkType iSinkType;
1.2159 + };
1.2160 +
1.2161 +
1.2162 +/*
1.2163 + *
1.2164 + *
1.2165 + */
1.2166 +class CTestStep_MMF_SRSSNK_FileIsProtected : public CTestStep_MMF_SRSSNK
1.2167 + {
1.2168 +public:
1.2169 + CTestStep_MMF_SRSSNK_FileIsProtected(TSourceType aSourceType);
1.2170 + ~CTestStep_MMF_SRSSNK_FileIsProtected();
1.2171 + virtual TVerdict DoTestStepL();
1.2172 +private:
1.2173 + TSourceType iSourceType;
1.2174 + TSinkType iSinkType;
1.2175 + };
1.2176 +
1.2177 +/*
1.2178 + *
1.2179 + *
1.2180 + */
1.2181 +class CTestStep_MMF_SRSSNK_U_0119 : public CTestStep_MMF_SRSSNK
1.2182 + {
1.2183 +public:
1.2184 + CTestStep_MMF_SRSSNK_U_0119();
1.2185 + ~CTestStep_MMF_SRSSNK_U_0119();
1.2186 + virtual TVerdict DoTestStepL();
1.2187 + };
1.2188 +
1.2189 +
1.2190 +/**
1.2191 + *
1.2192 + *
1.2193 + */
1.2194 +class CTestStep_MMF_SRSSNK_U_0201 : public CTestStep_MMF_SRSSNK
1.2195 + {
1.2196 +public:
1.2197 + CTestStep_MMF_SRSSNK_U_0201();
1.2198 + ~CTestStep_MMF_SRSSNK_U_0201();
1.2199 + virtual TVerdict DoTestStepL();
1.2200 + };
1.2201 +
1.2202 +
1.2203 +/**
1.2204 + *
1.2205 + *
1.2206 + */
1.2207 +class CTestStep_MMF_SRSSNK_U_0202 : public CTestStep_MMF_SRSSNK
1.2208 + {
1.2209 +public:
1.2210 + CTestStep_MMF_SRSSNK_U_0202();
1.2211 + ~CTestStep_MMF_SRSSNK_U_0202();
1.2212 + virtual TVerdict DoTestStepL();
1.2213 + };
1.2214 +
1.2215 +
1.2216 +/**
1.2217 + *
1.2218 + *
1.2219 + */
1.2220 +class CTestStep_MMF_SRSSNK_U_0203 : public CTestStep_MMF_SRSSNK
1.2221 + {
1.2222 +public:
1.2223 + CTestStep_MMF_SRSSNK_U_0203();
1.2224 + ~CTestStep_MMF_SRSSNK_U_0203();
1.2225 + virtual TVerdict DoTestStepL();
1.2226 + };
1.2227 +
1.2228 +/**
1.2229 + *
1.2230 + *
1.2231 + */
1.2232 +class CTestStep_MMF_SRSSNK_U_0204 : public CTestStep_MMF_SRSSNK
1.2233 + {
1.2234 +public:
1.2235 + CTestStep_MMF_SRSSNK_U_0204();
1.2236 + ~CTestStep_MMF_SRSSNK_U_0204();
1.2237 + virtual TVerdict DoTestStepL();
1.2238 + };
1.2239 +
1.2240 +/**
1.2241 + *
1.2242 + *
1.2243 + */
1.2244 +class CTestStep_MMF_SRSSNK_U_0205 : public CTestStep_MMF_SRSSNK
1.2245 + {
1.2246 +public:
1.2247 + CTestStep_MMF_SRSSNK_U_0205();
1.2248 + ~CTestStep_MMF_SRSSNK_U_0205();
1.2249 + virtual TVerdict DoTestStepL();
1.2250 + };
1.2251 +
1.2252 +/**
1.2253 + *
1.2254 + *
1.2255 + */
1.2256 +class CTestStep_MMF_SRSSNK_U_0206 : public CTestStep_MMF_SRSSNK
1.2257 + {
1.2258 +public:
1.2259 + CTestStep_MMF_SRSSNK_U_0206();
1.2260 + ~CTestStep_MMF_SRSSNK_U_0206();
1.2261 + virtual TVerdict DoTestStepL();
1.2262 + };
1.2263 +
1.2264 +/**
1.2265 + *
1.2266 + *
1.2267 + */
1.2268 +class CTestStep_MMF_SRSSNK_U_0207 : public CTestStep_MMF_SRSSNK, public MDevSoundObserver
1.2269 + {
1.2270 +public:
1.2271 + CTestStep_MMF_SRSSNK_U_0207();
1.2272 + ~CTestStep_MMF_SRSSNK_U_0207();
1.2273 + virtual TVerdict DoTestStepL();
1.2274 +
1.2275 + // from MDevSoundObserver
1.2276 + virtual void InitializeComplete(TInt aError);
1.2277 + virtual void ToneFinished(TInt /*aError*/) {};
1.2278 + virtual void BufferToBeFilled(CMMFBuffer* /*aBuffer*/) {};
1.2279 + virtual void PlayError(TInt /*aError*/) {};
1.2280 + virtual void BufferToBeEmptied(CMMFBuffer* /*aBuffer*/) {};
1.2281 + virtual void RecordError(TInt /*aError*/) {};
1.2282 + virtual void ConvertError(TInt /*aError*/) {};
1.2283 + virtual void DeviceMessage(TUid /*aMessageType*/, const TDesC8& /*aMsg*/) {};
1.2284 + virtual void SendEventToClient(const TMMFEvent& /*aEvent*/) {};
1.2285 + CMMFAudioInput* iSource; // not owned by CTestStep_MMF_SRSSNK_U_0207, but transient
1.2286 + TInt iError;
1.2287 + };
1.2288 +
1.2289 +/**
1.2290 + *
1.2291 + *
1.2292 + */
1.2293 +class CTestStep_MMF_SRSSNK_U_0208 : public CTestStep_MMF_SRSSNK
1.2294 + {
1.2295 +public:
1.2296 + CTestStep_MMF_SRSSNK_U_0208();
1.2297 + ~CTestStep_MMF_SRSSNK_U_0208();
1.2298 + virtual TVerdict DoTestStepL();
1.2299 + };
1.2300 +
1.2301 +/**
1.2302 + *
1.2303 + *
1.2304 + */
1.2305 +class CTestStep_MMF_SRSSNK_U_0209 : public CTestStep_MMF_SRSSNK
1.2306 + {
1.2307 +public:
1.2308 + CTestStep_MMF_SRSSNK_U_0209();
1.2309 + ~CTestStep_MMF_SRSSNK_U_0209();
1.2310 + virtual TVerdict DoTestStepL();
1.2311 + };
1.2312 +
1.2313 +/**
1.2314 + *
1.2315 + *
1.2316 + */
1.2317 +class CTestStep_MMF_SRSSNK_U_0210 : public CTestStep_MMF_SRSSNK
1.2318 + {
1.2319 +public:
1.2320 + CTestStep_MMF_SRSSNK_U_0210();
1.2321 + ~CTestStep_MMF_SRSSNK_U_0210();
1.2322 + virtual TVerdict DoTestStepL();
1.2323 + };
1.2324 +
1.2325 +/**
1.2326 + *
1.2327 + *
1.2328 + */
1.2329 +class CTestStep_MMF_SRSSNK_U_0211 : public CTestStep_MMF_SRSSNK
1.2330 + {
1.2331 +public:
1.2332 + CTestStep_MMF_SRSSNK_U_0211();
1.2333 + ~CTestStep_MMF_SRSSNK_U_0211();
1.2334 + virtual TVerdict DoTestStepL();
1.2335 + };
1.2336 +
1.2337 +/**
1.2338 + *
1.2339 + *
1.2340 + */
1.2341 +class CTestStep_MMF_SRSSNK_U_0212 : public CTestStep_MMF_SRSSNK
1.2342 + {
1.2343 +public:
1.2344 + CTestStep_MMF_SRSSNK_U_0212();
1.2345 + ~CTestStep_MMF_SRSSNK_U_0212();
1.2346 + virtual TVerdict DoTestStepL();
1.2347 + };
1.2348 +
1.2349 +/*
1.2350 + *
1.2351 + *
1.2352 + */
1.2353 +class CTestStep_MMF_SRSSNK_U_0301 : public CTestStep_MMF_SRSSNK
1.2354 + {
1.2355 +public:
1.2356 + CTestStep_MMF_SRSSNK_U_0301();
1.2357 + ~CTestStep_MMF_SRSSNK_U_0301();
1.2358 + virtual TVerdict DoTestStepL();
1.2359 + };
1.2360 +
1.2361 +/*
1.2362 + *
1.2363 + *
1.2364 + */
1.2365 +class CTestStep_MMF_SRSSNK_U_0302 : public CTestStep_MMF_SRSSNK
1.2366 + {
1.2367 +public:
1.2368 + CTestStep_MMF_SRSSNK_U_0302();
1.2369 + ~CTestStep_MMF_SRSSNK_U_0302();
1.2370 + virtual TVerdict DoTestStepL();
1.2371 + };
1.2372 +
1.2373 +
1.2374 +/* Testing of the Source and Sink
1.2375 + *
1.2376 + *
1.2377 + */
1.2378 +
1.2379 +class CTestStep_MMF_SRSSNK_U_0400 : public CTestStep_MMF_SRSSNK
1.2380 + {
1.2381 +public:
1.2382 + CTestStep_MMF_SRSSNK_U_0400();
1.2383 + ~CTestStep_MMF_SRSSNK_U_0400();
1.2384 + virtual TVerdict DoTestStepL();
1.2385 + };
1.2386 +
1.2387 +class CTestStep_MMF_SRSSNK_U_0405 : public CTestStep_MMF_SRSSNK
1.2388 + {
1.2389 +public:
1.2390 + CTestStep_MMF_SRSSNK_U_0405();
1.2391 + ~CTestStep_MMF_SRSSNK_U_0405();
1.2392 + virtual TVerdict DoTestStepL();
1.2393 + };
1.2394 +
1.2395 +class CTestStep_MMF_SRSSNK_U_0406 : public CTestStep_MMF_SRSSNK
1.2396 + {
1.2397 +public:
1.2398 + CTestStep_MMF_SRSSNK_U_0406();
1.2399 + ~CTestStep_MMF_SRSSNK_U_0406();
1.2400 + virtual TVerdict DoTestStepL();
1.2401 + };
1.2402 +
1.2403 +class CTestStep_MMF_SRSSNK_U_0407 : public CTestStep_MMF_SRSSNK
1.2404 + {
1.2405 +public:
1.2406 + CTestStep_MMF_SRSSNK_U_0407();
1.2407 + ~CTestStep_MMF_SRSSNK_U_0407();
1.2408 + virtual TVerdict DoTestStepL();
1.2409 + };
1.2410 +
1.2411 +class CTestStep_MMF_SRSSNK_U_0408 : public CTestStep_MMF_SRSSNK
1.2412 + {
1.2413 +public:
1.2414 + CTestStep_MMF_SRSSNK_U_0408();
1.2415 + ~CTestStep_MMF_SRSSNK_U_0408();
1.2416 + virtual TVerdict DoTestStepL();
1.2417 + };
1.2418 +
1.2419 +
1.2420 +class CTestStep_MMF_SRSSNK_U_0409 : public CTestStep_MMF_SRSSNK
1.2421 + {
1.2422 +public:
1.2423 + CTestStep_MMF_SRSSNK_U_0409();
1.2424 + ~CTestStep_MMF_SRSSNK_U_0409();
1.2425 + virtual TVerdict DoTestStepL();
1.2426 + };
1.2427 +
1.2428 +class CTestStep_MMF_SRSSNK_U_0410 : public CTestStep_MMF_SRSSNK
1.2429 + {
1.2430 +public:
1.2431 + CTestStep_MMF_SRSSNK_U_0410();
1.2432 + ~CTestStep_MMF_SRSSNK_U_0410();
1.2433 + virtual TVerdict DoTestStepL();
1.2434 + };
1.2435 +
1.2436 +class CTestStep_MMF_SRSSNK_U_0411 : public CTestStep_MMF_SRSSNK
1.2437 + {
1.2438 +public:
1.2439 + CTestStep_MMF_SRSSNK_U_0411();
1.2440 + ~CTestStep_MMF_SRSSNK_U_0411();
1.2441 + virtual TVerdict DoTestStepL();
1.2442 + };
1.2443 +
1.2444 +class CTestStep_MMF_SRSSNK_U_0412 : public CTestStep_MMF_SRSSNK
1.2445 + {
1.2446 +public:
1.2447 + CTestStep_MMF_SRSSNK_U_0412();
1.2448 + ~CTestStep_MMF_SRSSNK_U_0412();
1.2449 + virtual TVerdict DoTestStepL();
1.2450 + };
1.2451 +
1.2452 +class CTestStep_MMF_SRSSNK_U_0413 : public CTestStep_MMF_SRSSNK
1.2453 + {
1.2454 +public:
1.2455 + CTestStep_MMF_SRSSNK_U_0413();
1.2456 + ~CTestStep_MMF_SRSSNK_U_0413();
1.2457 + virtual TVerdict DoTestStepL();
1.2458 + };
1.2459 +
1.2460 +class CTestStep_MMF_SRSSNK_U_0414 : public CTestStep_MMF_SRSSNK
1.2461 + {
1.2462 +public:
1.2463 + CTestStep_MMF_SRSSNK_U_0414();
1.2464 + ~CTestStep_MMF_SRSSNK_U_0414();
1.2465 + virtual TVerdict DoTestStepL();
1.2466 + };
1.2467 +
1.2468 +class CTestStep_MMF_SRSSNK_U_0415 : public CTestStep_MMF_SRSSNK
1.2469 + {
1.2470 +public:
1.2471 + CTestStep_MMF_SRSSNK_U_0415();
1.2472 + ~CTestStep_MMF_SRSSNK_U_0415();
1.2473 + virtual TVerdict DoTestStepL();
1.2474 + };
1.2475 +
1.2476 +class CTestStep_MMF_SRSSNK_U_0416 : public CTestStep_MMF_SRSSNK
1.2477 + {
1.2478 +public:
1.2479 + CTestStep_MMF_SRSSNK_U_0416();
1.2480 + ~CTestStep_MMF_SRSSNK_U_0416();
1.2481 + virtual TVerdict DoTestStepL();
1.2482 + };
1.2483 +
1.2484 +class CTestStep_MMF_SRSSNK_U_0417 : public CTestStep_MMF_SRSSNK
1.2485 + {
1.2486 +public:
1.2487 + CTestStep_MMF_SRSSNK_U_0417();
1.2488 + ~CTestStep_MMF_SRSSNK_U_0417();
1.2489 + virtual TVerdict DoTestStepL();
1.2490 + };
1.2491 +
1.2492 +class CTestStep_MMF_SRSSNK_U_0418 : public CTestStep_MMF_SRSSNK
1.2493 + {
1.2494 +public:
1.2495 + CTestStep_MMF_SRSSNK_U_0418();
1.2496 + ~CTestStep_MMF_SRSSNK_U_0418();
1.2497 + virtual TVerdict DoTestStepL();
1.2498 + };
1.2499 +
1.2500 +class CTestStep_MMF_SRSSNK_U_0419 : public CTestStep_MMF_SRSSNK
1.2501 + {
1.2502 +public:
1.2503 + CTestStep_MMF_SRSSNK_U_0419();
1.2504 + ~CTestStep_MMF_SRSSNK_U_0419();
1.2505 + virtual TVerdict DoTestStepL();
1.2506 + };
1.2507 +
1.2508 +class CTestStep_MMF_SRSSNK_U_0420 : public CTestStep_MMF_SRSSNK
1.2509 + {
1.2510 +public:
1.2511 + CTestStep_MMF_SRSSNK_U_0420();
1.2512 + ~CTestStep_MMF_SRSSNK_U_0420();
1.2513 + virtual TVerdict DoTestStepL();
1.2514 + };
1.2515 +
1.2516 +class CTestStep_MMF_SRSSNK_U_0421 : public CTestStep_MMF_SRSSNK
1.2517 + {
1.2518 +public:
1.2519 + CTestStep_MMF_SRSSNK_U_0421();
1.2520 + ~CTestStep_MMF_SRSSNK_U_0421();
1.2521 + virtual TVerdict DoTestStepL();
1.2522 + };
1.2523 +
1.2524 +/*
1.2525 + *
1.2526 + * Sinks
1.2527 + *
1.2528 + */
1.2529 +
1.2530 +class CTestStep_MMF_SRSSNK_U_0500 : public CTestStep_MMF_SRSSNK
1.2531 + {
1.2532 +public:
1.2533 + CTestStep_MMF_SRSSNK_U_0500();
1.2534 + ~CTestStep_MMF_SRSSNK_U_0500();
1.2535 + virtual TVerdict DoTestStepL();
1.2536 + };
1.2537 +
1.2538 +class CTestStep_MMF_SRSSNK_U_0505 : public CTestStep_MMF_SRSSNK
1.2539 + {
1.2540 +public:
1.2541 + CTestStep_MMF_SRSSNK_U_0505();
1.2542 + ~CTestStep_MMF_SRSSNK_U_0505();
1.2543 + virtual TVerdict DoTestStepL();
1.2544 + };
1.2545 +
1.2546 +class CTestStep_MMF_SRSSNK_U_0506 : public CTestStep_MMF_SRSSNK
1.2547 + {
1.2548 +public:
1.2549 + CTestStep_MMF_SRSSNK_U_0506();
1.2550 + ~CTestStep_MMF_SRSSNK_U_0506();
1.2551 + virtual TVerdict DoTestStepL();
1.2552 + };
1.2553 +
1.2554 +
1.2555 +class CTestStep_MMF_SRSSNK_U_0507 : public CTestStep_MMF_SRSSNK
1.2556 + {
1.2557 +public:
1.2558 + CTestStep_MMF_SRSSNK_U_0507();
1.2559 + ~CTestStep_MMF_SRSSNK_U_0507();
1.2560 + virtual TVerdict DoTestStepL();
1.2561 + };
1.2562 +
1.2563 +
1.2564 +class CTestStep_MMF_SRSSNK_U_0508 : public CTestStep_MMF_SRSSNK
1.2565 + {
1.2566 +public:
1.2567 + CTestStep_MMF_SRSSNK_U_0508();
1.2568 + ~CTestStep_MMF_SRSSNK_U_0508();
1.2569 + virtual TVerdict DoTestStepL();
1.2570 + };
1.2571 +
1.2572 +class CTestStep_MMF_SRSSNK_U_0509 : public CTestStep_MMF_SRSSNK
1.2573 + {
1.2574 +public:
1.2575 + CTestStep_MMF_SRSSNK_U_0509();
1.2576 + ~CTestStep_MMF_SRSSNK_U_0509();
1.2577 + virtual TVerdict DoTestStepL();
1.2578 + };
1.2579 +
1.2580 +
1.2581 +
1.2582 +class CTestStep_MMF_SRSSNK_U_0510 : public CTestStep_MMF_SRSSNK
1.2583 + {
1.2584 +public:
1.2585 + CTestStep_MMF_SRSSNK_U_0510();
1.2586 + ~CTestStep_MMF_SRSSNK_U_0510();
1.2587 + virtual TVerdict DoTestStepL();
1.2588 + };
1.2589 +
1.2590 +
1.2591 +
1.2592 +class CTestStep_MMF_SRSSNK_U_0511 : public CTestStep_MMF_SRSSNK
1.2593 + {
1.2594 +public:
1.2595 + CTestStep_MMF_SRSSNK_U_0511();
1.2596 + ~CTestStep_MMF_SRSSNK_U_0511();
1.2597 + virtual TVerdict DoTestStepL();
1.2598 + };
1.2599 +
1.2600 +
1.2601 +class CTestStep_MMF_SRSSNK_U_0512 : public CTestStep_MMF_SRSSNK
1.2602 + {
1.2603 +public:
1.2604 + CTestStep_MMF_SRSSNK_U_0512();
1.2605 + ~CTestStep_MMF_SRSSNK_U_0512();
1.2606 + virtual TVerdict DoTestStepL();
1.2607 + };
1.2608 +
1.2609 +
1.2610 +class CTestStep_MMF_SRSSNK_U_0513 : public CTestStep_MMF_SRSSNK
1.2611 + {
1.2612 +public:
1.2613 + CTestStep_MMF_SRSSNK_U_0513();
1.2614 + ~CTestStep_MMF_SRSSNK_U_0513();
1.2615 + virtual TVerdict DoTestStepL();
1.2616 + };
1.2617 +
1.2618 +
1.2619 +
1.2620 +class CTestStep_MMF_SRSSNK_U_0514 : public CTestStep_MMF_SRSSNK
1.2621 + {
1.2622 +public:
1.2623 + CTestStep_MMF_SRSSNK_U_0514();
1.2624 + ~CTestStep_MMF_SRSSNK_U_0514();
1.2625 + virtual TVerdict DoTestStepL();
1.2626 + };
1.2627 +
1.2628 +
1.2629 +class CTestStep_MMF_SRSSNK_U_0515 : public CTestStep_MMF_SRSSNK
1.2630 + {
1.2631 +public:
1.2632 + CTestStep_MMF_SRSSNK_U_0515();
1.2633 + ~CTestStep_MMF_SRSSNK_U_0515();
1.2634 + virtual TVerdict DoTestStepL();
1.2635 + };
1.2636 +
1.2637 +
1.2638 +class CTestStep_MMF_SRSSNK_U_0516 : public CTestStep_MMF_SRSSNK
1.2639 + {
1.2640 +public:
1.2641 + CTestStep_MMF_SRSSNK_U_0516();
1.2642 + ~CTestStep_MMF_SRSSNK_U_0516();
1.2643 + virtual TVerdict DoTestStepL();
1.2644 + };
1.2645 +
1.2646 +
1.2647 +class CTestStep_MMF_SRSSNK_U_0517 : public CTestStep_MMF_SRSSNK
1.2648 + {
1.2649 +public:
1.2650 + CTestStep_MMF_SRSSNK_U_0517();
1.2651 + ~CTestStep_MMF_SRSSNK_U_0517();
1.2652 + virtual TVerdict DoTestStepL();
1.2653 + };
1.2654 +
1.2655 +
1.2656 +
1.2657 +class CTestStep_MMF_SRSSNK_U_0518 : public CTestStep_MMF_SRSSNK
1.2658 + {
1.2659 +public:
1.2660 + CTestStep_MMF_SRSSNK_U_0518();
1.2661 + ~CTestStep_MMF_SRSSNK_U_0518();
1.2662 + virtual TVerdict DoTestStepL();
1.2663 + };
1.2664 +
1.2665 +
1.2666 +
1.2667 +class CTestStep_MMF_SRSSNK_U_0519 : public CTestStep_MMF_SRSSNK
1.2668 + {
1.2669 +public:
1.2670 + CTestStep_MMF_SRSSNK_U_0519();
1.2671 + ~CTestStep_MMF_SRSSNK_U_0519();
1.2672 + virtual TVerdict DoTestStepL();
1.2673 + };
1.2674 +
1.2675 +
1.2676 +class CTestStep_MMF_SRSSNK_MultipleStop : public CTestStep_MMF_SRSSNK
1.2677 + {
1.2678 +public:
1.2679 + CTestStep_MMF_SRSSNK_MultipleStop(); // U_520
1.2680 + ~CTestStep_MMF_SRSSNK_MultipleStop();
1.2681 + virtual TVerdict DoTestStepL();
1.2682 +private:
1.2683 + TSourceType iSourceType;
1.2684 + };
1.2685 +
1.2686 +// INC085391: CMMFFile::iFilePath and iFileDrive should be initialised for KMMFileHandleSource
1.2687 +class CTestStep_MMF_SRSSNK_U_0600 : public CTestStep_MMF_SRSSNK
1.2688 + {
1.2689 +public:
1.2690 + CTestStep_MMF_SRSSNK_U_0600();
1.2691 + ~CTestStep_MMF_SRSSNK_U_0600();
1.2692 + virtual TVerdict DoTestStepL();
1.2693 + };
1.2694 +
1.2695 +//CR0854 - Provide access to the file data via the CData object
1.2696 +class CTestStep_MMF_SRSSNK_U_0521 : public CTestStep_MMF_SRSSNK
1.2697 + {
1.2698 +public:
1.2699 + CTestStep_MMF_SRSSNK_U_0521();
1.2700 + ~CTestStep_MMF_SRSSNK_U_0521();
1.2701 + virtual TVerdict DoTestStepL();
1.2702 + };
1.2703 +
1.2704 +//CR0854 - Provide access to the file data via the CData object
1.2705 +class CTestStep_MMF_SRSSNK_U_0522 : public CTestStep_MMF_SRSSNK
1.2706 + {
1.2707 +public:
1.2708 + CTestStep_MMF_SRSSNK_U_0522();
1.2709 + ~CTestStep_MMF_SRSSNK_U_0522();
1.2710 + virtual TVerdict DoTestStepL();
1.2711 + };
1.2712 +
1.2713 +// PDEF102849: Invalid Remaining Space value obtained for E:\ (memory card)
1.2714 +class CTestStep_MMF_SRSSNK_U_0523 : public CTestStep_MMF_SRSSNK
1.2715 + {
1.2716 +public:
1.2717 + CTestStep_MMF_SRSSNK_U_0523();
1.2718 + ~CTestStep_MMF_SRSSNK_U_0523();
1.2719 + virtual TVerdict DoTestStepL();
1.2720 + };
1.2721 +
1.2722 +//PDEF137282 - Answering VoIP call doesn't work
1.2723 +class CTestStep_MMF_SRSSNK_U_0524 : public CTestStep_MMF_SRSSNK
1.2724 + {
1.2725 +public:
1.2726 + CTestStep_MMF_SRSSNK_U_0524();
1.2727 + ~CTestStep_MMF_SRSSNK_U_0524();
1.2728 + virtual TVerdict DoTestStepL();
1.2729 + };
1.2730 +
1.2731 +class TCreateSourceBuffer3TestStep : public TTestStep, public MAsyncEventHandler
1.2732 + {
1.2733 +public:
1.2734 + TCreateSourceBuffer3TestStep(TSourceType aSourceType, MDataSink* aSink, TUid aExpectedType, TBool aExpectedRef, TInt aExpectedMaxLength = 0)
1.2735 + : TTestStep(NULL, aSink), iSourceType(aSourceType), iExpectedType(aExpectedType), iExpectedRef(aExpectedRef), iExpectedMaxLength(aExpectedMaxLength)
1.2736 + { }
1.2737 +
1.2738 + TVerdict DoTestStepL();
1.2739 + TInt SendEventToClient(const TMMFEvent& aEvent);
1.2740 +
1.2741 +public:
1.2742 + TSourceType iSourceType;
1.2743 + CMMFBuffer* iSinkBuffer;
1.2744 + TUid iExpectedType;
1.2745 + TBool iExpectedRef;
1.2746 + TInt iExpectedMaxLength;
1.2747 + };
1.2748 +
1.2749 +#endif /* __TSU_MMF_SRSSNK_H__ */
1.2750 +
1.2751 +
1.2752 +
1.2753 +
1.2754 +
1.2755 +