baseintegtests/baseintegrationtest/testsuites/fat32/scripts/btfat32.script
branchanywhere
changeset 20 d63d727ee0a6
parent 19 f6d3d9676ee4
parent 16 6d8ad5bee44b
child 21 af091391d962
equal deleted inserted replaced
19:f6d3d9676ee4 20:d63d727ee0a6
     1 //@file btfat32.script
       
     2 //! @SYMTestSuiteName PBASE-FAT32
       
     3 //! @SYMScriptTestEnvironment base
       
     4 
       
     5 LOAD_SUITE basetestfat32server
       
     6 
       
     7 START_TESTCASE                 PBASE-BPB-FATSz32-0278
       
     8 //! @SYMTestCaseID               PBASE-BPB-FATSz32-0278
       
     9 //! @SYMTestCaseDesc             Verify that the field containing the FAT32 32-bit count of sectors occupied by one FAT is zero.
       
    10 //! @SYMREQ                      REQ0000
       
    11 //! @SYMTestPriority             High
       
    12 //! @SYMTestActions              These are as follows:
       
    13 //!                              1. Calculate the 32-bit count of sectors occupied by one FAT
       
    14 //!                              2. Read the field containing the FAT32 32-bit count of sectors occupied by one FAT
       
    15 //!                              3. Compare the value calculated and the value obtained
       
    16 //! @SYMTestExpectedResults      The calclulated value and the obtained value are equal
       
    17 //! @SYMTestType                 CIT
       
    18 //! @SYMTestStatus               Implemented
       
    19 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FATSz32
       
    20 RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini BPB_FATSz32
       
    21 END_TESTCASE PBASE-BPB-FATSz32-0278
       
    22 
       
    23 
       
    24 START_TESTCASE                 PBASE-BPB-ExtFlags-0279
       
    25 //! @SYMTestCaseID               PBASE-BPB-ExtFlags-0279
       
    26 //! @SYMTestCaseDesc             Verify that the extension flags contain the correct values
       
    27 //! @SYMREQ                      REQ0000
       
    28 //! @SYMTestPriority             High
       
    29 //! @SYMTestActions              These are as follows:
       
    30 //!                              1. Format the drive and read the BPB_ExtFlags field
       
    31 //!                              2. Read Bits 4-6
       
    32 //!                              3. Read Bits 8-15
       
    33 //! @SYMTestExpectedResults      These are as follows:
       
    34 //!                              1. If bit 7 is zero, then bits 0-3 are zero. If bit 7 is 1,
       
    35 //!                              then bits 0-3 contain a zerobased number of the active FAT
       
    36 //!                              2. Bits 4-6 are reserved and are therefore zero
       
    37 //!                              3. Bits 8-15 are reserved and are therefore zero
       
    38 //! @SYMTestType                 CIT
       
    39 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_ExtFlags_1
       
    40 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_ExtFlags_1
       
    41 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_ExtFlags_4
       
    42 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_ExtFlags_6
       
    43 END_TESTCASE PBASE-BPB-ExtFlags-0279
       
    44 
       
    45 
       
    46 START_TESTCASE                 PBASE-Bit-CInShutBitMask-0280
       
    47 //! @SYMTestCaseID               PBASE-Bit-CInShutBitMask-0280
       
    48 //! @SYMTestCaseDesc             Verify the bits of the first reserved cluster FAT[0]
       
    49 //! @SYMREQ                      REQ0000
       
    50 //! @SYMTestPriority             High
       
    51 //! @SYMTestActions              Dismount the files system correctly and read the first reserved cluster bit.
       
    52 //! @SYMTestExpectedResults      1. The first reserved cluster bit, FAT[0],  is 1
       
    53 //! @SYMTestType                 CIT
       
    54 //! @SYMTestStatus               Implemented
       
    55 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini Bit_CInShutBitMask
       
    56 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini Bit_CInShutBitMask
       
    57 END_TESTCASE PBASE-Bit-CInShutBitMask-0280
       
    58 
       
    59 
       
    60 START_TESTCASE                 PBASE-Bit-CHrdErrBitMask-0281
       
    61 //! @SYMTestCaseID               PBASE-Bit-CHrdErrBitMask-0281
       
    62 //! @SYMTestCaseDesc             Verify the bits of the second reserved cluster FAT[0]
       
    63 //! @SYMREQ                      REQ0000
       
    64 //! @SYMTestPriority             High
       
    65 //! @SYMTestActions              Read the second reserved cluster, FAT[1], in the FAT table
       
    66 //! @SYMTestExpectedResults      FAT table cluster contains the EOF mark.
       
    67 //! @SYMTestType                 CIT
       
    68 //! @SYMTestStatus               Implemented
       
    69 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini Bit_CHrdErrBitMask
       
    70 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini Bit_CHrdErrBitMask
       
    71 END_TESTCASE PBASE-Bit-CHrdErrBitMask-0281
       
    72 
       
    73 
       
    74 START_TESTCASE                 PBASE-BPB-FSVer-0282
       
    75 //! @SYMTestCaseID               PBASE-BPB-FSVer-0282
       
    76 //! @SYMTestCaseDesc             Verifying that disk utilities respect the version number
       
    77 //! @SYMREQ                      REQ0000
       
    78 //! @SYMTestPriority             High
       
    79 //! @SYMTestActions              These are as follows:
       
    80 //!                              1. Read the version number.
       
    81 //!                              2. Set the major version number to a value higher that already set only in the boot sector and 
       
    82 //!									then attempt to mount the volume
       
    83 //!	 							 3. Set the major version number to a value higher that already set in both the boot sector and 
       
    84 //!									the backup boot sector and then attempt to mount the volume
       
    85 //!                              4. Set the minor version number to a value higher that already set only in the boot sector and 
       
    86 //!									then attempt to operate on volumes
       
    87 //!								 5. Set the minor version number to a value higher that already set in both the boot sector and 
       
    88 //!									the backup boot sector and then attempt to operate on volumes
       
    89 //!                              	with a higher minor version number
       
    90 //!                              6. Attempt to mount volume when it contains a version number that was defined at the time that the driver
       
    91 //!                              was written.
       
    92 //! @SYMTestExpectedResults      With respect to the actions, they are as follows:
       
    93 //!								 1. The version number is 0.0
       
    94 //!								 2. The mount is successful as the backup boot sector is used
       
    95 //!								 3. The mount is unsuccessful
       
    96 //!								 4. The mount is successful as the backup boot sector is used
       
    97 //!								 5. The mount is unsuccessful
       
    98 //!								 6. The mount is successful 
       
    99 //! @SYMTestType                 CIT
       
   100 //! @SYMTestStatus               Implemented
       
   101 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer
       
   102 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_FSVer
       
   103 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer
       
   104 RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer
       
   105 
       
   106 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer
       
   107 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer
       
   108 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_2b
       
   109 RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_2b
       
   110 
       
   111 
       
   112 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer_3
       
   113 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_3
       
   114 RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_3
       
   115 
       
   116 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer_3b
       
   117 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_3
       
   118 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_3b
       
   119 RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_3b
       
   120 
       
   121 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer_4
       
   122 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_4
       
   123 RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_4
       
   124 END_TESTCASE PBASE-BPB-FSVer-0282
       
   125 
       
   126 
       
   127 START_TESTCASE                 PBASE-BPB-RootClus-0283
       
   128 //! @SYMTestCaseID               PBASE-BPB-RootClus-0283
       
   129 //! @SYMTestCaseDesc             Verify that disk repair utilities can easily find the root directory if the root cluster field gets zeroed
       
   130 //! @SYMREQ                      REQ0000
       
   131 //! @SYMTestPriority             High
       
   132 //! @SYMTestActions              These are as follows:
       
   133 //!                              1. Read the cluster number of the first cluster
       
   134 //!                              2. Format the volume and mark cluster 2 asbad. Perform a quick format so that the bad cluster chains are kept and read the cluster number of the forst cluster.
       
   135 //!                              3. Read the value of the cluster following the cluster ,marked as bad in the FAT table.
       
   136 //! @SYMTestExpectedResults      These are as follows:
       
   137 //!                              1. The cluster number of the first cluster is 2
       
   138 //!                              2. Cluster number of the first cluster is 3.
       
   139 //!                              3. Cluster contains the EOF mark (0x0FFFFFFF)
       
   140 //! @SYMTestType                 CIT
       
   141 //! @SYMTestStatus               Implemented
       
   142 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_RootClus_1
       
   143 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_RootClus_1
       
   144 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_RootClus_2
       
   145 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_RootClus_2
       
   146 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_RootClus_2
       
   147 END_TESTCASE PBASE-BPB-RootClus-0283
       
   148 
       
   149 
       
   150 START_TESTCASE                 PBASE-BPB-FSInfo-0284
       
   151 //! @SYMTestCaseID               PBASE-BPB-FSInfo-0284
       
   152 //! @SYMTestCaseDesc             Verify that the sector number of the FSINFO structure in the reserved area of the FAT32 volume is 1
       
   153 //! @SYMREQ                      REQ0000
       
   154 //! @SYMTestPriority             High
       
   155 //! @SYMTestActions              Read the sector number of the FSINFO structure in the reserved area of the FAT32 volume
       
   156 //! @SYMTestExpectedResults      Sector number is 1
       
   157 //! @SYMTestType                 CIT
       
   158 //! @SYMTestStatus               Implemented
       
   159 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSInfo
       
   160 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_FSInfo
       
   161 END_TESTCASE PBASE-BPB-FSInfo-0284
       
   162 
       
   163 
       
   164 START_TESTCASE                 PBASE-BPB_BkBootSec-0285
       
   165 //! @SYMTestCaseID               PBASE-BPB_BkBootSec-0285
       
   166 //! @SYMTestCaseDesc             Verify that the field points to the correct sector if a back-up boot sector exists.
       
   167 //! @SYMREQ                      REQ0000
       
   168 //! @SYMTestPriority             High
       
   169 //! @SYMTestActions              These are as follows:
       
   170 //!                              1. Read the field that indicates the sector number in the reserved area of the volume of a copy of the boot record.
       
   171 //!                              2. Check to see if there is a copy of the boot record
       
   172 //! @SYMTestExpectedResults      If the value obtained in action 1 is zero then there is no copy of the boot record
       
   173 //!                              and sector 6 is zero. If the value obtained in action 1 is not zero then it is 6 and there is a copy of the boot
       
   174 //!                              record in sector 6.
       
   175 //! @SYMTestType                 CIT
       
   176 //! @SYMTestStatus               Implemented
       
   177 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_BkBootSec
       
   178 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_BkBootSec
       
   179 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_BkBootSec_i
       
   180 END_TESTCASE PBASE-BPB_BkBootSec-0285
       
   181 
       
   182 
       
   183 START_TESTCASE                 PBASE-BPB-Reserved-0286
       
   184 //! @SYMTestCaseID               PBASE-BPB-Reserved-0286
       
   185 //! @SYMTestCaseDesc             Verify that the formatting of a FAT32 volumes sets the field that is reserved for future expansion to zero.
       
   186 //! @SYMREQ                      REQ0000
       
   187 //! @SYMTestPriority             High
       
   188 //! @SYMTestActions              These are as follows:
       
   189 //!                              1. Perform a format of a FAT32 volume and read the field that is reserved for future expansion.
       
   190 //!                              2. Perform a format of a FAT32 volume and, using raw disk access,  set the field that is reserved for
       
   191 //!                              future expansion at offset 52 of the boot sector to 1. Following this check the integrity of the disk by
       
   192 //!                              calling RFs::CheckDisk().
       
   193 //! @SYMTestExpectedResults      These are as follows
       
   194 //!                              1. Field that is reserved for future expansion to is set to zero.
       
   195 //!                              2. KErrCorrupt is returned
       
   196 //! @SYMTestType                 CIT
       
   197 //! @SYMTestStatus               Implemented
       
   198 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_Reserved
       
   199 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_Reserved
       
   200 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_Reserved_2
       
   201 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini BPB_Reserved_2
       
   202 END_TESTCASE PBASE-BPB-Reserved-0286
       
   203 
       
   204 
       
   205 START_TESTCASE                 PBASE-BPB-RootEntCnt-0287
       
   206 //! @SYMTestCaseID               PBASE-BPB-RootEntCnt-0287
       
   207 //! @SYMTestCaseDesc             Verify general characteristics of a FAT data structure.
       
   208 //! @SYMREQ                      REQ0000
       
   209 //! @SYMTestPriority             High
       
   210 //! @SYMTestActions              These are as follows:
       
   211 //!                              1. Read the first data cluster and note the cluster number by formatting the disk and creating a file
       
   212 //!                              2. Read the BPB_RootEntCnt field at offset 17 of the boot sector and
       
   213 //!                              3. Set the field BPB_RootEntCnt to a value other than zero and determine the integrity of the disk by calling RFs::CheckDisk().
       
   214 //! @SYMTestExpectedResults      These are as follows
       
   215 //!                              1. Cluster number is cluster 2
       
   216 //!                              2. Value is 0
       
   217 //!                              3. KErrUnknown
       
   218 //! @SYMTestType                 CIT
       
   219 //! @SYMTestStatus               Implemented
       
   220 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_RootEntCnt_2
       
   221 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_RootEntCnt_2
       
   222 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_RootEntCnt_3
       
   223 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_RootEntCnt_3i
       
   224 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini BPB_RootEntCnt_3
       
   225 END_TESTCASE PBASE-BPB-RootEntCnt-0287
       
   226 
       
   227 
       
   228 START_TESTCASE                 PBASE-FAT32Cluster-0288
       
   229 //! @SYMTestCaseID               PBASE-FAT32Cluster-0288
       
   230 //! @SYMTestCaseDesc             Verify general cluster characteristics of a FAT32 file system
       
   231 //! @SYMREQ                      REQ0000
       
   232 //! @SYMTestPriority             High
       
   233 //! @SYMTestActions              These are as follows:
       
   234 //!                              1. Calculate the number of clusters that the FAT32 volume has
       
   235 //!                              2. On a formatted volume, mark cluster 4 as bad. Following this create a file that is three clusters long.
       
   236 //!                              Using raw disk access, read the values of clusters 3 till 6 in the FAT table.
       
   237 //! @SYMTestExpectedResults      These are as follows
       
   238 //!                              1. Cluster number is cluster 2
       
   239 //!                              2. Value is 0
       
   240 //!                              3. KErrUnknown
       
   241 //! @SYMTestType                 CIT
       
   242 //! @SYMTestStatus               Implemented
       
   243 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FAT32Cluster_1
       
   244 RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini FAT32Cluster_1
       
   245 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini FAT32Cluster_2a
       
   246 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FAT32Cluster_2a
       
   247 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini FAT32Cluster_2a
       
   248 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FAT32Cluster_2a
       
   249 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FAT32Cluster_2b
       
   250 END_TESTCASE PBASE-FAT32Cluster-0288
       
   251 
       
   252 
       
   253 START_TESTCASE                 PBASE-FSINFOSTRUC-1-0289
       
   254 //! @SYMTestCaseID               PBASE-FSINFOSTRUC-1-0289
       
   255 //! @SYMTestCaseDesc             Validate FAT32 FSInfo Sector Structure and Backup Boot Sector Parameters
       
   256 //! @SYMREQ                      REQ0000
       
   257 //! @SYMTestPriority             High
       
   258 //! @SYMTestActions              These are as follows:
       
   259 //!                              1. Read the lead signature, FSI_LeadSig at offset 0 of the FSInfo sector
       
   260 //!                              2. Read the tail signature, FSI_LeadSig at offset 0 of the FSInfo sector
       
   261 //!                              3. Read the FSI_StrucSig field at offset 484 of the FSInfo Sector,
       
   262 //!                              4. Perform the following for the field that contains the last known cluster count on the volume
       
   263 //!                              a. Read the FSI_Free_Count field at offset 488 of the FSInfo sector
       
   264 //!                              b. Write a file of 3 clusters long. Following this use raw disk access to read the FSI_Free_Count field.
       
   265 //!                              c. Set the FSI_Free_count field to 0xFFFFFFFF and check the integrity of the disk.
       
   266 //!                              d. Set the field to a value greater than the cluster count and check the integrity of the disk by calling RFs::CheckDisk();
       
   267 //!                              5. Perform the following for the field that indicates the cluster number at which the driver should start looking for a free cluster
       
   268 //!                              a. Read the FSI_Nxt_Free field at offset 492 of the FSInfo sector.
       
   269 //!                              b. Mark cluster 3 as bad with the value 0x0FFFFFF7. Perform a quick format and read the FSI_Nxt_Free field.
       
   270 //!                              c. Write a file that is 3 clusters long. Following this read the FSI_Nxt_Free field.
       
   271 //! @SYMTestExpectedResults      These are as follows
       
   272 //!                              1. Lead signature is 0x41615252
       
   273 //!                              2. Tail signature is 0xAA550000
       
   274 //!                              3. Field contains the value 0x61417272
       
   275 //!                              4. The expected results from these actions are
       
   276 //!                              a. Either contains the cluster count or the value 0xFFFFFFFF
       
   277 //!                              b. Contains the cluster count minus 3
       
   278 //!                              c. Disk is not reported as corrupt
       
   279 //!                              d. Disk is reported as corrupt
       
   280 //!                              5. The expected results for these actions are
       
   281 //!                              a. Driver starts looking at cluster 2
       
   282 //!                              b. Driver starts looking at cluster 4
       
   283 //!                              c. Driver starts looking at cluster 6
       
   284 //! @SYMTestType                 CIT
       
   285 //! @SYMTestStatus               Implemented
       
   286 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_1
       
   287 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_1
       
   288 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_2
       
   289 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_3
       
   290 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini FSINFOSTRUC_4b
       
   291 RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini FSINFOSTRUC_4b
       
   292 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_4c
       
   293 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini FSINFOSTRUC_4c
       
   294 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini FSINFOSTRUC_4c
       
   295 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_4d
       
   296 RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini FSINFOSTRUC_4d
       
   297 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini FSINFOSTRUC_4d
       
   298 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini FSINFOSTRUC_5b
       
   299 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_5b
       
   300 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_5b
       
   301 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_5c
       
   302 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini FSINFOSTRUC_5c
       
   303 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_5c
       
   304 END_TESTCASE PBASE-FSINFOSTRUC-1-0289
       
   305 
       
   306 
       
   307 START_TESTCASE                 PBASE-DIR-Name-0290
       
   308 //! @SYMTestCaseID               PBASE-DIR-Name-0290
       
   309 //! @SYMTestCaseDesc             Validate the values for the first byte of the short name field
       
   310 //! @SYMREQ                      REQ0000
       
   311 //! @SYMTestPriority             High
       
   312 //! @SYMTestActions              These are as follows:
       
   313 //!                              1. Write a file. Delete the file created and read the first byte of the sort name field.
       
   314 //!                              2. Read the first byte of the short name field of an emty entry.
       
   315 //!                              3. Write a file. Set the first byte of the short name field to a value less than 0x20 and attempt to open the file.
       
   316 //!                              4. Write a file. Set the first byte of the short name field to 0x05 and attempt to open the file.
       
   317 //!                              5. Write a file. Set the first byte of the shorname field to the values stated below and following this attempt to open the file.
       
   318 //!                              0x22, 0x2A, 0x2B, 0x2C, 0x2E, 0x2F, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x5B, 0x5C, 0x5D, 0x7C.
       
   319 //! @SYMTestExpectedResults      These are as follows
       
   320 //!                              1. The first byte of the short name field is set to 0xE5
       
   321 //!                              2. The first byte of the short name field is set to 0x00
       
   322 //!                              3. File is reported as corrupt
       
   323 //!                              4. File is opened
       
   324 //!                              5. File is reported as corrupt in all cases
       
   325 //! @SYMTestType                 CIT
       
   326 //! @SYMTestStatus               Implemented
       
   327 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_1
       
   328 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_1
       
   329 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIR_Name_1
       
   330 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIR_Name_2
       
   331 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_3
       
   332 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_3
       
   333 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_3
       
   334 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_3
       
   335 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5i
       
   336 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5i
       
   337 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5i
       
   338 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5i
       
   339 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5ii
       
   340 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5ii
       
   341 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5ii
       
   342 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5ii
       
   343 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5iii
       
   344 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5iii
       
   345 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5iii
       
   346 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5iii
       
   347 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5iv
       
   348 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5iv
       
   349 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5iv
       
   350 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5iv
       
   351 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5v
       
   352 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5v
       
   353 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5v
       
   354 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5v
       
   355 END_TESTCASE PBASE-DIR-Name-0290
       
   356 
       
   357 
       
   358 START_TESTCASE                 PBASE-DIR-Attr-0291
       
   359 //! @SYMTestCaseID               PBASE-DIR-Attr-0291
       
   360 //! @SYMTestCaseDesc             Verify the parameters for the field that specifies the attributes of the file
       
   361 //! @SYMREQ                      REQ0000
       
   362 //! @SYMTestPriority             High
       
   363 //! @SYMTestActions              These are as follows:
       
   364 //!                              1. Create a test file, set the KEntryAttReadOnly attribute to the file and attempt to write to the file.
       
   365 //!                              2. Create a test file, set the attribute KEntryAttHidden and perform a CDir listing excluding the KEntryAttHidden mask.
       
   366 //!                              3. Create a test file, set the attribute KEntryAttSyste and check that the attributes have been changed
       
   367 //!                              4. Create a test file, set the attribute KEntryAttDir and check that the attributes have been changed.
       
   368 //!                              5. Create a test directory and check the attributes of the entry.
       
   369 //!                              6. Set a file system label "X:TestLabel". Following this perform a raw read to look for the entry and read the attribute.
       
   370 //!                              7. Attempt to create another entry with ATTR_VOLUME_ID set
       
   371 //! @SYMTestExpectedResults      These are as follows
       
   372 //!                              1. Write access is denied
       
   373 //!                              2. The file does not appear in the listing
       
   374 //!                              3. Attributes of the test file have been changed
       
   375 //!                              4. Attributes of the test file are not changed
       
   376 //!                              5. The attribute is specified as ATTR_DIRECTORY.
       
   377 //!                              6. The attribute is specified as ATTR_VOLUME_ID.
       
   378 //!                              7. Permission is denied to have more than one file specified with the attribute ATTR_VOLUME_ID.
       
   379 //! @SYMTestType                 CIT
       
   380 //! @SYMTestStatus               Implemented
       
   381 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_1
       
   382 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_1
       
   383 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_2
       
   384 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_2
       
   385 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_3
       
   386 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_3
       
   387 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_4
       
   388 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_4
       
   389 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_5
       
   390 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_5
       
   391 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_6
       
   392 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_6
       
   393 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_7
       
   394 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_7
       
   395 END_TESTCASE PBASE-DIR-Attr-0291
       
   396 
       
   397 
       
   398 START_TESTCASE                 PBASE-DIRSPECIALENT-0292
       
   399 //! @SYMTestCaseID               PBASE-DIRSPECIALENT-0292
       
   400 //! @SYMTestCaseDesc             Verify that if the directory is not in the root directory, 2 special entries are created in the first two
       
   401 //!                              32-byte directory entries of the directory
       
   402 //! @SYMREQ                      REQ0000
       
   403 //! @SYMTestPriority             High
       
   404 //! @SYMTestActions              These are as follows:
       
   405 //!                              1. Perform a full format and create a directory. Using raw disk access read
       
   406 //!                              a. the first byte of the entry
       
   407 //!                              b. the 32nd byte of the entry
       
   408 //!                              2. Attempt to create a file, using RFile::Write() with the following names
       
   409 //!                              a. "."
       
   410 //!                              b. ".."
       
   411 //! @SYMTestExpectedResults      These are as follows
       
   412 //!                              1. Two special entries are created in the first two 32-byte directory entries of the directory
       
   413 //!                              a. First directory has the name set to "."
       
   414 //!                              b. Second directory has the name set to ".."
       
   415 //!                              2.
       
   416 //!                              a. File cannot be created, KErrBadName is returned
       
   417 //!                              b. File cannot be created, KErrBadName is returned
       
   418 //! @SYMTestType                 CIT
       
   419 //! @SYMTestStatus               Implemented
       
   420 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIRSPECIALENT_1
       
   421 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIRSPECIALENT_1
       
   422 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIRSPECIALENT_1a
       
   423 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIRSPECIALENT_1b
       
   424 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIRSPECIALENT_2a
       
   425 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIRSPECIALENT_2b
       
   426 END_TESTCASE PBASE-DIRSPECIALENT-0292
       
   427 
       
   428 
       
   429 START_TESTCASE                 PBASE-DIR-Date-0293
       
   430 //! @SYMTestCaseID               PBASE-DIR-Date-0293
       
   431 //! @SYMTestCaseDesc             Validating the date format
       
   432 //! @SYMREQ                      REQ0000
       
   433 //! @SYMTestPriority             High
       
   434 //! @SYMTestActions              Create a file and using raw disk access, change the created date field and the modified date
       
   435 //!                              field in the entry various correct and incorrectvalues. Following this call the function RFs::Modified().
       
   436 //! @SYMTestExpectedResults      These are as follows
       
   437 //!                              a. All correct values return the date written to the disk
       
   438 //!                              b. All incorrect values return the default vlaue 01/01/0000
       
   439 //! @SYMTestType                 CIT
       
   440 //! @SYMTestStatus               Implemented
       
   441 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   442 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   443 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1ai
       
   444 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1aii
       
   445 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_1aii
       
   446 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   447 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   448 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1bi
       
   449 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1bii
       
   450 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_1bii
       
   451 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   452 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   453 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1ci
       
   454 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1cii
       
   455 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_1cii
       
   456 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   457 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   458 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2ai
       
   459 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2aii
       
   460 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2aii
       
   461 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   462 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   463 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2bi
       
   464 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2bii
       
   465 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2bii
       
   466 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   467 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   468 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2ci
       
   469 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2cii
       
   470 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2cii
       
   471 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   472 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   473 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2di
       
   474 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2dii
       
   475 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2dii
       
   476 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   477 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   478 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3ai
       
   479 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3aii
       
   480 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_3aii
       
   481 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
       
   482 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
       
   483 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3bi
       
   484 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3bii
       
   485 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_3bii
       
   486 END_TESTCASE PBASE-DIR-Date-0293
       
   487 
       
   488 
       
   489 START_TESTCASE                 PBASE-DIR-Time-0294
       
   490 //! @SYMTestCaseID               PBASE-DIR-Time-0294
       
   491 //! @SYMTestCaseDesc             Validating the time format
       
   492 //! @SYMREQ                      REQ0000
       
   493 //! @SYMTestPriority             High
       
   494 //! @SYMTestActions              Create a file and using raw disk access, change the created time field and the modified time
       
   495 //!                              field in the entry various correct and incorrectvalues. Following this call the function RFs::Modified().
       
   496 //! @SYMTestExpectedResults      These are as follows
       
   497 //!                              a. All correct values return the time written to the disk
       
   498 //!                              b. All incorrect values return the default vlaue 00:00:00
       
   499 //! @SYMTestType                 CIT
       
   500 //! @SYMTestStatus               Implemented
       
   501 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   502 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   503 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1ai
       
   504 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1aii
       
   505 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_1aii
       
   506 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   507 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   508 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1bi
       
   509 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1bii
       
   510 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_1bii
       
   511 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   512 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   513 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1ci
       
   514 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1cii
       
   515 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_1cii
       
   516 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   517 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   518 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2ai
       
   519 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2aii
       
   520 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_2aii
       
   521 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   522 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   523 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2bi
       
   524 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2bii
       
   525 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_2bii
       
   526 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   527 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   528 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2ci
       
   529 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2cii
       
   530 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_2cii
       
   531 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   532 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   533 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3ai
       
   534 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3aii
       
   535 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_3aii
       
   536 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   537 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   538 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bi
       
   539 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bii
       
   540 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_3bii
       
   541 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
       
   542 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
       
   543 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bi
       
   544 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bii
       
   545 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_3bii
       
   546 END_TESTCASE PBASE-DIR-Time-0294
       
   547 
       
   548 
       
   549 START_TESTCASE                 PBASE-LDIR-0295
       
   550 //! @SYMTestCaseID               PBASE-LDIR-0295
       
   551 //! @SYMTestCaseDesc             Validate values for the long name field.
       
   552 //! @SYMREQ                      REQ0000
       
   553 //! @SYMTestPriority             High
       
   554 //! @SYMTestActions              These are as follows:
       
   555 //!                              1. Create a file that takes up 3 long directory entries. Read the first byte of the last long directory name.
       
   556 //!                              2. Create a file that taked up 2 long directory entries. Delete the file and Read the fist byte of each long entry
       
   557 //!                              3. Create a file that takes up 6long directory entries. Read the first byte of the last long entry and the first byte of the first
       
   558 //!                              long entry to check the range.
       
   559 //!                              4. Create a file and read the attributes of the long directory entry at position 11 of the entry
       
   560 //!                              5. Create a file and perform the following
       
   561 //!                              a) Read the field LDIR_FstClusLO at position 26 of the long directory entry
       
   562 //!                              b) Use raw disk access to write a value other than zero to the LDIR_FstClusLO field and
       
   563 //!                              following this check the integrity of the disk by calling RFs::CheckDisk().
       
   564 //! @SYMTestExpectedResults      These are as follows
       
   565 //!                              1. The value is masked witih 0x40 and is therefore 0x43
       
   566 //!                              2. The first byte of each long entry is set to 0xE5
       
   567 //!                              3. The first byte of the last long entry is 0x46 and the first byte of the first long entry is 0x01, indicating that the range is 1-6
       
   568 //!                              4. The attribute is set to ATTR_LONG_NAME (0x0F)
       
   569 //!                              5. The following is expected form the actions
       
   570 //!                              a. Value is 0x00
       
   571 //!                              b. Disk errors are reported
       
   572 //! @SYMTestType                 CIT
       
   573 //! @SYMTestStatus               Implemented
       
   574 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_1
       
   575 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_1
       
   576 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_1
       
   577 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_2a
       
   578 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_2a
       
   579 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2a
       
   580 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2ai
       
   581 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_2b
       
   582 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_2b
       
   583 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2b
       
   584 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2bi
       
   585 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_3
       
   586 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_3
       
   587 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_3
       
   588 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_3i
       
   589 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_4
       
   590 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_4
       
   591 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_4
       
   592 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_5
       
   593 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_5
       
   594 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_5
       
   595 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini LDIR_5i
       
   596 RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini LDIR_5i
       
   597 END_TESTCASE PBASE-LDIR-0295
       
   598 
       
   599 
       
   600 START_TESTCASE                 PBASE-HighFourRes-0296
       
   601 //! @SYMTestCaseID               PBASE-HighFourRes-0296
       
   602 //! @SYMTestCaseDesc             Ensuring that the first 4 bytes from offset 36 cannot be any value other than zero
       
   603 //! @SYMREQ                      REQ0000
       
   604 //! @SYMTestPriority             High
       
   605 //! @SYMTestActions              Format the volume and using raw disk access change the third cluster value in the FAT table to 0xFFFFFFFF.
       
   606 //!                              Following this perform a quick format and using raw disk access, read the third cluster value.
       
   607 //! @SYMTestExpectedResults      Third cluster contains the value 0x0FFFFFFF
       
   608 //! @SYMTestType                 CIT
       
   609 //! @SYMTestStatus               Implemented
       
   610 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini HighFourRes_a
       
   611 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini HighFourRes_a
       
   612 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini HighFourRes_a
       
   613 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini HighFourRes_b
       
   614 RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini HighFourRes_b
       
   615 END_TESTCASE PBASE-HighFourRes-0296
       
   616 
       
   617 
       
   618 START_TESTCASE                 PBASE-CorruptFatTable-0297
       
   619 //! @SYMTestCaseID               PBASE-CorruptFatTable-0297
       
   620 //! @SYMTestCaseDesc             Purposely corrupting file systems to ensure they are handled gracefully
       
   621 //! @SYMREQ                      REQ0000
       
   622 //! @SYMTestPriority             High
       
   623 //! @SYMTestActions              These are as follows:
       
   624 //!                              1. Purposely producing an incomplete FAT table and determine the integrity of the disk
       
   625 //!                              2. Introducing 'garbage' material into the fat table and calling RFs::Checkdisk to determine the integrity of the disk
       
   626 //!                              3. Purposely allowing the FAT table to point to positions that do not exist and  determine the integrity of the disk
       
   627 //!                              4. Marking blocks that are bad as good without performing a full low-level scan of the media and  determine the integrity of the disk
       
   628 //! @SYMTestExpectedResults      The disk is reported as corrupt in all cases
       
   629 //! @SYMTestType                 CIT
       
   630 //! @SYMTestStatus               Implemented
       
   631 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_1i
       
   632 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_1i
       
   633 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_1ii
       
   634 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_1ii
       
   635 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_2i
       
   636 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_2i
       
   637 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_2ii
       
   638 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_2iii
       
   639 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_2iii
       
   640 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_3i
       
   641 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_3i
       
   642 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_3ii
       
   643 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_3ii
       
   644 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_4i
       
   645 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_4i
       
   646 RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_4ii
       
   647 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_4ii
       
   648 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_4iii
       
   649 END_TESTCASE PBASE-CorruptFatTable-0297
       
   650 
       
   651 START_TESTCASE                 PBASE-BadMedia-0298
       
   652 //! @SYMTestCaseID               PBASE-BadMedia-0298
       
   653 //! @SYMTestCaseDesc             Using unreadable or unusable media to ensure they are handled gracefully
       
   654 //! @SYMREQ                      REQ0000
       
   655 //! @SYMTestPriority             High
       
   656 //! @SYMTestActions              Attempting to mount a file system on unreadable media
       
   657 //! @SYMTestExpectedResults      The media is reported as unkown
       
   658 //! @SYMTestType                 CIT
       
   659 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BadMedia
       
   660 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BadMedia
       
   661 RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BadMedia_i
       
   662 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini BadMedia
       
   663 RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BadMedia
       
   664 END_TESTCASE PBASE-BadMedia-0298
       
   665 
       
   666 
       
   667 START_TESTCASE                 PBASE-Larger512-0299
       
   668 //! @SYMTestCaseID               PBASE-Larger512-0299
       
   669 //! @SYMTestCaseDesc             Ensuring FAT32 is only used when necessary
       
   670 //! @SYMREQ                      REQ0000
       
   671 //! @SYMTestPriority             High
       
   672 //! @SYMTestActions              Mounting the file system on various size media
       
   673 //! @SYMTestExpectedResults      The media is reported as unkown
       
   674 //! @SYMTestType                 CIT
       
   675 //! @SYMTestStatus               Implemented
       
   676 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini Larger512
       
   677 RUN_TEST_STEP -1 basetestfat32server Larger512 \basetest\basetestfat32config.ini Larger512
       
   678 END_TESTCASE PBASE-Larger512-0299
       
   679 
       
   680 
       
   681 START_TESTCASE                 PBASE-FillDisk-0300
       
   682 //! @SYMTestCaseID               PBASE-FillDisk-0300
       
   683 //! @SYMTestCaseDesc             Ensuring that the disk can be filled to its maximum capacity
       
   684 //! @SYMREQ                      REQ0000
       
   685 //! @SYMTestPriority             High
       
   686 //! @SYMTestActions              Perform the following actions on FAT32 media
       
   687 //!                              a. Filling the drive with one big file
       
   688 //!                              b. Check the size of the file
       
   689 //! @SYMTestExpectedResults      These are as follows:
       
   690 //!                              a. The disk is full
       
   691 //!                              b. Size of the file is equal to the free space available on the disk before it has been filled
       
   692 //! @SYMTestType                 CIT
       
   693 //! @SYMTestStatus               Implemented
       
   694 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FillDisk
       
   695 RUN_TEST_STEP -1 basetestfat32server FillDisk \basetest\basetestfat32config.ini FillDisk
       
   696 RUN_TEST_STEP -1 basetestfat32server ClusterBound \basetest\basetestfat32config.ini ClusterBound_1
       
   697 END_TESTCASE PBASE-FillDisk-0300
       
   698 
       
   699 
       
   700 START_TESTCASE                 PBASE-ClusterBound-0301
       
   701 //! @SYMTestCaseID               PBASE-ClusterBound-0301
       
   702 //! @SYMTestCaseDesc             Testing the cluster boundary values
       
   703 //! @SYMREQ                      REQ0000
       
   704 //! @SYMTestPriority             High
       
   705 //! @SYMTestActions              Perform the following actions on FAT32 media
       
   706 //!                              1. Create one big file to fill the disk. Following this, create another file and attempt to write to this new file.
       
   707 //!                              2. Create one big file to fill the disk then fill the root directory by creating many empty files. Following this attempt to create another file.
       
   708 //! @SYMTestExpectedResults      The disk is full
       
   709 //! @SYMTestType                 CIT
       
   710 //! @SYMTestStatus               Implemented
       
   711 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FillDisk
       
   712 RUN_TEST_STEP -1 basetestfat32server FillDisk \basetest\basetestfat32config.ini FillDisk
       
   713 RUN_TEST_STEP -1 basetestfat32server ClusterBound \basetest\basetestfat32config.ini ClusterBound_1
       
   714 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FillDisk
       
   715 RUN_TEST_STEP -1 basetestfat32server FillDisk \basetest\basetestfat32config.ini FillDisk
       
   716 RUN_TEST_STEP -1 basetestfat32server ClusterBound \basetest\basetestfat32config.ini ClusterBound_2
       
   717 END_TESTCASE PBASE-ClusterBound-0301
       
   718 
       
   719 
       
   720 START_TESTCASE                 PBASE-RemoveMedia-0302
       
   721 //! @SYMTestCaseID               PBASE-RemoveMedia-0302
       
   722 //! @SYMTestCaseDesc             Sudden removal of removable media cards
       
   723 //! @SYMREQ                      REQ0000
       
   724 //! @SYMTestPriority             High
       
   725 //! @SYMTestActions              Perform the following actions on FAT32 media
       
   726 //!                              1. Simulating the removal of a media card whilst operations are taking place
       
   727 //! @SYMTestExpectedResults      The disk should not be corrupt
       
   728 //! @SYMTestType                 CIT
       
   729 //! @SYMTestStatus               Implemented
       
   730 RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini RemoveMedia
       
   731 Print DURING THIS TEST PLEASE REMOVE THE CARD
       
   732 RUN_TEST_STEP -1 basetestfat32server ReadWrite \basetest\basetestfat32config.ini RemoveMedia
       
   733 Print PLEASE INSERT THE CARD
       
   734 DELAY 3000
       
   735 RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini RemoveMedia
       
   736 END_TESTCASE PBASE-RemoveMedia-0302
       
   737 
       
   738