Symbian3/PDK/Source/GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3.dita
changeset 1 25a17d01db0c
child 3 46218c8b8afa
equal deleted inserted replaced
0:89d6a7a84779 1:25a17d01db0c
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-E1EBD343-C8A6-51E5-B158-9A1D0328D3B3" xml:lang="en"><title> Base
       
    13 F32_EKA2 Validation Test Suite </title><shortdesc>Explanation of file server test suite.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <section id="GUID-B1B4BBC0-8820-47BA-9210-5F97D7224618"><title>Test Suite Overview</title> <p>This Suite provides regression
       
    15 tests for the following APIs: </p> <ul>
       
    16 <li id="GUID-662E0543-3BAC-5317-95D6-927C1F65B903"><p> <codeph> RFs</codeph>  </p> </li>
       
    17 <li id="GUID-6EDEB023-D3E1-5EE9-8AB5-F47211D78B05"><p> <codeph>CDir</codeph>  </p> </li>
       
    18 <li id="GUID-C6ED91B6-B332-5123-9258-81CFE652C049"><p> <codeph> CDirScan</codeph>  </p> </li>
       
    19 <li id="GUID-5813844E-9947-5B4E-92C2-A125F088F71C"><p> <codeph>CFileBase</codeph>  </p> </li>
       
    20 <li id="GUID-7E1C7B88-9227-56C2-AEC8-7D9796DEE152"><p> <codeph> CFileMan</codeph>  </p> </li>
       
    21 <li id="GUID-C4C259CE-C742-5B24-B2F1-66708A461D5A"><p> <codeph> MFileManObserver</codeph>  </p> </li>
       
    22 <li id="GUID-4AB8B219-CA2F-52A3-96D4-3736768A60E9"><p> <codeph>RDir</codeph>  </p> </li>
       
    23 <li id="GUID-613685A7-B040-53BB-9560-A9DDAE103F50"><p> <codeph> RFile</codeph>  </p> </li>
       
    24 <li id="GUID-A091D969-F8B9-5AF8-8639-F0EC6F3342A0"><p> <codeph> RFormat</codeph>  </p> </li>
       
    25 <li id="GUID-66587945-0CB5-5A91-9B05-70C0523E5263"><p> <codeph> RRawDisk</codeph>  </p> </li>
       
    26 <li id="GUID-0F32D7AE-743B-5357-8962-9A8752E9B144"><p> <codeph> TDriveUnit</codeph>  </p> </li>
       
    27 <li id="GUID-0A46F22A-96BA-5C0C-8A00-5B259BFAC71D"><p> <codeph> TEntry</codeph>  </p> </li>
       
    28 <li id="GUID-4475480A-CF58-5A66-92AD-1E10EAD0371F"><p> <codeph> TEntryArray</codeph>  </p> </li>
       
    29 <li id="GUID-13D24791-4EBA-5176-8A72-9ABB4CB45092"><p> <codeph> TFindFile</codeph>  </p> </li>
       
    30 <li id="GUID-2F4094BC-F595-5BEA-8AAA-1E8DB037D0F6"><p> <codeph> TFileText</codeph>  </p> </li>
       
    31 <li id="GUID-83A5D217-1F6C-56E8-8298-E393F36642CE"><p> <codeph> TOpenFileScan</codeph>  </p> </li>
       
    32 <li id="GUID-E369E41B-9FDD-5C67-817F-D68C6C03C183"><p> <codeph> TParse</codeph>  </p> </li>
       
    33 <li id="GUID-CFFBFA1F-794A-55F9-8088-ECC1663FE031"><p> <codeph> TParseBase</codeph>  </p> </li>
       
    34 <li id="GUID-71950702-FFF2-5775-8350-77ED477FCD95"><p> <codeph> TParsePtr</codeph>  </p> </li>
       
    35 <li id="GUID-0E9E06A1-EDFD-5B70-A6E5-16A18BE3FB96"><p> <codeph> TparsePtrC</codeph>  </p> </li>
       
    36 <li id="GUID-1505EEB4-6C38-5F7C-905B-95977D63DAB7"><p> <codeph> TVolumeInfo</codeph>  </p> </li>
       
    37 <li id="GUID-E1D154F8-CD75-5EEA-821B-6226BB2C60FC"><p> <codeph> FileNamesIdentical()</codeph>  </p> </li>
       
    38 </ul> <p>All PublishedAll APIs are tested. </p> </section>
       
    39 <section id="GUID-BC9345E7-061A-46FE-9CB3-E2FFE5ED38C9"><title>Test Approach</title> <p><b>Automated
       
    40 tests</b> </p> <p>All tests of the test suite are fully automated except those
       
    41 described in Manual Tests. </p> <p><b> Manual
       
    42 tests</b> </p> <p>Tests in the script <filepath>PBASE-F32-RFS-Drives-PublicApi-REM-manual.script</filepath> rely
       
    43 on the removal and insertion of removable storage, which requires manual intervention,
       
    44 so cannot be automated. Any test case that requires the card door to be opened
       
    45 or closed displays a message on the console to instruct the user. The functions
       
    46 that must be tested manually are: </p> <ul>
       
    47 <li id="GUID-35F48284-0726-5CCB-AC5A-B55CD8B60A3C"><p> <codeph>RFs::LockDrive()</codeph>  </p> </li>
       
    48 <li id="GUID-30822831-2CAE-539D-BB2A-795D1CE70695"><p> <codeph> RFs::UnlockDrive()</codeph>  </p> </li>
       
    49 <li id="GUID-628110E4-8C5F-5B92-AB80-B9786AE60EA3"><p> <codeph> RFs::ClearPassword()</codeph>  </p> </li>
       
    50 <li id="GUID-644D7219-BA77-56A8-80A4-5B5DB90DDA83"><p> <codeph> RFs::ErasePassword()</codeph>  </p> </li>
       
    51 </ul> <p><b> MMC
       
    52 Card Tests</b> </p> <p>When executing on hardware, all the tests that use
       
    53 an MMC card need a real MMC card. </p> <p>On the emulator an MMC card is simulated.
       
    54 You must press and release the F5 button when requested to simulate a door
       
    55 open or door close event. </p> <p>Some MMC locking related tests can be considered
       
    56 as dangerous because they remove all data from the MMC card. These test cases
       
    57 are run together with all other test cases to ensure that no critical data
       
    58 is saved on the MMC card. </p> <p><b>Dual
       
    59 Drive Tests</b> </p> <p>The Dual Drive tests are run on the device which has
       
    60 two drives enabled from the same interface. For example, two MMC drives, two
       
    61 NAND flash etc. </p> <p>These tests can be run directly by modifying the environment
       
    62 file with the relevant drive information. </p> <p id="GUID-06925269-B275-5EFE-98BF-8C908F18A8DF"><b>Categorization by drive
       
    63 type</b> </p> <p>Many test cases are dependant on the type of disk drive they
       
    64 can be run on. The test suite consists of some of the test scripts each containing
       
    65 a certain drive specific tests. </p> <p>The following are the specific drive
       
    66 types: </p> <ul>
       
    67 <li id="GUID-E26C5289-502B-5028-A82C-EC134E2E0463"><p>ROM-drive (test scripts
       
    68 have –ROM postfix in file name) </p> </li>
       
    69 <li id="GUID-B7882231-7533-5457-B821-F10D427E0A9A"><p>Paged NAND memory (test
       
    70 scripts have –NAND postfix in file name) </p> </li>
       
    71 <li id="GUID-2DBFFD6E-50DC-5E49-AF39-E0D77A7F24DC"><p>System-drive (test scripts
       
    72 have –OS postfix in file name) </p> </li>
       
    73 <li id="GUID-E6D90488-EFF0-555C-834B-5C9E8DD554E4"><p>RAM-drive (test scripts
       
    74 have –RAM postfix in file name) </p> </li>
       
    75 <li id="GUID-976D7D34-D099-56C5-87FF-1385B46EE6D4"><p>Removable drive (like
       
    76 MMC, test scripts have –REM postfix in file name) </p> </li>
       
    77 </ul> <p>All the remaining tests are not specific to any type of drive (test
       
    78 scripts have –ANY postfix in file name). The separation makes possible to
       
    79 test the APIs against a certain drive type. </p> <p><b>Coverage Omissions</b> </p> <p>Function RFs::FinaliseDrives() is omitted
       
    80 in the test suite, because it is impossible to automate it's tests with TEF.
       
    81 During execution TEF keeps files open and finalising drives would break TEF
       
    82 execution. </p> <p>The following functions are omitted as they purely debug
       
    83 mode functions: </p> <ul>
       
    84 <li id="GUID-B642F7BD-6244-5725-B896-57DF20777B29"><p> <codeph>RFs::SetErrorCondition(TInt
       
    85 anError,TInt aCount=0);</codeph>  </p> </li>
       
    86 <li id="GUID-5E63AED0-D1FD-5BA5-A53C-CC3DA9E95ED8"><p> <codeph>RFs::SetDebugRegister(TInt
       
    87 aVal);</codeph>  </p> </li>
       
    88 <li id="GUID-3ACE89E0-9C95-5DAA-BF67-E9979996E656"><p> <codeph>RFs::SetAllocFailure(TInt
       
    89 aAllocNum);</codeph>  </p> </li>
       
    90 <li id="GUID-0B63F574-679A-56D9-9B92-614C25EC6DFE"><p> <codeph>RFs::DebugNotify(TInt
       
    91 aDrive,TUint                   aNotifyType,TRequestStatus&amp; aStat);</codeph>  </p> </li>
       
    92 <li id="GUID-22DD505A-D5EF-5E43-BDE4-1F63FCB09EE0"><p> <codeph>RFs::ControlIo(TInt
       
    93 aDrive,TInt aCommand);</codeph>  </p> </li>
       
    94 <li id="GUID-3E07C0F3-E6E3-593F-B2EA-B505DD2EAE58"><p> <codeph>RFs::ControlIo(TInt
       
    95 aDrive,TInt aCommand,TDes8&amp;                   aParam1);</codeph>  </p> </li>
       
    96 <li id="GUID-4EF23061-EAEE-57BA-B2A4-4459EDED3894"><p> <codeph>RFs::ControlIo(TInt
       
    97 aDrive,TInt aCommand,TDes8&amp;                   aParam1,TDes8&amp; aParam2);</codeph>  </p> </li>
       
    98 <li id="GUID-8C4D1E53-65BC-58A1-999C-C8392F2789A6"><p> <codeph>RFs::ControlIo(TInt
       
    99 aDrive,TInt aCommand,TAny*                   aParam1,TAny* aParam2);</codeph>  </p> </li>
       
   100 </ul> <p>Some functions of RFs must be used by ESTART program during Symbian
       
   101 platform start up. Such functions are as follows: </p> <ul>
       
   102 <li id="GUID-CB527053-698B-57D4-AAAB-000B43295443"><p> <codeph>RFs::SetStartupConfiguration(TInt
       
   103 aCommand, TAny *aParam1,                   TAny *aParam2);</codeph>  </p> </li>
       
   104 <li id="GUID-5035B2F8-4ACA-5F5E-AE48-800B18EF8B73"><p> <codeph>RFs::SetLocalDriveMapping(const
       
   105 TDesC8                   &amp;aMapping);</codeph>  </p> </li>
       
   106 <li id="GUID-AFE26EB7-8668-527A-987F-1A57C76F1A8B"><p> <codeph>RFs::StartupInitComplete(TRequestStatus
       
   107 &amp;aStat);</codeph> </p> </li>
       
   108 <li id="GUID-2C5ECA18-3F84-5DAA-84BA-D5C405C0E2D0"><p> <codeph>RFs::AddCompositeMount(const
       
   109 TDesC &amp;aFileSystemName,                   TInt aLocalDriveToMount, TInt
       
   110 aCompositeDrive, TBool aSync);</codeph>  </p> </li>
       
   111 </ul> <p>The test suite provides only possible negative tests for the functions
       
   112 above. </p> <p>The following list of functions is also omitted because they
       
   113 must be tested as part of a separate test suite: </p> <ul>
       
   114 <li id="GUID-584F8D77-AAEE-5C05-AADC-D10B79AEB46A"><p> <codeph>RFile::AdoptFromClient(const
       
   115 RMessage2 &amp;aMsg, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
       
   116 <li id="GUID-4D3D5A72-FCBC-5DAF-94A0-CE35A7CBE86F"><p> <codeph>RFile::AdoptFromCreator(TInt
       
   117 aFsIndex, TInt                   aFileHandleIndex);</codeph>  </p> </li>
       
   118 <li id="GUID-4598C926-3DFD-56C2-93B1-0A1C16593575"><p> <codeph>RFile::AdoptFromServer(TInt
       
   119 aFsHandle, TInt                   aFileHandle);</codeph>  </p> </li>
       
   120 <li id="GUID-BA0D7C1D-78DF-5852-B92B-1BFF494AEF1F"><p> <codeph>RFile::TransferToClient(const
       
   121 RMessage2 &amp;aMsg, TInt                   aFileHandleIndex);</codeph>  </p> </li>
       
   122 <li id="GUID-CE0DFC12-CB57-5FFD-BE55-76F248883549"><p> <codeph>RFile::TransferToProcess(RProcess
       
   123 &amp;aProcess, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
       
   124 <li id="GUID-6DBC1AE0-12C9-559B-B5FF-1BD991F81310"><p> <codeph>RFile::TransferToServer(TIpcArgs
       
   125 &amp;aIpcArgs, TInt                   aFsHandleIndex, TInt aFileHandleIndex);</codeph>  </p> </li>
       
   126 </ul> </section>
       
   127 <section id="GUID-850F16D8-AA67-53CE-9A76-EA3B271A3307"><title>Test Suite
       
   128 Details</title> <p><b>Test
       
   129 Script Source Tree Location</b> </p> <p>Descriptions of the test scripts can
       
   130 be found at the following location: </p> <ul>
       
   131 <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>
       
   132 <li id="GUID-EA047B5F-6BEF-5284-9256-5F71764FFDB8"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DirScan-PublicApi-RAM.script
       
   133                   </filepath>  </p> </li>
       
   134 <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>
       
   135 <li id="GUID-2DDA06BF-4F93-507B-9577-96EFE83BE562"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Entry-PublicApi-RAM.script
       
   136                   </filepath>  </p> </li>
       
   137 <li id="GUID-846F8CCD-1E1E-5983-BA26-A8D5385DEFF2"><p> <filepath>        
       
   138           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-EntryArray-PublicApi-RAM.script
       
   139                   </filepath>  </p> </li>
       
   140 <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>
       
   141 <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>
       
   142 <li id="GUID-6D96516F-6424-5D7B-9F7B-8DF4CE1B25D3"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileMan-PublicApi-OS.script
       
   143                   </filepath>  </p> </li>
       
   144 <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>
       
   145 <li id="GUID-97A8F1EB-7FFF-5BA0-8A20-9D210F5E9E15"><p> <filepath>        
       
   146           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileNamesIdentical-PublicApi-RAM.script</filepath> </p> </li>
       
   147 <li id="GUID-F7140F45-00EA-5B45-9BE8-F65E249A63D1"><p> <filepath>        
       
   148           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FileText-PublicApi-RAM.script</filepath> </p> </li>
       
   149 <li id="GUID-1AF710E1-2950-512E-B03A-7C1F1D16676C"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-FindFile-PublicApi-OS.script
       
   150                   </filepath>  </p> </li>
       
   151 <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>
       
   152 <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>
       
   153 <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>
       
   154 <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>
       
   155 <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>
       
   156 <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>
       
   157 <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>
       
   158 <li id="GUID-A365383E-2285-56CF-81A0-030AFE957E5E"><p> <filepath>        
       
   159           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParseBaseTemplate-Inherited-PublicApi-ANY.script</filepath> </p> </li>
       
   160 <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>
       
   161 <li id="GUID-15012D1F-0998-5DB2-9592-2CAED8E40E62"><p> <filepath>        
       
   162           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-ParsePtr-PublicApi-ANY.script</filepath> </p> </li>
       
   163 <li id="GUID-B52EF8E8-357A-5C0B-BEB4-152BC2572524"><p> <filepath>        
       
   164           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RawDisk-PublicApi-RAM.script</filepath> </p> </li>
       
   165 <li id="GUID-D8A34A66-43DB-521B-940C-BF4A848E8BD4"><p> <filepath>        
       
   166           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RawDisk-PublicApi-REM.script</filepath> </p> </li>
       
   167 <li id="GUID-A26829C0-BB1E-599C-BBC8-AA78966354AE"><p> <filepath>        
       
   168           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RDir-PublicApi-RAM.script</filepath> </p> </li>
       
   169 <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>
       
   170 <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>
       
   171 <li id="GUID-CFB7A110-11D2-5619-8B43-FC17C820C232"><p> <filepath>        
       
   172           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Drives-PublicApi-REM-manual.script</filepath> </p> </li>
       
   173 <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>
       
   174 <li id="GUID-603EA6AB-73A3-5056-A8C0-A2110E315EF6"><p> <filepath>        
       
   175           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Files-PublicApi-RAM.script</filepath> </p> </li>
       
   176 <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>
       
   177 <li id="GUID-EB808F1B-1200-5475-ADF7-8EEB0115F732"><p> <filepath>        
       
   178           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-Misc-PublicApi-RAM.script</filepath> </p> </li>
       
   179 <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>
       
   180 <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>
       
   181 <li id="GUID-E136551B-A7B3-5DD9-BEF3-DA950E172D12"><p> <filepath>        
       
   182           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-RFS-PublicApi-OS.script</filepath> </p> </li>
       
   183 <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>
       
   184 <li id="GUID-EE38E325-48D9-5EDD-97BA-75A21834B0EA"><p> <filepath>        
       
   185           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-ANY.script</filepath> </p> </li>
       
   186 <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>
       
   187 <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>
       
   188 <li id="GUID-6A5A351D-7F16-53EE-80AC-4333A1B01544"><p> <filepath>        
       
   189           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-RAM.script
       
   190                   </filepath>  </p> </li>
       
   191 <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>
       
   192 <li id="GUID-FF781294-BFAC-588F-98B9-6AA327E0DFE7"><p> <filepath>        
       
   193           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-Sfsrv-PublicApi-ROM.script</filepath> </p> </li>
       
   194 <li id="GUID-5BD9A72D-3EE2-5FE0-83EB-309B1E0AB16D"><p> <filepath>        
       
   195           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-SfSrv-PublicApi.script</filepath> </p> </li>
       
   196 <li id="GUID-1AE6A5CB-2C6C-511D-8DD9-512FD84A8ED4"><p> <filepath>        
       
   197           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-VolumeInfo-PublicApi-ANY.script</filepath> </p> </li>
       
   198 <li id="GUID-8A30969D-FE35-5595-866C-044AB3406D0A"><p> <filepath>        
       
   199           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</filepath> </p> </li>
       
   200 <li id="GUID-C076426E-1861-59D4-BE8F-DADA9625B357"><p> <filepath>        
       
   201           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\Setup-PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</filepath> </p> </li>
       
   202 <li id="GUID-BE0F29CD-DF4A-5695-9235-A61BA6923BEB"><p> <filepath>        
       
   203           ...\baseapitest\basesvs\validation\f32\sfsrv\scripts\setup-PBASE-F32-SfSrv-PublicApi.script</filepath> </p> </li>
       
   204 </ul> <p><b>Test
       
   205 Script EPOC tree Location</b> </p> <p>When the tests are built for emulator
       
   206 or hardware (winscw or armv5), the scripts are exported into the following
       
   207 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
       
   208 are built into the following location: </p> <p> <filepath>%EPOCROOT%\epoc32\release\&lt;winscw|armv5&gt;\&lt;udeb|urel&gt;\Z\base\
       
   209                 </filepath>  </p> <p> <b>Note</b>: When the tests are built
       
   210 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
       
   211 test data files: </p> <ul>
       
   212 <li id="GUID-DCD4BF9C-44AB-5549-A891-8C4FFA6BDFE4"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\1mb</filepath> </p> </li>
       
   213 <li id="GUID-2817EB32-2F03-5D1A-8FDA-5BB4A7DC424B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\1mb</filepath> </p> </li>
       
   214 <li id="GUID-A03EF9DC-E6FE-5C2F-8C5D-273464D031FC"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\any.txt</filepath> </p> </li>
       
   215 <li id="GUID-448EFA10-391E-5C94-9F7C-3263F783AA47"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\big_line.txt</filepath> </p> </li>
       
   216 <li id="GUID-4DFA5A3A-4307-5E17-AA4C-9361291D080B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\empty_file.txt</filepath> </p> </li>
       
   217 <li id="GUID-750E3316-5049-529D-845D-F2606BC3C434"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\filetext_eof.txt</filepath> </p> </li>
       
   218 <li id="GUID-9F3AFEDF-F5F5-580F-9EDF-2F01D0E24B97"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\filetext_read.txt</filepath> </p> </li>
       
   219 <li id="GUID-98DBC55F-33C6-573A-ACAE-A2D5CF392C4D"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\multiline.txt</filepath> </p> </li>
       
   220 <li id="GUID-DBC83C7A-182F-5336-99AE-F8DAFBF14537"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\new_file.txt</filepath> </p> </li>
       
   221 <li id="GUID-8E8A9870-7CC2-5CD9-A682-F8D8E2B9EF91"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\oneliner.txt</filepath> </p> </li>
       
   222 <li id="GUID-A77DF635-9C8E-540A-B75B-AD986C936ADA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Dir-PublicApi.ini</filepath> </p> </li>
       
   223 <li id="GUID-2A77FBBF-5388-51CB-9B3A-7F3D77A89CB2"><p> <filepath>%EPOCROOT%\epoc32\data\Z\base\PBASE-F32-DirScan-PublicApi.ini</filepath> </p> </li>
       
   224 <li id="GUID-C47260A6-A17B-5DA9-AB1D-5BC78BC90B68"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-DriveUnit-PublicApi.ini</filepath> </p> </li>
       
   225 <li id="GUID-D751FBA1-5015-5F6C-9A38-557D49723B83"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Entry-PublicApi.ini</filepath> </p> </li>
       
   226 <li id="GUID-4489C031-9018-5CC7-8B11-6E7DFE824EEC"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-EntryArray-PublicApi.ini</filepath> </p> </li>
       
   227 <li id="GUID-A59FB665-DE83-5841-ACBE-333FAD03B3DF"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-File-PublicApi.ini</filepath> </p> </li>
       
   228 <li id="GUID-AFB26E83-5E80-5E43-BA58-FAE2F5D96EEB"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileMan-PublicApi.ini</filepath> </p> </li>
       
   229 <li id="GUID-F8CAE7DD-FE19-5A50-9392-56C5B4EAC915"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileNamesIdentical-PublicApi.ini</filepath> </p> </li>
       
   230 <li id="GUID-DD2F98F3-A17E-5757-AB41-409F925C4F7B"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FileText-PublicApi.ini</filepath> </p> </li>
       
   231 <li id="GUID-D62CC9D1-46B6-5BCD-A606-46347881F5DA"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-FindFile-PublicApi.ini</filepath> </p> </li>
       
   232 <li id="GUID-E13796D6-B3A9-5912-BF37-2CD2CC00BDC2"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Format-PublicApi.ini</filepath> </p> </li>
       
   233 <li id="GUID-1D1E5AC6-CC8C-5774-B7E0-54395A4097D8"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-OpenFileScan-PublicApi.ini</filepath> </p> </li>
       
   234 <li id="GUID-4AD77960-E869-5E6F-8254-2922210DF5A4"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-Parse-PublicApi.ini</filepath> </p> </li>
       
   235 <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>
       
   236 <li id="GUID-139F561B-A316-5D2C-9BAE-6490DD84FCA7"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParsePtr-PublicApi.ini</filepath> </p> </li>
       
   237 <li id="GUID-477117C3-3F50-55E4-A567-DDB1ED775B14"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-ParsePtrC-PublicApi.ini</filepath> </p> </li>
       
   238 <li id="GUID-0E8831DE-FE25-55DB-9CDB-F59649C1E626"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RawDisk-PublicApi.ini</filepath> </p> </li>
       
   239 <li id="GUID-4E5AD32F-FB11-5C68-9258-5798E6A466A6"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-RDir-PublicApi.ini</filepath> </p> </li>
       
   240 <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>
       
   241 <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>
       
   242 <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>
       
   243 <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>
       
   244 <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>
       
   245 <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>
       
   246 <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>
       
   247 <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>
       
   248 <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>
       
   249 <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>
       
   250 <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>
       
   251 <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>
       
   252 <li id="GUID-05B55695-7919-5F8D-AB87-E1A2138D40A6"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\PBASE-F32-VolumeInfo-PublicApi.ini</filepath> </p> </li>
       
   253 <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>
       
   254 <li id="GUID-A42DF362-5AEB-5917-9B33-CE0DFD0C643E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\test.txt</filepath> </p> </li>
       
   255 <li id="GUID-9CAB7240-95C3-55C7-AE00-F755F62A286A"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test1.txt</filepath> </p> </li>
       
   256 <li id="GUID-56855800-854C-5744-B36E-5AADD5E67A3E"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test2.txt</filepath> </p> </li>
       
   257 <li id="GUID-BF90905D-3B36-5DDB-AA2B-96A41136AF43"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Test3.txt</filepath> </p> </li>
       
   258 <li id="GUID-CB1FB093-50E9-51CC-93BF-B7B27DAE6DCD"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\test_rom.txt</filepath> </p> </li>
       
   259 <li id="GUID-1E27203F-0A8C-5615-95A5-3A434DA089A0"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\USBLOAD.ZIP</filepath> </p> </li>
       
   260 <li id="GUID-76073A64-BFF6-53BB-9824-BD8FBC30A845"><p> <filepath>...\baseapitest\basesvs\validation\f32\sfsrv\testdata\Big.txt</filepath> </p> </li>
       
   261 </ul> <p>The global environment file is located at the following location: </p> <ul>
       
   262 <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>
       
   263 </ul> <p><b>Test
       
   264 Data Files EPOC Tree Location</b> </p> <p>When the tests are built for emulator
       
   265 or hardware (winscw/armv5), the data files are exported into the following
       
   266 location in the epoc tree. </p> <p> <filepath>%EPOCROOT%\epoc32\data\Z\base\t_sfsrv\</filepath>  </p> <p>The
       
   267 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,
       
   268 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
       
   269 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
       
   270 found in <filepath>...\baseapitest\basesvs\testsuites\base\</filepath> is
       
   271 used by the test driver to construct the test suite tree structure and export
       
   272 all the appropriate files to the correct location in the epoc32 tree and on
       
   273 the device. </p> <p>When the tests are built, the <filepath>.driver</filepath> file
       
   274 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
       
   275 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
       
   276 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
       
   277 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
       
   278 is the test suite global environment file, which contains the configurable
       
   279 parameters. The file contains following definitions of different drives used
       
   280 by the test suite and other settings: </p> <ul>
       
   281 <li id="GUID-2242B9D7-6E45-5955-8078-A8FA5F38722C"><p>a system drive (which
       
   282 is normally C-drive); </p> </li>
       
   283 <li id="GUID-54BD6ECD-BFDA-57B4-BF73-67BDDEC221CD"><p>a test drive with RAM
       
   284 (which is X-drive by default on WINSCW and E: on H2/H4 standard ROMs); </p> </li>
       
   285 <li id="GUID-C62582B6-94D2-5E0D-9519-0DA607464532"><p>an MMC drive (a drive
       
   286 to where a MMC card is present); </p> </li>
       
   287 <li id="GUID-E8A3D55F-61C3-502E-8C4C-3418981A1AD0"><p>a drive for testing
       
   288 substitution; </p> </li>
       
   289 <li id="GUID-06D82642-D6DB-564F-B6A0-14FFE03CABD0"><p>a drive that has no
       
   290 a file system; </p> </li>
       
   291 <li id="GUID-3979F4A4-1E3B-56F2-99B5-7CBF7AC26CE6"><p>file system plug-ins
       
   292 used as the test data </p> </li>
       
   293 </ul> </section>
       
   294 <section id="GUID-3FE2BDCD-22D8-472E-B0EE-C7FF74463A51"><title> Test Environment and Execution</title> <p><b> File
       
   295 system plug-ins</b> </p> <p>This test suite is dependant upon the test file
       
   296 system and test file system extension plug-ins found in <filepath>...\baseapitest\basesvs\FileSystemPlugins\group\</filepath>. </p> <p>If
       
   297 the test suite is build from <filepath>...\baseapitest\basesvs\group\    
       
   298          </filepath> then there is no need to build the plug-ins separately. </p> <p>When
       
   299 the plug-ins are built, two files, <filepath>T_TESTFSY1.fsy</filepath> and <filepath>T_TestFXT.fxt</filepath>,
       
   300 are added to the system of the device under test. The plug-ins are used in
       
   301 some test cases that test the drive mounting and dismounting related functions
       
   302 of <codeph>RFs</codeph>. </p> <p><b>Console
       
   303 application</b> </p> <p>The manual test suite is dependant upon the console
       
   304 input-output application found in the location <filepath>...\baseapitest\basesvs\Prompt\</filepath>. </p> <p>If
       
   305 the test suite is build from <filepath>...\baseapitest\basesvs\group\</filepath> then
       
   306 there is no need to build the console application separately. </p> <p>When
       
   307 the console input-output executable is built, an executable file, <filepath>t_prompt.exe</filepath>,
       
   308 will be added to the system of the device under test. This executable file
       
   309 prints the following instruction: </p> <p> <i> “After hitting a key to continue,
       
   310 eject and insert the MMC card (press F5 and release on the emulator). And
       
   311 press any key to continue...” </i>  </p> <p><b>Steps
       
   312 to run NAND tests</b> </p> <p>A few test cases (test IDs PBASE-F32-File-PublicApi-6001
       
   313 and PBASE-F32-File-PublicApi-6002) require a flash memory stick with paged
       
   314 NAND ROM. The system is started from the NAND flash and uses the flash memory
       
   315 stick as the ROM-drive. Ensure that your NAND ROM memory is paged. If any
       
   316 other type of ROM is used then the test cases will fail with <codeph>KErrNotSupported</codeph>. </p> <p>The
       
   317 NAND memory can be paged by building a ROM with <filepath>pagedrom_functional.oby</filepath> present
       
   318 in the ..<filepath>.\epoc32\rom\include\</filepath> directory as described: </p> <ol id="GUID-B058BB01-F1F2-5F1D-B843-A9C506B6C57B">
       
   319 <li id="GUID-8A362989-F5E2-5E4D-9632-C0EB69B9F84D"><p>Navigate to <filepath>...\epoc32\rom</filepath> and
       
   320 run one of the following commands: </p> <p>For automated testing using TestDriver: </p> <p><userinput>buildrom
       
   321 -D_STARTUPMODE5 -D_NAND2 -D_EABI=&lt;ARMV5/Gcce&gt; -DRVCT &lt;h4hrp/h2&gt; pagedrom_functional.oby
       
   322 techview_statapi platsec td_base</userinput> </p> <p>For manual testing: </p> <p><userinput>buildrom
       
   323 -D_STARTUPMODE5 -D_NAND2 -D_EABI=&lt;ARMV5/gcce&gt; -DRVCT &lt;h4hrp/h2&gt; pagedrom_functional.oby
       
   324 techview platsec t_base</userinput> </p> <p>This command creates two image
       
   325 files: <filepath>h4hrp_001.techview.nand.IMG</filepath> and <filepath>h4hrp_001.techview.nand.rofs.img</filepath>. </p> </li>
       
   326 <li id="GUID-0C5BD06E-BB45-5BCA-A645-D3944FE71594"><p>Rename the two image
       
   327 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>
       
   328 <li id="GUID-7B7E33CA-CCBE-5263-83CC-9B86C4555DE3"><p>To generate the nandloader,
       
   329 navigate to the <filepath>sf/os/kernelhwsrv/kernel/eka/rombuild</filepath> directory
       
   330 and run the following command: </p> <p><userinput>rom -v=h4hrp -b=urel -I=armv5
       
   331 -t=nandloader -m=_NAND2</userinput> </p> <p>Successful execution of this command
       
   332 generates the image file <filepath>H4HRP__NAND2ARMV5D.IMG</filepath>  </p> </li>
       
   333 <li id="GUID-20A7FC77-3314-57D3-995C-4CE80BE3A33C"><p>Place <filepath>H4HRP__NAND2ARMV5D.IMG</filepath> in
       
   334 a ZIP file and rename the ZIP file to <filepath>sys$rom.zip</filepath>. </p> </li>
       
   335 <li id="GUID-4BA3B423-2440-56B3-8F35-784289827F00"><p>Transfer all three files
       
   336 (<filepath>core.img</filepath>, <filepath>rofs1.img</filepath> and <filepath>sys$rom.zip</filepath>)
       
   337 to the hardware board using an MMC card or a USB cable. </p> <p>The STAT application
       
   338 should launch automatically into the <i>waiting for data</i> state when the
       
   339 board is restarted with the NAND configuration. </p> <p>If this does not occur,
       
   340 check that the NAND configuration ROM is built correctly and that you have
       
   341 configured STAT correctly. </p> </li>
       
   342 </ol> <p><b> Steps
       
   343 to run Dual Drive tests</b> </p> <p>The test cases in PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script
       
   344 are used to test the dual drive feature on the device. F32 APIs has been used
       
   345 to validate the Dual Drive feature on Hardware. </p> <p>To run Dual Drive
       
   346 tests on H4, perform the following steps: </p> <ol id="GUID-1C4E1E9D-6E82-5230-9175-907FBE3BD938">
       
   347 <li id="GUID-0BD3936B-4530-5F6E-A645-20DF4695C93F"><p>Update dual_drive_env.ini
       
   348 with the proper drive information. </p> <p>Example : DriveChar1 = E //On H4
       
   349 MMC1 is represented as E:/ drive </p> <p>DriveChar2 = F //On H4 MMC2 is represented
       
   350 as F:/ Drive </p> <p>Build the test code from location <codeph>...\baseapitest\basesvs\group\</codeph>  </p> <p> <codeph>&gt;&gt;bldmake
       
   351 bldfiles</codeph>  </p> <p> <codeph>&gt;&gt;abld test build </codeph>  </p> </li>
       
   352 <li id="GUID-CD24047E-7859-530F-AAD3-95B95DF44794"><p>Build the rom image
       
   353 with STAT </p> <p> <codeph>&gt;&gt;buildrom -DMMC_DUAL_SLOT -DUSE_SDIO_SD_MMC  
       
   354                 -DWITH_FAT32 -D_STARTUPMODE2 -D_EABI=ARMV5 -DRVCT h4hrp techview_statapi
       
   355                   platsec</codeph>  </p> <p>Executing the above command generates
       
   356 an image file by name, h4hrp_001.techview.IMG. The file <filepath>h4hrp_001.techview.IMG</filepath> needs
       
   357 to be zipped in Sys$rom.zip </p> </li>
       
   358 <li id="GUID-F306C6E8-F57B-5877-BF8C-BDB46848BCDE"><p>Boot the H4 board with
       
   359 the above image from MMC1 slot. On techview ROM the mmc drive used to boot
       
   360 the board is represented as E:/ Drive. </p> <p>Once the image is booted, “STAT
       
   361 waiting for data” appears on the screen. Now insert the other MMC card on
       
   362 to the MMC2. This drive is mapped to <codeph>F</codeph> drive. </p> <p> <b>Note</b>:
       
   363 MMC2 slot must be free while booting the image and insert it later before
       
   364 running the tests. </p> </li>
       
   365 <li id="GUID-AD35D69B-CDB1-51D8-8195-33028841B9A0"><p>Run the tests </p> <p>Now
       
   366 use testdriver to build and run the tests. </p> <p> <codeph>&gt;&gt;testdriver build
       
   367 –p armv5 –b urel –s                   base.validation.f32.f32-dualdrive</codeph>  </p> <p> <codeph>&gt;&gt;testdriver
       
   368 run –t &lt;transport&gt;</codeph>  </p> <p>where <codeph>&lt;transport&gt;</codeph> is
       
   369 serial or usb </p> </li>
       
   370 </ol> <p>To run Dual Drive tests on Phone, perform the following steps: </p> <ol id="GUID-14AC969E-89D9-5DB1-9A5D-22EFAEE47BEA">
       
   371 <li id="GUID-C980AE52-26F9-5926-8B7E-0EFEA2C31B4B"><p>Select the Phone which
       
   372 has dual drive feature supported on it. </p> </li>
       
   373 <li id="GUID-DB4B42E3-F941-5650-AAA7-1D82AC105B18"><p>Update global environment
       
   374 file before building the testcode. </p> <p>Update <filepath>dual_drive_env.ini</filepath> with
       
   375 the proper drive information. </p> <p>Example : </p> <p> <codeph>DriveChar1
       
   376 = E</codeph> //one of the dual drive on the phone </p> <p> <codeph> DriveChar2
       
   377 = F</codeph> //One of the dual drive on the phone </p> <p>Build the test code
       
   378 from location ...<filepath>\baseapitest\basesvs\group\</filepath>  </p> <p> <codeph>&gt;&gt;bldmake
       
   379 bldfiles</codeph>  </p> <p> <codeph>&gt;&gt;abld test build</codeph>  </p> </li>
       
   380 <li id="GUID-5762F4D9-04C1-5743-B59D-C1054ED5E616"><p>Create sis package using
       
   381 the package file <filepath>&lt;drive&gt;:/epoc32/pkg/dualdrive.pkg</filepath>  </p> <p> <codeph>&gt;&gt;makesis
       
   382 dualdrive.pkg dualdrive.sis </codeph>  </p> <p> <codeph>&gt;&gt;signsis -s dualdrive.sis
       
   383 dualdrive.sis test.cer                   test.key </codeph>  </p> <p> <codeph>where
       
   384 test.cer and test.key are certificate and key                   files.</codeph>  </p> </li>
       
   385 <li id="GUID-B1137195-6C28-5FFB-87AA-58E20851AC77"><p>Install the sis package
       
   386 on to the phone. </p> <p>Install the <filepath>sis</filepath> file on to the
       
   387 device using BT or USB. </p> </li>
       
   388 <li id="GUID-2E6FE1D5-45D3-5CD3-958F-0D270CCAAF17"><p>Run the tests from eshell </p> <p> <codeph>&gt;
       
   389 testexecute                   z:\base\setup-PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</codeph>  </p> <p> <codeph>&gt;
       
   390 testexecute                   z:\base\PBASE-F32-DUAL-DRIVE-Publicapi-RAM.script</codeph>  </p> </li>
       
   391 </ol> </section>
       
   392 </conbody></concept>