Symbian3/PDK/Source/GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 11 Mar 2010 18:02:22 +0000
changeset 3 46218c8b8afa
parent 1 25a17d01db0c
child 5 f345bda72bc4
permissions -rw-r--r--
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.

<?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>