os/kernelhwsrv/kerneltest/e32test/usbho/t_usbdi/inc/PBASE-T_USBDI-0493.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 #ifndef __TEST_CASE_PBASE_T_USBDI_0493_H
     2 #define __TEST_CASE_PBASE_T_USBDI_0493_H
     3 
     4 /*
     5 * Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
     6 * All rights reserved.
     7 * This component and the accompanying materials are made available
     8 * under the terms of the License "Eclipse Public License v1.0"
     9 * which accompanies this distribution, and is available
    10 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
    11 *
    12 * Initial Contributors:
    13 * Nokia Corporation - initial contribution.
    14 *
    15 * Contributors:
    16 *
    17 * Description:
    18 * @file PBASE-T_USBDI-0493.h
    19 * @internalComponent
    20 * 
    21 *
    22 */
    23 
    24 
    25 
    26  
    27 #include "BaseBulkTestCase.h"
    28 
    29 
    30 namespace NUnitTesting_USBDI
    31 	{
    32 /**
    33 
    34 	
    35 	@SYMTestCaseID				PBASE-T_USBDI-0493
    36 	@SYMTestCaseDesc			Test for bulk transfers for sizes around and equal to a multiple of the max packet size
    37 	@SYMFssID 
    38 	@SYMPREQ					1305
    39 	@SYMREQ						7055 [USBD : Bulk transfers] 
    40 								7062 [USBD : ZLP write handling]
    41 	@SYMTestType				UT
    42 	@SYMTestPriority			1 
    43 	@SYMTestActions 			1. Open interfaces to connected device
    44 								2. Request four bulk OUT transfers (so that the total bytes sent will be 1023)
    45 								3. Request four bulk IN transfers (expecting data just transferred to peripheral to be sent back)
    46 								4. Validate round trip data
    47 								5. Repeat steps 2 - 4 twice, increasing the number of bytes transferred by one each time
    48 	@SYMTestExpectedResults 	Round trip transfer data is not corrupt
    49 	@SYMTestStatus				Draft
    50 	
    51 
    52 */
    53 class CUT_PBASE_T_USBDI_0493 :  public CBaseBulkTestCase,
    54 								public MTransferObserver,
    55 								public MCommandObserver
    56 	{
    57 public:
    58 	static CUT_PBASE_T_USBDI_0493* NewL(TBool aHostRole);
    59 	~CUT_PBASE_T_USBDI_0493(); 
    60 
    61 public: // From MUsbBusObserver
    62 	void DeviceInsertedL(TUint aDeviceHandle);
    63 
    64 public: // From MCommandObserver
    65 	void Ep0TransferCompleteL(TInt aCompletionCode);
    66 
    67 public: // From MTransferObserver
    68 	void TransferCompleteL(TInt aTransferId,TInt aCompletionCode);
    69 
    70 private:
    71 	CUT_PBASE_T_USBDI_0493(TBool aHostRole);
    72 	void ConstructL();
    73 
    74 private:
    75 	
    76 	enum TCaseStep
    77 		{
    78 		EInProgress,
    79 		EPassed,
    80 		EFailed,
    81 		ETransferIn,
    82 		ETransferOut
    83 		};
    84 
    85 	TUint iNumTransferBytes;
    86 
    87 	TCaseStep iCaseStep;
    88 
    89 private:
    90 	/**
    91 	The functor for this test case
    92 	*/
    93 	const static TFunctorTestCase<CUT_PBASE_T_USBDI_0493,TBool> iFunctor;
    94 	};
    95 
    96 	} //end namespace
    97 
    98 #endif