Symbian3/PDK/Source/GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3.dita
changeset 14 578be2adaf3e
parent 5 f345bda72bc4
--- a/Symbian3/PDK/Source/GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3.dita	Tue Jul 20 12:00:49 2010 +0100
+++ b/Symbian3/PDK/Source/GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3.dita	Fri Aug 13 16:47:46 2010 +0100
@@ -1,392 +1,392 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
-<!-- This component and the accompanying materials are made available under the terms of the License 
-"Eclipse Public License v1.0" which accompanies this distribution, 
-and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
-<!-- Initial Contributors:
-    Nokia Corporation - initial contribution.
-Contributors: 
--->
-<!DOCTYPE concept
-  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
-<concept id="GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3" xml:lang="en"><title> Base
-F32_EKA2 Validation Test Suite </title><shortdesc>Explanation of file server test suite.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
-<section id="GUID-B1B4BBC0-8820-47BA-9210-5F97D7224618"><title>Test Suite Overview</title> <p>This Suite provides regression
-tests for the following APIs: </p> <ul>
-<li id="GUID-662E0543-3BAC-5317-95D6-927C1F65B903"><p> <codeph> RFs</codeph>  </p> </li>
-<li id="GUID-6EDEB023-D3E1-5EE9-8AB5-F47211D78B05"><p> <codeph>CDir</codeph>  </p> </li>
-<li id="GUID-C6ED91B6-B332-5123-9258-81CFE652C049"><p> <codeph> CDirScan</codeph>  </p> </li>
-<li id="GUID-5813844E-9947-5B4E-92C2-A125F088F71C"><p> <codeph>CFileBase</codeph>  </p> </li>
-<li id="GUID-7E1C7B88-9227-56C2-AEC8-7D9796DEE152"><p> <codeph> CFileMan</codeph>  </p> </li>
-<li id="GUID-C4C259CE-C742-5B24-B2F1-66708A461D5A"><p> <codeph> MFileManObserver</codeph>  </p> </li>
-<li id="GUID-4AB8B219-CA2F-52A3-96D4-3736768A60E9"><p> <codeph>RDir</codeph>  </p> </li>
-<li id="GUID-613685A7-B040-53BB-9560-A9DDAE103F50"><p> <codeph> RFile</codeph>  </p> </li>
-<li id="GUID-A091D969-F8B9-5AF8-8639-F0EC6F3342A0"><p> <codeph> RFormat</codeph>  </p> </li>
-<li id="GUID-66587945-0CB5-5A91-9B05-70C0523E5263"><p> <codeph> RRawDisk</codeph>  </p> </li>
-<li id="GUID-0F32D7AE-743B-5357-8962-9A8752E9B144"><p> <codeph> TDriveUnit</codeph>  </p> </li>
-<li id="GUID-0A46F22A-96BA-5C0C-8A00-5B259BFAC71D"><p> <codeph> TEntry</codeph>  </p> </li>
-<li id="GUID-4475480A-CF58-5A66-92AD-1E10EAD0371F"><p> <codeph> TEntryArray</codeph>  </p> </li>
-<li id="GUID-13D24791-4EBA-5176-8A72-9ABB4CB45092"><p> <codeph> TFindFile</codeph>  </p> </li>
-<li id="GUID-2F4094BC-F595-5BEA-8AAA-1E8DB037D0F6"><p> <codeph> TFileText</codeph>  </p> </li>
-<li id="GUID-83A5D217-1F6C-56E8-8298-E393F36642CE"><p> <codeph> TOpenFileScan</codeph>  </p> </li>
-<li id="GUID-E369E41B-9FDD-5C67-817F-D68C6C03C183"><p> <codeph> TParse</codeph>  </p> </li>
-<li id="GUID-CFFBFA1F-794A-55F9-8088-ECC1663FE031"><p> <codeph> TParseBase</codeph>  </p> </li>
-<li id="GUID-71950702-FFF2-5775-8350-77ED477FCD95"><p> <codeph> TParsePtr</codeph>  </p> </li>
-<li id="GUID-0E9E06A1-EDFD-5B70-A6E5-16A18BE3FB96"><p> <codeph> TparsePtrC</codeph>  </p> </li>
-<li id="GUID-1505EEB4-6C38-5F7C-905B-95977D63DAB7"><p> <codeph> TVolumeInfo</codeph>  </p> </li>
-<li id="GUID-E1D154F8-CD75-5EEA-821B-6226BB2C60FC"><p> <codeph> FileNamesIdentical()</codeph>  </p> </li>
-</ul> <p>All PublishedAll APIs are tested. </p> </section>
-<section id="GUID-BC9345E7-061A-46FE-9CB3-E2FFE5ED38C9"><title>Test Approach</title> <p><b>Automated
-tests</b> </p> <p>All tests of the test suite are fully automated except those
-described in Manual Tests. </p> <p><b> Manual
-tests</b> </p> <p>Tests in the script <filepath>PBASE-F32-RFS-Drives-PublicApi-REM-manual.script</filepath> rely
-on the removal and insertion of removable storage, which requires manual intervention,
-so cannot be automated. Any test case that requires the card door to be opened
-or closed displays a message on the console to instruct the user. The functions
-that must be tested manually are: </p> <ul>
-<li id="GUID-35F48284-0726-5CCB-AC5A-B55CD8B60A3C"><p> <codeph>RFs::LockDrive()</codeph>  </p> </li>
-<li id="GUID-30822831-2CAE-539D-BB2A-795D1CE70695"><p> <codeph> RFs::UnlockDrive()</codeph>  </p> </li>
-<li id="GUID-628110E4-8C5F-5B92-AB80-B9786AE60EA3"><p> <codeph> RFs::ClearPassword()</codeph>  </p> </li>
-<li id="GUID-644D7219-BA77-56A8-80A4-5B5DB90DDA83"><p> <codeph> RFs::ErasePassword()</codeph>  </p> </li>
-</ul> <p><b> MMC
-Card Tests</b> </p> <p>When executing on hardware, all the tests that use
-an MMC card need a real MMC card. </p> <p>On the emulator an MMC card is simulated.
-You must press and release the F5 button when requested to simulate a door
-open or door close event. </p> <p>Some MMC locking related tests can be considered
-as dangerous because they remove all data from the MMC card. These test cases
-are run together with all other test cases to ensure that no critical data
-is saved on the MMC card. </p> <p><b>Dual
-Drive Tests</b> </p> <p>The Dual Drive tests are run on the device which has
-two drives enabled from the same interface. For example, two MMC drives, two
-NAND flash etc. </p> <p>These tests can be run directly by modifying the environment
-file with the relevant drive information. </p> <p id="GUID-06925269-B275-5EFE-98BF-8C908F18A8DF"><b>Categorization by drive
-type</b> </p> <p>Many test cases are dependant on the type of disk drive they
-can be run on. The test suite consists of some of the test scripts each containing
-a certain drive specific tests. </p> <p>The following are the specific drive
-types: </p> <ul>
-<li id="GUID-E26C5289-502B-5028-A82C-EC134E2E0463"><p>ROM-drive (test scripts
-have –ROM postfix in file name) </p> </li>
-<li id="GUID-B7882231-7533-5457-B821-F10D427E0A9A"><p>Paged NAND memory (test
-scripts have –NAND postfix in file name) </p> </li>
-<li id="GUID-2DBFFD6E-50DC-5E49-AF39-E0D77A7F24DC"><p>System-drive (test scripts
-have –OS postfix in file name) </p> </li>
-<li id="GUID-E6D90488-EFF0-555C-834B-5C9E8DD554E4"><p>RAM-drive (test scripts
-have –RAM postfix in file name) </p> </li>
-<li id="GUID-976D7D34-D099-56C5-87FF-1385B46EE6D4"><p>Removable drive (like
-MMC, test scripts have –REM postfix in file name) </p> </li>
-</ul> <p>All the remaining tests are not specific to any type of drive (test
-scripts have –ANY postfix in file name). The separation makes possible to
-test the APIs against a certain drive type. </p> <p><b>Coverage Omissions</b> </p> <p>Function RFs::FinaliseDrives() is omitted
-in the test suite, because it is impossible to automate it's tests with TEF.
-During execution TEF keeps files open and finalising drives would break TEF
-execution. </p> <p>The following functions are omitted as they purely debug
-mode functions: </p> <ul>
-<li id="GUID-B642F7BD-6244-5725-B896-57DF20777B29"><p> <codeph>RFs::SetErrorCondition(TInt
-anError,TInt aCount=0);</codeph>  </p> </li>
-<li id="GUID-5E63AED0-D1FD-5BA5-A53C-CC3DA9E95ED8"><p> <codeph>RFs::SetDebugRegister(TInt
-aVal);</codeph>  </p> </li>
-<li id="GUID-3ACE89E0-9C95-5DAA-BF67-E9979996E656"><p> <codeph>RFs::SetAllocFailure(TInt
-aAllocNum);</codeph>  </p> </li>
-<li id="GUID-0B63F574-679A-56D9-9B92-614C25EC6DFE"><p> <codeph>RFs::DebugNotify(TInt
-aDrive,TUint                   aNotifyType,TRequestStatus&amp; aStat);</codeph>  </p> </li>
-<li id="GUID-22DD505A-D5EF-5E43-BDE4-1F63FCB09EE0"><p> <codeph>RFs::ControlIo(TInt
-aDrive,TInt aCommand);</codeph>  </p> </li>
-<li id="GUID-3E07C0F3-E6E3-593F-B2EA-B505DD2EAE58"><p> <codeph>RFs::ControlIo(TInt
-aDrive,TInt aCommand,TDes8&amp;                   aParam1);</codeph>  </p> </li>
-<li id="GUID-4EF23061-EAEE-57BA-B2A4-4459EDED3894"><p> <codeph>RFs::ControlIo(TInt
-aDrive,TInt aCommand,TDes8&amp;                   aParam1,TDes8&amp; aParam2);</codeph>  </p> </li>
-<li id="GUID-8C4D1E53-65BC-58A1-999C-C8392F2789A6"><p> <codeph>RFs::ControlIo(TInt
-aDrive,TInt aCommand,TAny*                   aParam1,TAny* aParam2);</codeph>  </p> </li>
-</ul> <p>Some functions of RFs must be used by ESTART program during Symbian
-platform start up. Such functions are as follows: </p> <ul>
-<li id="GUID-CB527053-698B-57D4-AAAB-000B43295443"><p> <codeph>RFs::SetStartupConfiguration(TInt
-aCommand, TAny *aParam1,                   TAny *aParam2);</codeph>  </p> </li>
-<li id="GUID-5035B2F8-4ACA-5F5E-AE48-800B18EF8B73"><p> <codeph>RFs::SetLocalDriveMapping(const
-TDesC8                   &amp;aMapping);</codeph>  </p> </li>
-<li id="GUID-AFE26EB7-8668-527A-987F-1A57C76F1A8B"><p> <codeph>RFs::StartupInitComplete(TRequestStatus
-&amp;aStat);</codeph> </p> </li>
-<li id="GUID-2C5ECA18-3F84-5DAA-84BA-D5C405C0E2D0"><p> <codeph>RFs::AddCompositeMount(const
-TDesC &amp;aFileSystemName,                   TInt aLocalDriveToMount, TInt
-aCompositeDrive, TBool aSync);</codeph>  </p> </li>
-</ul> <p>The test suite provides only possible negative tests for the functions
-above. </p> <p>The following list of functions is also omitted because they
-must be tested as part of a separate test suite: </p> <ul>
-<li id="GUID-584F8D77-AAEE-5C05-AADC-D10B79AEB46A"><p> <codeph>RFile::AdoptFromClient(const
-RMessage2 &amp;aMsg, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
-<li id="GUID-4D3D5A72-FCBC-5DAF-94A0-CE35A7CBE86F"><p> <codeph>RFile::AdoptFromCreator(TInt
-aFsIndex, TInt                   aFileHandleIndex);</codeph>  </p> </li>
-<li id="GUID-4598C926-3DFD-56C2-93B1-0A1C16593575"><p> <codeph>RFile::AdoptFromServer(TInt
-aFsHandle, TInt                   aFileHandle);</codeph>  </p> </li>
-<li id="GUID-BA0D7C1D-78DF-5852-B92B-1BFF494AEF1F"><p> <codeph>RFile::TransferToClient(const
-RMessage2 &amp;aMsg, TInt                   aFileHandleIndex);</codeph>  </p> </li>
-<li id="GUID-CE0DFC12-CB57-5FFD-BE55-76F248883549"><p> <codeph>RFile::TransferToProcess(RProcess
-&amp;aProcess, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
-<li id="GUID-6DBC1AE0-12C9-559B-B5FF-1BD991F81310"><p> <codeph>RFile::TransferToServer(TIpcArgs
-&amp;aIpcArgs, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
-</ul> </section>
-<section id="GUID-850F16D8-AA67-53CE-9A76-EA3B271A3307"><title>Test Suite
-Details</title> <p><b>Test
-Script Source Tree Location</b> </p> <p>Descriptions of the test scripts can
-be found at the following location: </p> <ul>
-<li id="GUID-A4EEA145-D8C2-5E8C-8F4D-BCA209BA3F02"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Dir-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-EA047B5F-6BEF-5284-9256-5F71764FFDB8"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DirScan-PublicApi-RAM.script
-                  </filepath>  </p> </li>
-<li id="GUID-7568E525-15E0-5593-A293-054166B2553C"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DriveUnit-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-2DDA06BF-4F93-507B-9577-96EFE83BE562"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Entry-PublicApi-RAM.script
-                  </filepath>  </p> </li>
-<li id="GUID-846F8CCD-1E1E-5983-BA26-A8D5385DEFF2"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-EntryArray-PublicApi-RAM.script
-                  </filepath>  </p> </li>
-<li id="GUID-F60ABDE0-6E23-5EEF-9FA2-3909E8638944"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-File-PublicApi-NAND.script</filepath> </p> </li>
-<li id="GUID-5257A8B1-FF1E-5547-B89D-825B12BB79BF"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-File-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-6D96516F-6424-5D7B-9F7B-8DF4CE1B25D3"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileMan-PublicApi-OS.script
-                  </filepath>  </p> </li>
-<li id="GUID-F88496AA-5C80-5C7B-96FB-E64801BCD420"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileMan-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-97A8F1EB-7FFF-5BA0-8A20-9D210F5E9E15"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileNamesIdentical-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-F7140F45-00EA-5B45-9BE8-F65E249A63D1"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileText-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-1AF710E1-2950-512E-B03A-7C1F1D16676C"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FindFile-PublicApi-OS.script
-                  </filepath>  </p> </li>
-<li id="GUID-91A573B5-CE66-55F9-8F77-3A25394E0566"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FindFile-PublicApi-REM.script</filepath> </p> </li>
-<li id="GUID-253821E1-9921-5D28-B44F-2FC90C02CD41"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Format-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-9EC5E3AA-98CB-5695-A6A2-AE1B903B52A0"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Format-PublicApi-REM.script</filepath> </p> </li>
-<li id="GUID-23305C2B-C95C-523B-8F83-34EF2EADD0FA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Format-PublicApi-ROM.script</filepath> </p> </li>
-<li id="GUID-FE5D4FE8-27AD-5743-9D5F-9E7DD7A20794"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-OpenFileScan-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-165F731F-D298-548E-BF0C-A5ED2D865EC9"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Parse-Inherited-PublicApi-ANY.scrip</filepath> t </p> </li>
-<li id="GUID-9F283A3E-8697-540D-A09B-4E924A65CEF2"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Parse-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-A365383E-2285-56CF-81A0-030AFE957E5E"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParseBaseTemplate-Inherited-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-706CEFE0-4380-5080-89D5-70A34AB19539"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParsePtr-Inherited-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-15012D1F-0998-5DB2-9592-2CAED8E40E62"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParsePtr-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-B52EF8E8-357A-5C0B-BEB4-152BC2572524"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RawDisk-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-D8A34A66-43DB-521B-940C-BF4A848E8BD4"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RawDisk-PublicApi-REM.script</filepath> </p> </li>
-<li id="GUID-A26829C0-BB1E-599C-BBC8-AA78966354AE"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RDir-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-E65D995E-3372-5969-BFD1-894152F6BB0F"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-B49A46F3-CF5A-5BD8-89DC-9836167D80AB"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-CFB7A110-11D2-5619-8B43-FC17C820C232"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-REM-manual.script</filepath> </p> </li>
-<li id="GUID-B3FAF736-3792-568C-983D-EC54635A4EED"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-REM.script</filepath> </p> </li>
-<li id="GUID-603EA6AB-73A3-5056-A8C0-A2110E315EF6"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Files-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-855BB4B0-2163-599F-B5B5-E5183303656F"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Misc-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-EB808F1B-1200-5475-ADF7-8EEB0115F732"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Misc-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-D7C4060F-5A07-52FE-BF53-BA4708449F9D"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Mounts-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-952BEB6B-D99F-5970-A9B5-DC6391D896D5"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Mounts-PublicApi-RAM.script</filepath> </p> </li>
-<li id="GUID-E136551B-A7B3-5DD9-BEF3-DA950E172D12"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-PublicApi-OS.script</filepath> </p> </li>
-<li id="GUID-BFDAD534-8B1D-5EDD-A7B6-5491CA3C2781"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-PublicApi-ROM.script</filepath> </p> </li>
-<li id="GUID-EE38E325-48D9-5EDD-97BA-75A21834B0EA"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-467EFC64-F48B-5BCA-9639-54A0DC1515B3"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-NAND.script</filepath> </p> </li>
-<li id="GUID-E3B6388D-5C84-588E-8629-7F24AB9B96C1"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-OS.script</filepath> </p> </li>
-<li id="GUID-6A5A351D-7F16-53EE-80AC-4333A1B01544"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-RAM.script
-                  </filepath>  </p> </li>
-<li id="GUID-3E02776B-25B2-58F9-AD60-2EB51AF775C1"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-REM.script</filepath> </p> </li>
-<li id="GUID-FF781294-BFAC-588F-98B9-6AA327E0DFE7"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-ROM.script</filepath> </p> </li>
-<li id="GUID-5BD9A72D-3EE2-5FE0-83EB-309B1E0AB16D"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-SfSrv-PublicApi.script</filepath> </p> </li>
-<li id="GUID-1AE6A5CB-2C6C-511D-8DD9-512FD84A8ED4"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-VolumeInfo-PublicApi-ANY.script</filepath> </p> </li>
-<li id="GUID-8A30969D-FE35-5595-866C-044AB3406D0A"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</filepath> </p> </li>
-<li id="GUID-C076426E-1861-59D4-BE8F-DADA9625B357"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\Setup-PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</filepath> </p> </li>
-<li id="GUID-BE0F29CD-DF4A-5695-9235-A61BA6923BEB"><p> <filepath>        
-          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\setup-PBASE-F32-SfSrv-PublicApi.script</filepath> </p> </li>
-</ul> <p><b>Test
-Script EPOC tree Location</b> </p> <p>When the tests are built for emulator
-or hardware (winscw or armv5), the scripts are exported into the following
-location in the epoc tree: </p> <p> <filepath>%EPOCROOT%\epoc32\data\Z\base\</filepath>  </p> <p><b>Test Script Build Location</b> </p> <p>When the tests are built, the scripts
-are built into the following location: </p> <p> <filepath>%EPOCROOT%\epoc32\release\&lt;winscw|armv5&gt;\&lt;udeb|urel&gt;\Z\base\
-                </filepath>  </p> <p> <b>Note</b>: When the tests are built
-to be run on hardware, the files are built in the z: drive of the ROM. </p> <p><b>Test data source tree location</b> </p> <p>The test suite contains following
-test data files: </p> <ul>
-<li id="GUID-DCD4BF9C-44AB-5549-A891-8C4FFA6BDFE4"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\1mb</filepath> </p> </li>
-<li id="GUID-2817EB32-2F03-5D1A-8FDA-5BB4A7DC424B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\1mb</filepath> </p> </li>
-<li id="GUID-A03EF9DC-E6FE-5C2F-8C5D-273464D031FC"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\any.txt</filepath> </p> </li>
-<li id="GUID-448EFA10-391E-5C94-9F7C-3263F783AA47"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\big_line.txt</filepath> </p> </li>
-<li id="GUID-4DFA5A3A-4307-5E17-AA4C-9361291D080B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\empty_file.txt</filepath> </p> </li>
-<li id="GUID-750E3316-5049-529D-845D-F2606BC3C434"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\filetext_eof.txt</filepath> </p> </li>
-<li id="GUID-9F3AFEDF-F5F5-580F-9EDF-2F01D0E24B97"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\filetext_read.txt</filepath> </p> </li>
-<li id="GUID-98DBC55F-33C6-573A-ACAE-A2D5CF392C4D"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\multiline.txt</filepath> </p> </li>
-<li id="GUID-DBC83C7A-182F-5336-99AE-F8DAFBF14537"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\new_file.txt</filepath> </p> </li>
-<li id="GUID-8E8A9870-7CC2-5CD9-A682-F8D8E2B9EF91"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\oneliner.txt</filepath> </p> </li>
-<li id="GUID-A77DF635-9C8E-540A-B75B-AD986C936ADA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Dir-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-2A77FBBF-5388-51CB-9B3A-7F3D77A89CB2"><p> <filepath>%EPOCROOT%\epoc32\data\Z\base\PBASE-F32-DirScan-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-C47260A6-A17B-5DA9-AB1D-5BC78BC90B68"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-DriveUnit-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-D751FBA1-5015-5F6C-9A38-557D49723B83"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Entry-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-4489C031-9018-5CC7-8B11-6E7DFE824EEC"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-EntryArray-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-A59FB665-DE83-5841-ACBE-333FAD03B3DF"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-File-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-AFB26E83-5E80-5E43-BA58-FAE2F5D96EEB"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileMan-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-F8CAE7DD-FE19-5A50-9392-56C5B4EAC915"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileNamesIdentical-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-DD2F98F3-A17E-5757-AB41-409F925C4F7B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileText-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-D62CC9D1-46B6-5BCD-A606-46347881F5DA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FindFile-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-E13796D6-B3A9-5912-BF37-2CD2CC00BDC2"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Format-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-1D1E5AC6-CC8C-5774-B7E0-54395A4097D8"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-OpenFileScan-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-4AD77960-E869-5E6F-8254-2922210DF5A4"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Parse-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-171797BA-E470-5FAE-A2FE-9BC075F8EC46"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParseBase-Inherited-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-139F561B-A316-5D2C-9BAE-6490DD84FCA7"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParsePtr-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-477117C3-3F50-55E4-A567-DDB1ED775B14"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParsePtrC-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-0E8831DE-FE25-55DB-9CDB-F59649C1E626"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RawDisk-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-4E5AD32F-FB11-5C68-9258-5798E6A466A6"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RDir-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-14A92FC1-83EB-52BF-A902-E796BEC9C2CD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-ANY.ini</filepath> </p> </li>
-<li id="GUID-DDEADD23-8D43-5437-8AB8-CF8A57B9AEFD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-RAM.ini</filepath> </p> </li>
-<li id="GUID-42A206F4-0F8E-52E0-8A2F-D7962D95694E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-REM-manual.ini</filepath> </p> </li>
-<li id="GUID-8969CC26-1EDC-5FBF-9479-154D604F23C7"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-REM.ini</filepath> </p> </li>
-<li id="GUID-0B155643-7D3C-5682-ABB3-5B93D09BDDFA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Files-PublicApi-ANY.ini</filepath> </p> </li>
-<li id="GUID-3F12CA2D-B99D-5122-B407-E0BC0D70EC61"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Files-PublicApi-RAM.ini</filepath> </p> </li>
-<li id="GUID-B90D9312-9E2E-5BD7-8708-508C6A07B0FD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Misc-PublicApi-ANY.ini</filepath> </p> </li>
-<li id="GUID-5383F3CC-797E-54CA-9B6D-51DB8D65DA48"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Misc-PublicApi-RAM.ini</filepath> </p> </li>
-<li id="GUID-17CCF9C6-C865-5B80-9CFF-2B3E9F6A7033"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Mounts-PublicApi-ANY.ini</filepath> </p> </li>
-<li id="GUID-4B9D9D36-DE91-5612-AC00-D685D055C51B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini</filepath> </p> </li>
-<li id="GUID-03F8076A-E356-50C7-A3B9-598FE731DF8B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-PublicApi-OS.ini</filepath> </p> </li>
-<li id="GUID-0189A1A9-0187-5CEF-922B-36CDF6E61D24"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-PublicApi-ROM.ini</filepath> </p> </li>
-<li id="GUID-05B55695-7919-5F8D-AB87-E1A2138D40A6"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-VolumeInfo-PublicApi.ini</filepath> </p> </li>
-<li id="GUID-5ECBC381-9FDD-54A2-AFD0-8AAD5A2C49DD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.ini</filepath> </p> </li>
-<li id="GUID-A42DF362-5AEB-5917-9B33-CE0DFD0C643E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\test.txt</filepath> </p> </li>
-<li id="GUID-9CAB7240-95C3-55C7-AE00-F755F62A286A"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test1.txt</filepath> </p> </li>
-<li id="GUID-56855800-854C-5744-B36E-5AADD5E67A3E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test2.txt</filepath> </p> </li>
-<li id="GUID-BF90905D-3B36-5DDB-AA2B-96A41136AF43"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test3.txt</filepath> </p> </li>
-<li id="GUID-CB1FB093-50E9-51CC-93BF-B7B27DAE6DCD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\test_rom.txt</filepath> </p> </li>
-<li id="GUID-1E27203F-0A8C-5615-95A5-3A434DA089A0"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\USBLOAD.ZIP</filepath> </p> </li>
-<li id="GUID-76073A64-BFF6-53BB-9824-BD8FBC30A845"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Big.txt</filepath> </p> </li>
-</ul> <p>The global environment file is located at the following location: </p> <ul>
-<li id="GUID-072A3EEF-5CFC-526F-974B-682FC3740808"><p> <filepath>...\baseapitest\basesvs\validation\f32\testdata\&lt;platform&gt;\base_f32_env.ini</filepath> </p> </li>
-</ul> <p><b>Test
-Data Files EPOC Tree Location</b> </p> <p>When the tests are built for emulator
-or hardware (winscw/armv5), the data files are exported into the following
-location in the epoc tree. </p> <p> <filepath>%EPOCROOT%\epoc32\data\Z\base\t_sfsrv\</filepath>  </p> <p>The
-global environment file is located at: <filepath>%EPOCROOT%\epoc32\data\Z\base\base_f32_env.ini</filepath>  </p> <p><b> Test Data Files Emulator Location</b> </p> <p>When the tests are built,
-the test data files are built into the following location : </p> <p> <filepath>%EPOCROOT%\epoc32\release\winscw\&lt;udeb/urel&gt;\Z\base\t_sfsrv\</filepath> </p> <p>The global environment file is placed into the following location: </p> <p> <filepath>%EPOCROOT%\epoc32\release\winscw\&lt;udeb/urel&gt;\Z\base\</filepath> </p> <p> <b>Note</b>: When the tests are built to be run on hardware, the
-files are built into the z: drive of the ROM </p> <p><b>Test .driver File</b> </p> <p>The <filepath>base.driver</filepath> file
-found in <filepath>...\baseapitest\basesvs\testsuites\base\</filepath> is
-used by the test driver to construct the test suite tree structure and export
-all the appropriate files to the correct location in the epoc32 tree and on
-the device. </p> <p>When the tests are built, the <filepath>.driver</filepath> file
-can be found in the following location: <filepath>%EPOCROOT%\epoc32\testdriver\testproduct\</filepath>  </p> <p id="GUID-71179094-80CD-5B83-95E3-BE8A7DE2F637"><b>TCS File Source Location</b> </p> <p>The <filepath>.tcs</filepath> file
-is located at the following location: </p> <p> <filepath>...\baseapitest\basesvs\config\t_base.tcs</filepath>  </p> <p><b>TCS File Build Location</b> </p> <p>When the tests are built, the <filepath>.tcs</filepath> file
-is built into the following location: </p> <p> <filepath>%EPOCROOT%\epoc32\release\&lt;winscw|armv5&gt;\&lt;udeb|urel&gt;\Z\base\</filepath> </p> <p> <b>Note:</b> When the tests are built to be run on hardware, the files are built
-into the <filepath>z:</filepath> drive of the ROM. </p> <p><b> Global tests configuration</b> </p> <p>The <filepath>base_f32_env.ini</filepath> file
-is the test suite global environment file, which contains the configurable
-parameters. The file contains following definitions of different drives used
-by the test suite and other settings: </p> <ul>
-<li id="GUID-2242B9D7-6E45-5955-8078-A8FA5F38722C"><p>a system drive (which
-is normally C-drive); </p> </li>
-<li id="GUID-54BD6ECD-BFDA-57B4-BF73-67BDDEC221CD"><p>a test drive with RAM
-(which is X-drive by default on WINSCW and E: on H2/H4 standard ROMs); </p> </li>
-<li id="GUID-C62582B6-94D2-5E0D-9519-0DA607464532"><p>an MMC drive (a drive
-to where a MMC card is present); </p> </li>
-<li id="GUID-E8A3D55F-61C3-502E-8C4C-3418981A1AD0"><p>a drive for testing
-substitution; </p> </li>
-<li id="GUID-06D82642-D6DB-564F-B6A0-14FFE03CABD0"><p>a drive that has no
-a file system; </p> </li>
-<li id="GUID-3979F4A4-1E3B-56F2-99B5-7CBF7AC26CE6"><p>file system plug-ins
-used as the test data </p> </li>
-</ul> </section>
-<section id="GUID-3FE2BDCD-22D8-472E-B0EE-C7FF74463A51"><title> Test Environment and Execution</title> <p><b> File
-system plug-ins</b> </p> <p>This test suite is dependant upon the test file
-system and test file system extension plug-ins found in <filepath>...\baseapitest\basesvs\FileSystemPlugins\group\</filepath>. </p> <p>If
-the test suite is build from <filepath>...\baseapitest\basesvs\group\    
-         </filepath> then there is no need to build the plug-ins separately. </p> <p>When
-the plug-ins are built, two files, <filepath>T_TESTFSY1.fsy</filepath> and <filepath>T_TestFXT.fxt</filepath>,
-are added to the system of the device under test. The plug-ins are used in
-some test cases that test the drive mounting and dismounting related functions
-of <codeph>RFs</codeph>. </p> <p><b>Console
-application</b> </p> <p>The manual test suite is dependant upon the console
-input-output application found in the location <filepath>...\baseapitest\basesvs\Prompt\</filepath>. </p> <p>If
-the test suite is build from <filepath>...\baseapitest\basesvs\group\</filepath> then
-there is no need to build the console application separately. </p> <p>When
-the console input-output executable is built, an executable file, <filepath>t_prompt.exe</filepath>,
-will be added to the system of the device under test. This executable file
-prints the following instruction: </p> <p> <i> “After hitting a key to continue,
-eject and insert the MMC card (press F5 and release on the emulator). And
-press any key to continue...” </i>  </p> <p><b>Steps
-to run NAND tests</b> </p> <p>A few test cases (test IDs PBASE-F32-File-PublicApi-6001
-and PBASE-F32-File-PublicApi-6002) require a flash memory stick with paged
-NAND ROM. The system is started from the NAND flash and uses the flash memory
-stick as the ROM-drive. Ensure that your NAND ROM memory is paged. If any
-other type of ROM is used then the test cases will fail with <codeph>KErrNotSupported</codeph>. </p> <p>The
-NAND memory can be paged by building a ROM with <filepath>pagedrom_functional.oby</filepath> present
-in the ..<filepath>.\epoc32\rom\include\</filepath> directory as described: </p> <ol id="GUID-B058BB01-F1F2-5F1D-B843-A9C506B6C57B">
-<li id="GUID-8A362989-F5E2-5E4D-9632-C0EB69B9F84D"><p>Navigate to <filepath>...\epoc32\rom</filepath> and
-run one of the following commands: </p> <p>For automated testing using TestDriver: </p> <p><userinput>buildrom
--D_STARTUPMODE5 -D_NAND2 -D_EABI=&lt;ARMV5/Gcce&gt; -DRVCT &lt;h4hrp/h2&gt; pagedrom_functional.oby
-techview_statapi platsec td_base</userinput> </p> <p>For manual testing: </p> <p><userinput>buildrom
--D_STARTUPMODE5 -D_NAND2 -D_EABI=&lt;ARMV5/gcce&gt; -DRVCT &lt;h4hrp/h2&gt; pagedrom_functional.oby
-techview platsec t_base</userinput> </p> <p>This command creates two image
-files: <filepath>h4hrp_001.techview.nand.IMG</filepath> and <filepath>h4hrp_001.techview.nand.rofs.img</filepath>. </p> </li>
-<li id="GUID-0C5BD06E-BB45-5BCA-A645-D3944FE71594"><p>Rename the two image
-files <filepath>h4hrp_001.techview.nand.IMG</filepath> and <filepath>h4hrp_001.techview.nand.rofs.img</filepath> as <filepath>core.img</filepath> and <filepath>rofs1.img</filepath> respectively. </p> </li>
-<li id="GUID-7B7E33CA-CCBE-5263-83CC-9B86C4555DE3"><p>To generate the nandloader,
-navigate to the <filepath>sf/os/kernelhwsrv/kernel/eka/rombuild</filepath> directory
-and run the following command: </p> <p><userinput>rom -v=h4hrp -b=urel -I=armv5
--t=nandloader -m=_NAND2</userinput> </p> <p>Successful execution of this command
-generates the image file <filepath>H4HRP__NAND2ARMV5D.IMG</filepath>  </p> </li>
-<li id="GUID-20A7FC77-3314-57D3-995C-4CE80BE3A33C"><p>Place <filepath>H4HRP__NAND2ARMV5D.IMG</filepath> in
-a ZIP file and rename the ZIP file to <filepath>sys$rom.zip</filepath>. </p> </li>
-<li id="GUID-4BA3B423-2440-56B3-8F35-784289827F00"><p>Transfer all three files
-(<filepath>core.img</filepath>, <filepath>rofs1.img</filepath> and <filepath>sys$rom.zip</filepath>)
-to the hardware board using an MMC card or a USB cable. </p> <p>The STAT application
-should launch automatically into the <i>waiting for data</i> state when the
-board is restarted with the NAND configuration. </p> <p>If this does not occur,
-check that the NAND configuration ROM is built correctly and that you have
-configured STAT correctly. </p> </li>
-</ol> <p><b> Steps
-to run Dual Drive tests</b> </p> <p>The test cases in PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script
-are used to test the dual drive feature on the device. F32 APIs has been used
-to validate the Dual Drive feature on Hardware. </p> <p>To run Dual Drive
-tests on H4, perform the following steps: </p> <ol id="GUID-1C4E1E9D-6E82-5230-9175-907FBE3BD938">
-<li id="GUID-0BD3936B-4530-5F6E-A645-20DF4695C93F"><p>Update dual_drive_env.ini
-with the proper drive information. </p> <p>Example : DriveChar1 = E //On H4
-MMC1 is represented as E:/ drive </p> <p>DriveChar2 = F //On H4 MMC2 is represented
-as F:/ Drive </p> <p>Build the test code from location <codeph>...\baseapitest\basesvs\group\</codeph>  </p> <p> <codeph>&gt;&gt;bldmake
-bldfiles</codeph>  </p> <p> <codeph>&gt;&gt;abld test build </codeph>  </p> </li>
-<li id="GUID-CD24047E-7859-530F-AAD3-95B95DF44794"><p>Build the rom image
-with STAT </p> <p> <codeph>&gt;&gt;buildrom -DMMC_DUAL_SLOT -DUSE_SDIO_SD_MMC  
-                -DWITH_FAT32 -D_STARTUPMODE2 -D_EABI=ARMV5 -DRVCT h4hrp techview_statapi
-                  platsec</codeph>  </p> <p>Executing the above command generates
-an image file by name, h4hrp_001.techview.IMG. The file <filepath>h4hrp_001.techview.IMG</filepath> needs
-to be zipped in Sys$rom.zip </p> </li>
-<li id="GUID-F306C6E8-F57B-5877-BF8C-BDB46848BCDE"><p>Boot the H4 board with
-the above image from MMC1 slot. On techview ROM the mmc drive used to boot
-the board is represented as E:/ Drive. </p> <p>Once the image is booted, “STAT
-waiting for data” appears on the screen. Now insert the other MMC card on
-to the MMC2. This drive is mapped to <codeph>F</codeph> drive. </p> <p> <b>Note</b>:
-MMC2 slot must be free while booting the image and insert it later before
-running the tests. </p> </li>
-<li id="GUID-AD35D69B-CDB1-51D8-8195-33028841B9A0"><p>Run the tests </p> <p>Now
-use testdriver to build and run the tests. </p> <p> <codeph>&gt;&gt;testdriver build
-–p armv5 –b urel –s                   base.validation.f32.f32-dualdrive</codeph>  </p> <p> <codeph>&gt;&gt;testdriver
-run –t &lt;transport&gt;</codeph>  </p> <p>where <codeph>&lt;transport&gt;</codeph> is
-serial or usb </p> </li>
-</ol> <p>To run Dual Drive tests on Phone, perform the following steps: </p> <ol id="GUID-14AC969E-89D9-5DB1-9A5D-22EFAEE47BEA">
-<li id="GUID-C980AE52-26F9-5926-8B7E-0EFEA2C31B4B"><p>Select the Phone which
-has dual drive feature supported on it. </p> </li>
-<li id="GUID-DB4B42E3-F941-5650-AAA7-1D82AC105B18"><p>Update global environment
-file before building the testcode. </p> <p>Update <filepath>dual_drive_env.ini</filepath> with
-the proper drive information. </p> <p>Example : </p> <p> <codeph>DriveChar1
-= E</codeph> //one of the dual drive on the phone </p> <p> <codeph> DriveChar2
-= F</codeph> //One of the dual drive on the phone </p> <p>Build the test code
-from location ...<filepath>\baseapitest\basesvs\group\</filepath>  </p> <p> <codeph>&gt;&gt;bldmake
-bldfiles</codeph>  </p> <p> <codeph>&gt;&gt;abld test build</codeph>  </p> </li>
-<li id="GUID-5762F4D9-04C1-5743-B59D-C1054ED5E616"><p>Create sis package using
-the package file <filepath>&lt;drive&gt;:/epoc32/pkg/dualdrive.pkg</filepath>  </p> <p> <codeph>&gt;&gt;makesis
-dualdrive.pkg dualdrive.sis </codeph>  </p> <p> <codeph>&gt;&gt;signsis -s dualdrive.sis
-dualdrive.sis test.cer                   test.key </codeph>  </p> <p> <codeph>where
-test.cer and test.key are certificate and key                   files.</codeph>  </p> </li>
-<li id="GUID-B1137195-6C28-5FFB-87AA-58E20851AC77"><p>Install the sis package
-on to the phone. </p> <p>Install the <filepath>sis</filepath> file on to the
-device using BT or USB. </p> </li>
-<li id="GUID-2E6FE1D5-45D3-5CD3-958F-0D270CCAAF17"><p>Run the tests from eshell </p> <p> <codeph>&gt;
-testexecute                   z:\base\setup-PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</codeph>  </p> <p> <codeph>&gt;
-testexecute                   z:\base\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</codeph>  </p> </li>
-</ol> </section>
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
+<!-- This component and the accompanying materials are made available under the terms of the License 
+"Eclipse Public License v1.0" which accompanies this distribution, 
+and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
+<!-- Initial Contributors:
+    Nokia Corporation - initial contribution.
+Contributors: 
+-->
+<!DOCTYPE concept
+  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
+<concept id="GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3" xml:lang="en"><title> Base
+F32_EKA2 Validation Test Suite </title><shortdesc>Explanation of file server test suite.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
+<section id="GUID-B1B4BBC0-8820-47BA-9210-5F97D7224618"><title>Test Suite Overview</title> <p>This Suite provides regression
+tests for the following APIs: </p> <ul>
+<li id="GUID-662E0543-3BAC-5317-95D6-927C1F65B903"><p> <codeph> RFs</codeph>  </p> </li>
+<li id="GUID-6EDEB023-D3E1-5EE9-8AB5-F47211D78B05"><p> <codeph>CDir</codeph>  </p> </li>
+<li id="GUID-C6ED91B6-B332-5123-9258-81CFE652C049"><p> <codeph> CDirScan</codeph>  </p> </li>
+<li id="GUID-5813844E-9947-5B4E-92C2-A125F088F71C"><p> <codeph>CFileBase</codeph>  </p> </li>
+<li id="GUID-7E1C7B88-9227-56C2-AEC8-7D9796DEE152"><p> <codeph> CFileMan</codeph>  </p> </li>
+<li id="GUID-C4C259CE-C742-5B24-B2F1-66708A461D5A"><p> <codeph> MFileManObserver</codeph>  </p> </li>
+<li id="GUID-4AB8B219-CA2F-52A3-96D4-3736768A60E9"><p> <codeph>RDir</codeph>  </p> </li>
+<li id="GUID-613685A7-B040-53BB-9560-A9DDAE103F50"><p> <codeph> RFile</codeph>  </p> </li>
+<li id="GUID-A091D969-F8B9-5AF8-8639-F0EC6F3342A0"><p> <codeph> RFormat</codeph>  </p> </li>
+<li id="GUID-66587945-0CB5-5A91-9B05-70C0523E5263"><p> <codeph> RRawDisk</codeph>  </p> </li>
+<li id="GUID-0F32D7AE-743B-5357-8962-9A8752E9B144"><p> <codeph> TDriveUnit</codeph>  </p> </li>
+<li id="GUID-0A46F22A-96BA-5C0C-8A00-5B259BFAC71D"><p> <codeph> TEntry</codeph>  </p> </li>
+<li id="GUID-4475480A-CF58-5A66-92AD-1E10EAD0371F"><p> <codeph> TEntryArray</codeph>  </p> </li>
+<li id="GUID-13D24791-4EBA-5176-8A72-9ABB4CB45092"><p> <codeph> TFindFile</codeph>  </p> </li>
+<li id="GUID-2F4094BC-F595-5BEA-8AAA-1E8DB037D0F6"><p> <codeph> TFileText</codeph>  </p> </li>
+<li id="GUID-83A5D217-1F6C-56E8-8298-E393F36642CE"><p> <codeph> TOpenFileScan</codeph>  </p> </li>
+<li id="GUID-E369E41B-9FDD-5C67-817F-D68C6C03C183"><p> <codeph> TParse</codeph>  </p> </li>
+<li id="GUID-CFFBFA1F-794A-55F9-8088-ECC1663FE031"><p> <codeph> TParseBase</codeph>  </p> </li>
+<li id="GUID-71950702-FFF2-5775-8350-77ED477FCD95"><p> <codeph> TParsePtr</codeph>  </p> </li>
+<li id="GUID-0E9E06A1-EDFD-5B70-A6E5-16A18BE3FB96"><p> <codeph> TparsePtrC</codeph>  </p> </li>
+<li id="GUID-1505EEB4-6C38-5F7C-905B-95977D63DAB7"><p> <codeph> TVolumeInfo</codeph>  </p> </li>
+<li id="GUID-E1D154F8-CD75-5EEA-821B-6226BB2C60FC"><p> <codeph> FileNamesIdentical()</codeph>  </p> </li>
+</ul> <p>All PublishedAll APIs are tested. </p> </section>
+<section id="GUID-BC9345E7-061A-46FE-9CB3-E2FFE5ED38C9"><title>Test Approach</title> <p><b>Automated
+tests</b> </p> <p>All tests of the test suite are fully automated except those
+described in Manual Tests. </p> <p><b> Manual
+tests</b> </p> <p>Tests in the script <filepath>PBASE-F32-RFS-Drives-PublicApi-REM-manual.script</filepath> rely
+on the removal and insertion of removable storage, which requires manual intervention,
+so cannot be automated. Any test case that requires the card door to be opened
+or closed displays a message on the console to instruct the user. The functions
+that must be tested manually are: </p> <ul>
+<li id="GUID-35F48284-0726-5CCB-AC5A-B55CD8B60A3C"><p> <codeph>RFs::LockDrive()</codeph>  </p> </li>
+<li id="GUID-30822831-2CAE-539D-BB2A-795D1CE70695"><p> <codeph> RFs::UnlockDrive()</codeph>  </p> </li>
+<li id="GUID-628110E4-8C5F-5B92-AB80-B9786AE60EA3"><p> <codeph> RFs::ClearPassword()</codeph>  </p> </li>
+<li id="GUID-644D7219-BA77-56A8-80A4-5B5DB90DDA83"><p> <codeph> RFs::ErasePassword()</codeph>  </p> </li>
+</ul> <p><b> MMC
+Card Tests</b> </p> <p>When executing on hardware, all the tests that use
+an MMC card need a real MMC card. </p> <p>On the emulator an MMC card is simulated.
+You must press and release the F5 button when requested to simulate a door
+open or door close event. </p> <p>Some MMC locking related tests can be considered
+as dangerous because they remove all data from the MMC card. These test cases
+are run together with all other test cases to ensure that no critical data
+is saved on the MMC card. </p> <p><b>Dual
+Drive Tests</b> </p> <p>The Dual Drive tests are run on the device which has
+two drives enabled from the same interface. For example, two MMC drives, two
+NAND flash etc. </p> <p>These tests can be run directly by modifying the environment
+file with the relevant drive information. </p> <p id="GUID-06925269-B275-5EFE-98BF-8C908F18A8DF"><b>Categorization by drive
+type</b> </p> <p>Many test cases are dependant on the type of disk drive they
+can be run on. The test suite consists of some of the test scripts each containing
+a certain drive specific tests. </p> <p>The following are the specific drive
+types: </p> <ul>
+<li id="GUID-E26C5289-502B-5028-A82C-EC134E2E0463"><p>ROM-drive (test scripts
+have –ROM postfix in file name) </p> </li>
+<li id="GUID-B7882231-7533-5457-B821-F10D427E0A9A"><p>Paged NAND memory (test
+scripts have –NAND postfix in file name) </p> </li>
+<li id="GUID-2DBFFD6E-50DC-5E49-AF39-E0D77A7F24DC"><p>System-drive (test scripts
+have –OS postfix in file name) </p> </li>
+<li id="GUID-E6D90488-EFF0-555C-834B-5C9E8DD554E4"><p>RAM-drive (test scripts
+have –RAM postfix in file name) </p> </li>
+<li id="GUID-976D7D34-D099-56C5-87FF-1385B46EE6D4"><p>Removable drive (like
+MMC, test scripts have –REM postfix in file name) </p> </li>
+</ul> <p>All the remaining tests are not specific to any type of drive (test
+scripts have –ANY postfix in file name). The separation makes possible to
+test the APIs against a certain drive type. </p> <p><b>Coverage Omissions</b> </p> <p>Function RFs::FinaliseDrives() is omitted
+in the test suite, because it is impossible to automate it's tests with TEF.
+During execution TEF keeps files open and finalising drives would break TEF
+execution. </p> <p>The following functions are omitted as they purely debug
+mode functions: </p> <ul>
+<li id="GUID-B642F7BD-6244-5725-B896-57DF20777B29"><p> <codeph>RFs::SetErrorCondition(TInt
+anError,TInt aCount=0);</codeph>  </p> </li>
+<li id="GUID-5E63AED0-D1FD-5BA5-A53C-CC3DA9E95ED8"><p> <codeph>RFs::SetDebugRegister(TInt
+aVal);</codeph>  </p> </li>
+<li id="GUID-3ACE89E0-9C95-5DAA-BF67-E9979996E656"><p> <codeph>RFs::SetAllocFailure(TInt
+aAllocNum);</codeph>  </p> </li>
+<li id="GUID-0B63F574-679A-56D9-9B92-614C25EC6DFE"><p> <codeph>RFs::DebugNotify(TInt
+aDrive,TUint                   aNotifyType,TRequestStatus&amp; aStat);</codeph>  </p> </li>
+<li id="GUID-22DD505A-D5EF-5E43-BDE4-1F63FCB09EE0"><p> <codeph>RFs::ControlIo(TInt
+aDrive,TInt aCommand);</codeph>  </p> </li>
+<li id="GUID-3E07C0F3-E6E3-593F-B2EA-B505DD2EAE58"><p> <codeph>RFs::ControlIo(TInt
+aDrive,TInt aCommand,TDes8&amp;                   aParam1);</codeph>  </p> </li>
+<li id="GUID-4EF23061-EAEE-57BA-B2A4-4459EDED3894"><p> <codeph>RFs::ControlIo(TInt
+aDrive,TInt aCommand,TDes8&amp;                   aParam1,TDes8&amp; aParam2);</codeph>  </p> </li>
+<li id="GUID-8C4D1E53-65BC-58A1-999C-C8392F2789A6"><p> <codeph>RFs::ControlIo(TInt
+aDrive,TInt aCommand,TAny*                   aParam1,TAny* aParam2);</codeph>  </p> </li>
+</ul> <p>Some functions of RFs must be used by ESTART program during Symbian
+platform start up. Such functions are as follows: </p> <ul>
+<li id="GUID-CB527053-698B-57D4-AAAB-000B43295443"><p> <codeph>RFs::SetStartupConfiguration(TInt
+aCommand, TAny *aParam1,                   TAny *aParam2);</codeph>  </p> </li>
+<li id="GUID-5035B2F8-4ACA-5F5E-AE48-800B18EF8B73"><p> <codeph>RFs::SetLocalDriveMapping(const
+TDesC8                   &amp;aMapping);</codeph>  </p> </li>
+<li id="GUID-AFE26EB7-8668-527A-987F-1A57C76F1A8B"><p> <codeph>RFs::StartupInitComplete(TRequestStatus
+&amp;aStat);</codeph> </p> </li>
+<li id="GUID-2C5ECA18-3F84-5DAA-84BA-D5C405C0E2D0"><p> <codeph>RFs::AddCompositeMount(const
+TDesC &amp;aFileSystemName,                   TInt aLocalDriveToMount, TInt
+aCompositeDrive, TBool aSync);</codeph>  </p> </li>
+</ul> <p>The test suite provides only possible negative tests for the functions
+above. </p> <p>The following list of functions is also omitted because they
+must be tested as part of a separate test suite: </p> <ul>
+<li id="GUID-584F8D77-AAEE-5C05-AADC-D10B79AEB46A"><p> <codeph>RFile::AdoptFromClient(const
+RMessage2 &amp;aMsg, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
+<li id="GUID-4D3D5A72-FCBC-5DAF-94A0-CE35A7CBE86F"><p> <codeph>RFile::AdoptFromCreator(TInt
+aFsIndex, TInt                   aFileHandleIndex);</codeph>  </p> </li>
+<li id="GUID-4598C926-3DFD-56C2-93B1-0A1C16593575"><p> <codeph>RFile::AdoptFromServer(TInt
+aFsHandle, TInt                   aFileHandle);</codeph>  </p> </li>
+<li id="GUID-BA0D7C1D-78DF-5852-B92B-1BFF494AEF1F"><p> <codeph>RFile::TransferToClient(const
+RMessage2 &amp;aMsg, TInt                   aFileHandleIndex);</codeph>  </p> </li>
+<li id="GUID-CE0DFC12-CB57-5FFD-BE55-76F248883549"><p> <codeph>RFile::TransferToProcess(RProcess
+&amp;aProcess, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
+<li id="GUID-6DBC1AE0-12C9-559B-B5FF-1BD991F81310"><p> <codeph>RFile::TransferToServer(TIpcArgs
+&amp;aIpcArgs, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
+</ul> </section>
+<section id="GUID-850F16D8-AA67-53CE-9A76-EA3B271A3307"><title>Test Suite
+Details</title> <p><b>Test
+Script Source Tree Location</b> </p> <p>Descriptions of the test scripts can
+be found at the following location: </p> <ul>
+<li id="GUID-A4EEA145-D8C2-5E8C-8F4D-BCA209BA3F02"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Dir-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-EA047B5F-6BEF-5284-9256-5F71764FFDB8"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DirScan-PublicApi-RAM.script
+                  </filepath>  </p> </li>
+<li id="GUID-7568E525-15E0-5593-A293-054166B2553C"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DriveUnit-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-2DDA06BF-4F93-507B-9577-96EFE83BE562"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Entry-PublicApi-RAM.script
+                  </filepath>  </p> </li>
+<li id="GUID-846F8CCD-1E1E-5983-BA26-A8D5385DEFF2"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-EntryArray-PublicApi-RAM.script
+                  </filepath>  </p> </li>
+<li id="GUID-F60ABDE0-6E23-5EEF-9FA2-3909E8638944"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-File-PublicApi-NAND.script</filepath> </p> </li>
+<li id="GUID-5257A8B1-FF1E-5547-B89D-825B12BB79BF"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-File-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-6D96516F-6424-5D7B-9F7B-8DF4CE1B25D3"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileMan-PublicApi-OS.script
+                  </filepath>  </p> </li>
+<li id="GUID-F88496AA-5C80-5C7B-96FB-E64801BCD420"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileMan-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-97A8F1EB-7FFF-5BA0-8A20-9D210F5E9E15"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileNamesIdentical-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-F7140F45-00EA-5B45-9BE8-F65E249A63D1"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileText-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-1AF710E1-2950-512E-B03A-7C1F1D16676C"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FindFile-PublicApi-OS.script
+                  </filepath>  </p> </li>
+<li id="GUID-91A573B5-CE66-55F9-8F77-3A25394E0566"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FindFile-PublicApi-REM.script</filepath> </p> </li>
+<li id="GUID-253821E1-9921-5D28-B44F-2FC90C02CD41"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Format-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-9EC5E3AA-98CB-5695-A6A2-AE1B903B52A0"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Format-PublicApi-REM.script</filepath> </p> </li>
+<li id="GUID-23305C2B-C95C-523B-8F83-34EF2EADD0FA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Format-PublicApi-ROM.script</filepath> </p> </li>
+<li id="GUID-FE5D4FE8-27AD-5743-9D5F-9E7DD7A20794"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-OpenFileScan-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-165F731F-D298-548E-BF0C-A5ED2D865EC9"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Parse-Inherited-PublicApi-ANY.scrip</filepath> t </p> </li>
+<li id="GUID-9F283A3E-8697-540D-A09B-4E924A65CEF2"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Parse-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-A365383E-2285-56CF-81A0-030AFE957E5E"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParseBaseTemplate-Inherited-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-706CEFE0-4380-5080-89D5-70A34AB19539"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParsePtr-Inherited-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-15012D1F-0998-5DB2-9592-2CAED8E40E62"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParsePtr-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-B52EF8E8-357A-5C0B-BEB4-152BC2572524"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RawDisk-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-D8A34A66-43DB-521B-940C-BF4A848E8BD4"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RawDisk-PublicApi-REM.script</filepath> </p> </li>
+<li id="GUID-A26829C0-BB1E-599C-BBC8-AA78966354AE"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RDir-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-E65D995E-3372-5969-BFD1-894152F6BB0F"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-B49A46F3-CF5A-5BD8-89DC-9836167D80AB"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-CFB7A110-11D2-5619-8B43-FC17C820C232"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-REM-manual.script</filepath> </p> </li>
+<li id="GUID-B3FAF736-3792-568C-983D-EC54635A4EED"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-REM.script</filepath> </p> </li>
+<li id="GUID-603EA6AB-73A3-5056-A8C0-A2110E315EF6"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Files-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-855BB4B0-2163-599F-B5B5-E5183303656F"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Misc-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-EB808F1B-1200-5475-ADF7-8EEB0115F732"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Misc-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-D7C4060F-5A07-52FE-BF53-BA4708449F9D"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Mounts-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-952BEB6B-D99F-5970-A9B5-DC6391D896D5"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Mounts-PublicApi-RAM.script</filepath> </p> </li>
+<li id="GUID-E136551B-A7B3-5DD9-BEF3-DA950E172D12"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-PublicApi-OS.script</filepath> </p> </li>
+<li id="GUID-BFDAD534-8B1D-5EDD-A7B6-5491CA3C2781"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-PublicApi-ROM.script</filepath> </p> </li>
+<li id="GUID-EE38E325-48D9-5EDD-97BA-75A21834B0EA"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-467EFC64-F48B-5BCA-9639-54A0DC1515B3"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-NAND.script</filepath> </p> </li>
+<li id="GUID-E3B6388D-5C84-588E-8629-7F24AB9B96C1"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-OS.script</filepath> </p> </li>
+<li id="GUID-6A5A351D-7F16-53EE-80AC-4333A1B01544"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-RAM.script
+                  </filepath>  </p> </li>
+<li id="GUID-3E02776B-25B2-58F9-AD60-2EB51AF775C1"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-REM.script</filepath> </p> </li>
+<li id="GUID-FF781294-BFAC-588F-98B9-6AA327E0DFE7"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-ROM.script</filepath> </p> </li>
+<li id="GUID-5BD9A72D-3EE2-5FE0-83EB-309B1E0AB16D"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-SfSrv-PublicApi.script</filepath> </p> </li>
+<li id="GUID-1AE6A5CB-2C6C-511D-8DD9-512FD84A8ED4"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-VolumeInfo-PublicApi-ANY.script</filepath> </p> </li>
+<li id="GUID-8A30969D-FE35-5595-866C-044AB3406D0A"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</filepath> </p> </li>
+<li id="GUID-C076426E-1861-59D4-BE8F-DADA9625B357"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\Setup-PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</filepath> </p> </li>
+<li id="GUID-BE0F29CD-DF4A-5695-9235-A61BA6923BEB"><p> <filepath>        
+          ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\setup-PBASE-F32-SfSrv-PublicApi.script</filepath> </p> </li>
+</ul> <p><b>Test
+Script EPOC tree Location</b> </p> <p>When the tests are built for emulator
+or hardware (winscw or armv5), the scripts are exported into the following
+location in the epoc tree: </p> <p> <filepath>%EPOCROOT%\epoc32\data\Z\base\</filepath>  </p> <p><b>Test Script Build Location</b> </p> <p>When the tests are built, the scripts
+are built into the following location: </p> <p> <filepath>%EPOCROOT%\epoc32\release\&lt;winscw|armv5&gt;\&lt;udeb|urel&gt;\Z\base\
+                </filepath>  </p> <p> <b>Note</b>: When the tests are built
+to be run on hardware, the files are built in the z: drive of the ROM. </p> <p><b>Test data source tree location</b> </p> <p>The test suite contains following
+test data files: </p> <ul>
+<li id="GUID-DCD4BF9C-44AB-5549-A891-8C4FFA6BDFE4"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\1mb</filepath> </p> </li>
+<li id="GUID-2817EB32-2F03-5D1A-8FDA-5BB4A7DC424B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\1mb</filepath> </p> </li>
+<li id="GUID-A03EF9DC-E6FE-5C2F-8C5D-273464D031FC"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\any.txt</filepath> </p> </li>
+<li id="GUID-448EFA10-391E-5C94-9F7C-3263F783AA47"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\big_line.txt</filepath> </p> </li>
+<li id="GUID-4DFA5A3A-4307-5E17-AA4C-9361291D080B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\empty_file.txt</filepath> </p> </li>
+<li id="GUID-750E3316-5049-529D-845D-F2606BC3C434"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\filetext_eof.txt</filepath> </p> </li>
+<li id="GUID-9F3AFEDF-F5F5-580F-9EDF-2F01D0E24B97"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\filetext_read.txt</filepath> </p> </li>
+<li id="GUID-98DBC55F-33C6-573A-ACAE-A2D5CF392C4D"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\multiline.txt</filepath> </p> </li>
+<li id="GUID-DBC83C7A-182F-5336-99AE-F8DAFBF14537"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\new_file.txt</filepath> </p> </li>
+<li id="GUID-8E8A9870-7CC2-5CD9-A682-F8D8E2B9EF91"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\oneliner.txt</filepath> </p> </li>
+<li id="GUID-A77DF635-9C8E-540A-B75B-AD986C936ADA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Dir-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-2A77FBBF-5388-51CB-9B3A-7F3D77A89CB2"><p> <filepath>%EPOCROOT%\epoc32\data\Z\base\PBASE-F32-DirScan-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-C47260A6-A17B-5DA9-AB1D-5BC78BC90B68"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-DriveUnit-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-D751FBA1-5015-5F6C-9A38-557D49723B83"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Entry-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-4489C031-9018-5CC7-8B11-6E7DFE824EEC"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-EntryArray-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-A59FB665-DE83-5841-ACBE-333FAD03B3DF"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-File-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-AFB26E83-5E80-5E43-BA58-FAE2F5D96EEB"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileMan-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-F8CAE7DD-FE19-5A50-9392-56C5B4EAC915"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileNamesIdentical-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-DD2F98F3-A17E-5757-AB41-409F925C4F7B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileText-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-D62CC9D1-46B6-5BCD-A606-46347881F5DA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FindFile-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-E13796D6-B3A9-5912-BF37-2CD2CC00BDC2"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Format-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-1D1E5AC6-CC8C-5774-B7E0-54395A4097D8"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-OpenFileScan-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-4AD77960-E869-5E6F-8254-2922210DF5A4"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Parse-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-171797BA-E470-5FAE-A2FE-9BC075F8EC46"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParseBase-Inherited-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-139F561B-A316-5D2C-9BAE-6490DD84FCA7"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParsePtr-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-477117C3-3F50-55E4-A567-DDB1ED775B14"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParsePtrC-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-0E8831DE-FE25-55DB-9CDB-F59649C1E626"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RawDisk-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-4E5AD32F-FB11-5C68-9258-5798E6A466A6"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RDir-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-14A92FC1-83EB-52BF-A902-E796BEC9C2CD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-ANY.ini</filepath> </p> </li>
+<li id="GUID-DDEADD23-8D43-5437-8AB8-CF8A57B9AEFD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-RAM.ini</filepath> </p> </li>
+<li id="GUID-42A206F4-0F8E-52E0-8A2F-D7962D95694E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-REM-manual.ini</filepath> </p> </li>
+<li id="GUID-8969CC26-1EDC-5FBF-9479-154D604F23C7"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Drives-PublicApi-REM.ini</filepath> </p> </li>
+<li id="GUID-0B155643-7D3C-5682-ABB3-5B93D09BDDFA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Files-PublicApi-ANY.ini</filepath> </p> </li>
+<li id="GUID-3F12CA2D-B99D-5122-B407-E0BC0D70EC61"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Files-PublicApi-RAM.ini</filepath> </p> </li>
+<li id="GUID-B90D9312-9E2E-5BD7-8708-508C6A07B0FD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Misc-PublicApi-ANY.ini</filepath> </p> </li>
+<li id="GUID-5383F3CC-797E-54CA-9B6D-51DB8D65DA48"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Misc-PublicApi-RAM.ini</filepath> </p> </li>
+<li id="GUID-17CCF9C6-C865-5B80-9CFF-2B3E9F6A7033"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Mounts-PublicApi-ANY.ini</filepath> </p> </li>
+<li id="GUID-4B9D9D36-DE91-5612-AC00-D685D055C51B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini</filepath> </p> </li>
+<li id="GUID-03F8076A-E356-50C7-A3B9-598FE731DF8B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-PublicApi-OS.ini</filepath> </p> </li>
+<li id="GUID-0189A1A9-0187-5CEF-922B-36CDF6E61D24"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RFS-PublicApi-ROM.ini</filepath> </p> </li>
+<li id="GUID-05B55695-7919-5F8D-AB87-E1A2138D40A6"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-VolumeInfo-PublicApi.ini</filepath> </p> </li>
+<li id="GUID-5ECBC381-9FDD-54A2-AFD0-8AAD5A2C49DD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.ini</filepath> </p> </li>
+<li id="GUID-A42DF362-5AEB-5917-9B33-CE0DFD0C643E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\test.txt</filepath> </p> </li>
+<li id="GUID-9CAB7240-95C3-55C7-AE00-F755F62A286A"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test1.txt</filepath> </p> </li>
+<li id="GUID-56855800-854C-5744-B36E-5AADD5E67A3E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test2.txt</filepath> </p> </li>
+<li id="GUID-BF90905D-3B36-5DDB-AA2B-96A41136AF43"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test3.txt</filepath> </p> </li>
+<li id="GUID-CB1FB093-50E9-51CC-93BF-B7B27DAE6DCD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\test_rom.txt</filepath> </p> </li>
+<li id="GUID-1E27203F-0A8C-5615-95A5-3A434DA089A0"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\USBLOAD.ZIP</filepath> </p> </li>
+<li id="GUID-76073A64-BFF6-53BB-9824-BD8FBC30A845"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Big.txt</filepath> </p> </li>
+</ul> <p>The global environment file is located at the following location: </p> <ul>
+<li id="GUID-072A3EEF-5CFC-526F-974B-682FC3740808"><p> <filepath>...\baseapitest\basesvs\validation\f32\testdata\&lt;platform&gt;\base_f32_env.ini</filepath> </p> </li>
+</ul> <p><b>Test
+Data Files EPOC Tree Location</b> </p> <p>When the tests are built for emulator
+or hardware (winscw/armv5), the data files are exported into the following
+location in the epoc tree. </p> <p> <filepath>%EPOCROOT%\epoc32\data\Z\base\t_sfsrv\</filepath>  </p> <p>The
+global environment file is located at: <filepath>%EPOCROOT%\epoc32\data\Z\base\base_f32_env.ini</filepath>  </p> <p><b> Test Data Files Emulator Location</b> </p> <p>When the tests are built,
+the test data files are built into the following location : </p> <p> <filepath>%EPOCROOT%\epoc32\release\winscw\&lt;udeb/urel&gt;\Z\base\t_sfsrv\</filepath> </p> <p>The global environment file is placed into the following location: </p> <p> <filepath>%EPOCROOT%\epoc32\release\winscw\&lt;udeb/urel&gt;\Z\base\</filepath> </p> <p> <b>Note</b>: When the tests are built to be run on hardware, the
+files are built into the z: drive of the ROM </p> <p><b>Test .driver File</b> </p> <p>The <filepath>base.driver</filepath> file
+found in <filepath>...\baseapitest\basesvs\testsuites\base\</filepath> is
+used by the test driver to construct the test suite tree structure and export
+all the appropriate files to the correct location in the epoc32 tree and on
+the device. </p> <p>When the tests are built, the <filepath>.driver</filepath> file
+can be found in the following location: <filepath>%EPOCROOT%\epoc32\testdriver\testproduct\</filepath>  </p> <p id="GUID-71179094-80CD-5B83-95E3-BE8A7DE2F637"><b>TCS File Source Location</b> </p> <p>The <filepath>.tcs</filepath> file
+is located at the following location: </p> <p> <filepath>...\baseapitest\basesvs\config\t_base.tcs</filepath>  </p> <p><b>TCS File Build Location</b> </p> <p>When the tests are built, the <filepath>.tcs</filepath> file
+is built into the following location: </p> <p> <filepath>%EPOCROOT%\epoc32\release\&lt;winscw|armv5&gt;\&lt;udeb|urel&gt;\Z\base\</filepath> </p> <p> <b>Note:</b> When the tests are built to be run on hardware, the files are built
+into the <filepath>z:</filepath> drive of the ROM. </p> <p><b> Global tests configuration</b> </p> <p>The <filepath>base_f32_env.ini</filepath> file
+is the test suite global environment file, which contains the configurable
+parameters. The file contains following definitions of different drives used
+by the test suite and other settings: </p> <ul>
+<li id="GUID-2242B9D7-6E45-5955-8078-A8FA5F38722C"><p>a system drive (which
+is normally C-drive); </p> </li>
+<li id="GUID-54BD6ECD-BFDA-57B4-BF73-67BDDEC221CD"><p>a test drive with RAM
+(which is X-drive by default on WINSCW and E: on H2/H4 standard ROMs); </p> </li>
+<li id="GUID-C62582B6-94D2-5E0D-9519-0DA607464532"><p>an MMC drive (a drive
+to where a MMC card is present); </p> </li>
+<li id="GUID-E8A3D55F-61C3-502E-8C4C-3418981A1AD0"><p>a drive for testing
+substitution; </p> </li>
+<li id="GUID-06D82642-D6DB-564F-B6A0-14FFE03CABD0"><p>a drive that has no
+a file system; </p> </li>
+<li id="GUID-3979F4A4-1E3B-56F2-99B5-7CBF7AC26CE6"><p>file system plug-ins
+used as the test data </p> </li>
+</ul> </section>
+<section id="GUID-3FE2BDCD-22D8-472E-B0EE-C7FF74463A51"><title> Test Environment and Execution</title> <p><b> File
+system plug-ins</b> </p> <p>This test suite is dependant upon the test file
+system and test file system extension plug-ins found in <filepath>...\baseapitest\basesvs\FileSystemPlugins\group\</filepath>. </p> <p>If
+the test suite is build from <filepath>...\baseapitest\basesvs\group\    
+         </filepath> then there is no need to build the plug-ins separately. </p> <p>When
+the plug-ins are built, two files, <filepath>T_TESTFSY1.fsy</filepath> and <filepath>T_TestFXT.fxt</filepath>,
+are added to the system of the device under test. The plug-ins are used in
+some test cases that test the drive mounting and dismounting related functions
+of <codeph>RFs</codeph>. </p> <p><b>Console
+application</b> </p> <p>The manual test suite is dependant upon the console
+input-output application found in the location <filepath>...\baseapitest\basesvs\Prompt\</filepath>. </p> <p>If
+the test suite is build from <filepath>...\baseapitest\basesvs\group\</filepath> then
+there is no need to build the console application separately. </p> <p>When
+the console input-output executable is built, an executable file, <filepath>t_prompt.exe</filepath>,
+will be added to the system of the device under test. This executable file
+prints the following instruction: </p> <p> <i> “After hitting a key to continue,
+eject and insert the MMC card (press F5 and release on the emulator). And
+press any key to continue...” </i>  </p> <p><b>Steps
+to run NAND tests</b> </p> <p>A few test cases (test IDs PBASE-F32-File-PublicApi-6001
+and PBASE-F32-File-PublicApi-6002) require a flash memory stick with paged
+NAND ROM. The system is started from the NAND flash and uses the flash memory
+stick as the ROM-drive. Ensure that your NAND ROM memory is paged. If any
+other type of ROM is used then the test cases will fail with <codeph>KErrNotSupported</codeph>. </p> <p>The
+NAND memory can be paged by building a ROM with <filepath>pagedrom_functional.oby</filepath> present
+in the ..<filepath>.\epoc32\rom\include\</filepath> directory as described: </p> <ol id="GUID-B058BB01-F1F2-5F1D-B843-A9C506B6C57B">
+<li id="GUID-8A362989-F5E2-5E4D-9632-C0EB69B9F84D"><p>Navigate to <filepath>...\epoc32\rom</filepath> and
+run one of the following commands: </p> <p>For automated testing using TestDriver: </p> <p><userinput>buildrom
+-D_STARTUPMODE5 -D_NAND2 -D_EABI=&lt;ARMV5/Gcce&gt; -DRVCT &lt;h4hrp/h2&gt; pagedrom_functional.oby
+techview_statapi platsec td_base</userinput> </p> <p>For manual testing: </p> <p><userinput>buildrom
+-D_STARTUPMODE5 -D_NAND2 -D_EABI=&lt;ARMV5/gcce&gt; -DRVCT &lt;h4hrp/h2&gt; pagedrom_functional.oby
+techview platsec t_base</userinput> </p> <p>This command creates two image
+files: <filepath>h4hrp_001.techview.nand.IMG</filepath> and <filepath>h4hrp_001.techview.nand.rofs.img</filepath>. </p> </li>
+<li id="GUID-0C5BD06E-BB45-5BCA-A645-D3944FE71594"><p>Rename the two image
+files <filepath>h4hrp_001.techview.nand.IMG</filepath> and <filepath>h4hrp_001.techview.nand.rofs.img</filepath> as <filepath>core.img</filepath> and <filepath>rofs1.img</filepath> respectively. </p> </li>
+<li id="GUID-7B7E33CA-CCBE-5263-83CC-9B86C4555DE3"><p>To generate the nandloader,
+navigate to the <filepath>sf/os/kernelhwsrv/kernel/eka/rombuild</filepath> directory
+and run the following command: </p> <p><userinput>rom -v=h4hrp -b=urel -I=armv5
+-t=nandloader -m=_NAND2</userinput> </p> <p>Successful execution of this command
+generates the image file <filepath>H4HRP__NAND2ARMV5D.IMG</filepath>  </p> </li>
+<li id="GUID-20A7FC77-3314-57D3-995C-4CE80BE3A33C"><p>Place <filepath>H4HRP__NAND2ARMV5D.IMG</filepath> in
+a ZIP file and rename the ZIP file to <filepath>sys$rom.zip</filepath>. </p> </li>
+<li id="GUID-4BA3B423-2440-56B3-8F35-784289827F00"><p>Transfer all three files
+(<filepath>core.img</filepath>, <filepath>rofs1.img</filepath> and <filepath>sys$rom.zip</filepath>)
+to the hardware board using an MMC card or a USB cable. </p> <p>The STAT application
+should launch automatically into the <i>waiting for data</i> state when the
+board is restarted with the NAND configuration. </p> <p>If this does not occur,
+check that the NAND configuration ROM is built correctly and that you have
+configured STAT correctly. </p> </li>
+</ol> <p><b> Steps
+to run Dual Drive tests</b> </p> <p>The test cases in PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script
+are used to test the dual drive feature on the device. F32 APIs has been used
+to validate the Dual Drive feature on Hardware. </p> <p>To run Dual Drive
+tests on H4, perform the following steps: </p> <ol id="GUID-1C4E1E9D-6E82-5230-9175-907FBE3BD938">
+<li id="GUID-0BD3936B-4530-5F6E-A645-20DF4695C93F"><p>Update dual_drive_env.ini
+with the proper drive information. </p> <p>Example : DriveChar1 = E //On H4
+MMC1 is represented as E:/ drive </p> <p>DriveChar2 = F //On H4 MMC2 is represented
+as F:/ Drive </p> <p>Build the test code from location <codeph>...\baseapitest\basesvs\group\</codeph>  </p> <p> <codeph>&gt;&gt;bldmake
+bldfiles</codeph>  </p> <p> <codeph>&gt;&gt;abld test build </codeph>  </p> </li>
+<li id="GUID-CD24047E-7859-530F-AAD3-95B95DF44794"><p>Build the rom image
+with STAT </p> <p> <codeph>&gt;&gt;buildrom -DMMC_DUAL_SLOT -DUSE_SDIO_SD_MMC  
+                -DWITH_FAT32 -D_STARTUPMODE2 -D_EABI=ARMV5 -DRVCT h4hrp techview_statapi
+                  platsec</codeph>  </p> <p>Executing the above command generates
+an image file by name, h4hrp_001.techview.IMG. The file <filepath>h4hrp_001.techview.IMG</filepath> needs
+to be zipped in Sys$rom.zip </p> </li>
+<li id="GUID-F306C6E8-F57B-5877-BF8C-BDB46848BCDE"><p>Boot the H4 board with
+the above image from MMC1 slot. On techview ROM the mmc drive used to boot
+the board is represented as E:/ Drive. </p> <p>Once the image is booted, “STAT
+waiting for data” appears on the screen. Now insert the other MMC card on
+to the MMC2. This drive is mapped to <codeph>F</codeph> drive. </p> <p> <b>Note</b>:
+MMC2 slot must be free while booting the image and insert it later before
+running the tests. </p> </li>
+<li id="GUID-AD35D69B-CDB1-51D8-8195-33028841B9A0"><p>Run the tests </p> <p>Now
+use testdriver to build and run the tests. </p> <p> <codeph>&gt;&gt;testdriver build
+–p armv5 –b urel –s                   base.validation.f32.f32-dualdrive</codeph>  </p> <p> <codeph>&gt;&gt;testdriver
+run –t &lt;transport&gt;</codeph>  </p> <p>where <codeph>&lt;transport&gt;</codeph> is
+serial or usb </p> </li>
+</ol> <p>To run Dual Drive tests on Phone, perform the following steps: </p> <ol id="GUID-14AC969E-89D9-5DB1-9A5D-22EFAEE47BEA">
+<li id="GUID-C980AE52-26F9-5926-8B7E-0EFEA2C31B4B"><p>Select the Phone which
+has dual drive feature supported on it. </p> </li>
+<li id="GUID-DB4B42E3-F941-5650-AAA7-1D82AC105B18"><p>Update global environment
+file before building the testcode. </p> <p>Update <filepath>dual_drive_env.ini</filepath> with
+the proper drive information. </p> <p>Example : </p> <p> <codeph>DriveChar1
+= E</codeph> //one of the dual drive on the phone </p> <p> <codeph> DriveChar2
+= F</codeph> //One of the dual drive on the phone </p> <p>Build the test code
+from location ...<filepath>\baseapitest\basesvs\group\</filepath>  </p> <p> <codeph>&gt;&gt;bldmake
+bldfiles</codeph>  </p> <p> <codeph>&gt;&gt;abld test build</codeph>  </p> </li>
+<li id="GUID-5762F4D9-04C1-5743-B59D-C1054ED5E616"><p>Create sis package using
+the package file <filepath>&lt;drive&gt;:/epoc32/pkg/dualdrive.pkg</filepath>  </p> <p> <codeph>&gt;&gt;makesis
+dualdrive.pkg dualdrive.sis </codeph>  </p> <p> <codeph>&gt;&gt;signsis -s dualdrive.sis
+dualdrive.sis test.cer                   test.key </codeph>  </p> <p> <codeph>where
+test.cer and test.key are certificate and key                   files.</codeph>  </p> </li>
+<li id="GUID-B1137195-6C28-5FFB-87AA-58E20851AC77"><p>Install the sis package
+on to the phone. </p> <p>Install the <filepath>sis</filepath> file on to the
+device using BT or USB. </p> </li>
+<li id="GUID-2E6FE1D5-45D3-5CD3-958F-0D270CCAAF17"><p>Run the tests from eshell </p> <p> <codeph>&gt;
+testexecute                   z:\base\setup-PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</codeph>  </p> <p> <codeph>&gt;
+testexecute                   z:\base\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</codeph>  </p> </li>
+</ol> </section>
 </conbody></concept>
\ No newline at end of file