Convert Kernelhwsrv package from SFL to EPL
kernel\eka\compsupp is subject to the ARM EABI LICENSE
userlibandfileserver\fatfilenameconversionplugins\unicodeTables is subject to the Unicode license
kernel\eka\kernel\zlib is subject to the zlib license
//@file btfat32.script
//! @SYMTestSuiteName PBASE-FAT32
//! @SYMScriptTestEnvironment base
LOAD_SUITE basetestfat32server
START_TESTCASE PBASE-BPB-FATSz32-0278
//! @SYMTestCaseID PBASE-BPB-FATSz32-0278
//! @SYMTestCaseDesc Verify that the field containing the FAT32 32-bit count of sectors occupied by one FAT is zero.
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Calculate the 32-bit count of sectors occupied by one FAT
//! 2. Read the field containing the FAT32 32-bit count of sectors occupied by one FAT
//! 3. Compare the value calculated and the value obtained
//! @SYMTestExpectedResults The calclulated value and the obtained value are equal
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FATSz32
RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini BPB_FATSz32
END_TESTCASE PBASE-BPB-FATSz32-0278
START_TESTCASE PBASE-BPB-ExtFlags-0279
//! @SYMTestCaseID PBASE-BPB-ExtFlags-0279
//! @SYMTestCaseDesc Verify that the extension flags contain the correct values
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Format the drive and read the BPB_ExtFlags field
//! 2. Read Bits 4-6
//! 3. Read Bits 8-15
//! @SYMTestExpectedResults These are as follows:
//! 1. If bit 7 is zero, then bits 0-3 are zero. If bit 7 is 1,
//! then bits 0-3 contain a zerobased number of the active FAT
//! 2. Bits 4-6 are reserved and are therefore zero
//! 3. Bits 8-15 are reserved and are therefore zero
//! @SYMTestType CIT
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_ExtFlags_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_ExtFlags_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_ExtFlags_4
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_ExtFlags_6
END_TESTCASE PBASE-BPB-ExtFlags-0279
START_TESTCASE PBASE-Bit-CInShutBitMask-0280
//! @SYMTestCaseID PBASE-Bit-CInShutBitMask-0280
//! @SYMTestCaseDesc Verify the bits of the first reserved cluster FAT[0]
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Dismount the files system correctly and read the first reserved cluster bit.
//! @SYMTestExpectedResults 1. The first reserved cluster bit, FAT[0], is 1
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini Bit_CInShutBitMask
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini Bit_CInShutBitMask
END_TESTCASE PBASE-Bit-CInShutBitMask-0280
START_TESTCASE PBASE-Bit-CHrdErrBitMask-0281
//! @SYMTestCaseID PBASE-Bit-CHrdErrBitMask-0281
//! @SYMTestCaseDesc Verify the bits of the second reserved cluster FAT[0]
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Read the second reserved cluster, FAT[1], in the FAT table
//! @SYMTestExpectedResults FAT table cluster contains the EOF mark.
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini Bit_CHrdErrBitMask
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini Bit_CHrdErrBitMask
END_TESTCASE PBASE-Bit-CHrdErrBitMask-0281
START_TESTCASE PBASE-BPB-FSVer-0282
//! @SYMTestCaseID PBASE-BPB-FSVer-0282
//! @SYMTestCaseDesc Verifying that disk utilities respect the version number
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Read the version number.
//! 2. Set the major version number to a value higher that already set only in the boot sector and
//! then attempt to mount the volume
//! 3. Set the major version number to a value higher that already set in both the boot sector and
//! the backup boot sector and then attempt to mount the volume
//! 4. Set the minor version number to a value higher that already set only in the boot sector and
//! then attempt to operate on volumes
//! 5. Set the minor version number to a value higher that already set in both the boot sector and
//! the backup boot sector and then attempt to operate on volumes
//! with a higher minor version number
//! 6. Attempt to mount volume when it contains a version number that was defined at the time that the driver
//! was written.
//! @SYMTestExpectedResults With respect to the actions, they are as follows:
//! 1. The version number is 0.0
//! 2. The mount is successful as the backup boot sector is used
//! 3. The mount is unsuccessful
//! 4. The mount is successful as the backup boot sector is used
//! 5. The mount is unsuccessful
//! 6. The mount is successful
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_FSVer
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer
RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_2b
RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_2b
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer_3
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_3
RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_3
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer_3b
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_3
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_3b
RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_3b
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSVer_4
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_FSVer_4
RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BPB_FSVer_4
END_TESTCASE PBASE-BPB-FSVer-0282
START_TESTCASE PBASE-BPB-RootClus-0283
//! @SYMTestCaseID PBASE-BPB-RootClus-0283
//! @SYMTestCaseDesc Verify that disk repair utilities can easily find the root directory if the root cluster field gets zeroed
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Read the cluster number of the first cluster
//! 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.
//! 3. Read the value of the cluster following the cluster ,marked as bad in the FAT table.
//! @SYMTestExpectedResults These are as follows:
//! 1. The cluster number of the first cluster is 2
//! 2. Cluster number of the first cluster is 3.
//! 3. Cluster contains the EOF mark (0x0FFFFFFF)
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_RootClus_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_RootClus_1
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_RootClus_2
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_RootClus_2
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_RootClus_2
END_TESTCASE PBASE-BPB-RootClus-0283
START_TESTCASE PBASE-BPB-FSInfo-0284
//! @SYMTestCaseID PBASE-BPB-FSInfo-0284
//! @SYMTestCaseDesc Verify that the sector number of the FSINFO structure in the reserved area of the FAT32 volume is 1
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Read the sector number of the FSINFO structure in the reserved area of the FAT32 volume
//! @SYMTestExpectedResults Sector number is 1
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_FSInfo
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_FSInfo
END_TESTCASE PBASE-BPB-FSInfo-0284
START_TESTCASE PBASE-BPB_BkBootSec-0285
//! @SYMTestCaseID PBASE-BPB_BkBootSec-0285
//! @SYMTestCaseDesc Verify that the field points to the correct sector if a back-up boot sector exists.
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Read the field that indicates the sector number in the reserved area of the volume of a copy of the boot record.
//! 2. Check to see if there is a copy of the boot record
//! @SYMTestExpectedResults If the value obtained in action 1 is zero then there is no copy of the boot record
//! 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
//! record in sector 6.
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_BkBootSec
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_BkBootSec
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_BkBootSec_i
END_TESTCASE PBASE-BPB_BkBootSec-0285
START_TESTCASE PBASE-BPB-Reserved-0286
//! @SYMTestCaseID PBASE-BPB-Reserved-0286
//! @SYMTestCaseDesc Verify that the formatting of a FAT32 volumes sets the field that is reserved for future expansion to zero.
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Perform a format of a FAT32 volume and read the field that is reserved for future expansion.
//! 2. Perform a format of a FAT32 volume and, using raw disk access, set the field that is reserved for
//! future expansion at offset 52 of the boot sector to 1. Following this check the integrity of the disk by
//! calling RFs::CheckDisk().
//! @SYMTestExpectedResults These are as follows
//! 1. Field that is reserved for future expansion to is set to zero.
//! 2. KErrCorrupt is returned
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_Reserved
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_Reserved
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_Reserved_2
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini BPB_Reserved_2
END_TESTCASE PBASE-BPB-Reserved-0286
START_TESTCASE PBASE-BPB-RootEntCnt-0287
//! @SYMTestCaseID PBASE-BPB-RootEntCnt-0287
//! @SYMTestCaseDesc Verify general characteristics of a FAT data structure.
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Read the first data cluster and note the cluster number by formatting the disk and creating a file
//! 2. Read the BPB_RootEntCnt field at offset 17 of the boot sector and
//! 3. Set the field BPB_RootEntCnt to a value other than zero and determine the integrity of the disk by calling RFs::CheckDisk().
//! @SYMTestExpectedResults These are as follows
//! 1. Cluster number is cluster 2
//! 2. Value is 0
//! 3. KErrUnknown
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BPB_RootEntCnt_2
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini BPB_RootEntCnt_2
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_RootEntCnt_3
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BPB_RootEntCnt_3i
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini BPB_RootEntCnt_3
END_TESTCASE PBASE-BPB-RootEntCnt-0287
START_TESTCASE PBASE-FAT32Cluster-0288
//! @SYMTestCaseID PBASE-FAT32Cluster-0288
//! @SYMTestCaseDesc Verify general cluster characteristics of a FAT32 file system
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Calculate the number of clusters that the FAT32 volume has
//! 2. On a formatted volume, mark cluster 4 as bad. Following this create a file that is three clusters long.
//! Using raw disk access, read the values of clusters 3 till 6 in the FAT table.
//! @SYMTestExpectedResults These are as follows
//! 1. Cluster number is cluster 2
//! 2. Value is 0
//! 3. KErrUnknown
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FAT32Cluster_1
RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini FAT32Cluster_1
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini FAT32Cluster_2a
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FAT32Cluster_2a
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini FAT32Cluster_2a
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FAT32Cluster_2a
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FAT32Cluster_2b
END_TESTCASE PBASE-FAT32Cluster-0288
START_TESTCASE PBASE-FSINFOSTRUC-1-0289
//! @SYMTestCaseID PBASE-FSINFOSTRUC-1-0289
//! @SYMTestCaseDesc Validate FAT32 FSInfo Sector Structure and Backup Boot Sector Parameters
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Read the lead signature, FSI_LeadSig at offset 0 of the FSInfo sector
//! 2. Read the tail signature, FSI_LeadSig at offset 0 of the FSInfo sector
//! 3. Read the FSI_StrucSig field at offset 484 of the FSInfo Sector,
//! 4. Perform the following for the field that contains the last known cluster count on the volume
//! a. Read the FSI_Free_Count field at offset 488 of the FSInfo sector
//! b. Write a file of 3 clusters long. Following this use raw disk access to read the FSI_Free_Count field.
//! c. Set the FSI_Free_count field to 0xFFFFFFFF and check the integrity of the disk.
//! d. Set the field to a value greater than the cluster count and check the integrity of the disk by calling RFs::CheckDisk();
//! 5. Perform the following for the field that indicates the cluster number at which the driver should start looking for a free cluster
//! a. Read the FSI_Nxt_Free field at offset 492 of the FSInfo sector.
//! b. Mark cluster 3 as bad with the value 0x0FFFFFF7. Perform a quick format and read the FSI_Nxt_Free field.
//! c. Write a file that is 3 clusters long. Following this read the FSI_Nxt_Free field.
//! @SYMTestExpectedResults These are as follows
//! 1. Lead signature is 0x41615252
//! 2. Tail signature is 0xAA550000
//! 3. Field contains the value 0x61417272
//! 4. The expected results from these actions are
//! a. Either contains the cluster count or the value 0xFFFFFFFF
//! b. Contains the cluster count minus 3
//! c. Disk is not reported as corrupt
//! d. Disk is reported as corrupt
//! 5. The expected results for these actions are
//! a. Driver starts looking at cluster 2
//! b. Driver starts looking at cluster 4
//! c. Driver starts looking at cluster 6
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_2
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_3
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini FSINFOSTRUC_4b
RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini FSINFOSTRUC_4b
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_4c
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini FSINFOSTRUC_4c
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini FSINFOSTRUC_4c
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_4d
RUN_TEST_STEP -1 basetestfat32server Calculate \basetest\basetestfat32config.ini FSINFOSTRUC_4d
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini FSINFOSTRUC_4d
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini FSINFOSTRUC_5b
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_5b
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_5b
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FSINFOSTRUC_5c
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini FSINFOSTRUC_5c
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini FSINFOSTRUC_5c
END_TESTCASE PBASE-FSINFOSTRUC-1-0289
START_TESTCASE PBASE-DIR-Name-0290
//! @SYMTestCaseID PBASE-DIR-Name-0290
//! @SYMTestCaseDesc Validate the values for the first byte of the short name field
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Write a file. Delete the file created and read the first byte of the sort name field.
//! 2. Read the first byte of the short name field of an emty entry.
//! 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.
//! 4. Write a file. Set the first byte of the short name field to 0x05 and attempt to open the file.
//! 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.
//! 0x22, 0x2A, 0x2B, 0x2C, 0x2E, 0x2F, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x5B, 0x5C, 0x5D, 0x7C.
//! @SYMTestExpectedResults These are as follows
//! 1. The first byte of the short name field is set to 0xE5
//! 2. The first byte of the short name field is set to 0x00
//! 3. File is reported as corrupt
//! 4. File is opened
//! 5. File is reported as corrupt in all cases
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_1
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIR_Name_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIR_Name_2
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_3
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_3
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_3
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_3
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5i
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5i
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5i
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5i
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5ii
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5ii
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5ii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5ii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5iii
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5iii
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5iii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5iii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5iv
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5iv
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5iv
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5iv
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Name_5v
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Name_5v
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Name_5v
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Name_5v
END_TESTCASE PBASE-DIR-Name-0290
START_TESTCASE PBASE-DIR-Attr-0291
//! @SYMTestCaseID PBASE-DIR-Attr-0291
//! @SYMTestCaseDesc Verify the parameters for the field that specifies the attributes of the file
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Create a test file, set the KEntryAttReadOnly attribute to the file and attempt to write to the file.
//! 2. Create a test file, set the attribute KEntryAttHidden and perform a CDir listing excluding the KEntryAttHidden mask.
//! 3. Create a test file, set the attribute KEntryAttSyste and check that the attributes have been changed
//! 4. Create a test file, set the attribute KEntryAttDir and check that the attributes have been changed.
//! 5. Create a test directory and check the attributes of the entry.
//! 6. Set a file system label "X:TestLabel". Following this perform a raw read to look for the entry and read the attribute.
//! 7. Attempt to create another entry with ATTR_VOLUME_ID set
//! @SYMTestExpectedResults These are as follows
//! 1. Write access is denied
//! 2. The file does not appear in the listing
//! 3. Attributes of the test file have been changed
//! 4. Attributes of the test file are not changed
//! 5. The attribute is specified as ATTR_DIRECTORY.
//! 6. The attribute is specified as ATTR_VOLUME_ID.
//! 7. Permission is denied to have more than one file specified with the attribute ATTR_VOLUME_ID.
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_1
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_1
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_2
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_2
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_3
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_3
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_4
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_4
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_5
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_5
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_6
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_6
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Attr_7
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Attr_7
END_TESTCASE PBASE-DIR-Attr-0291
START_TESTCASE PBASE-DIRSPECIALENT-0292
//! @SYMTestCaseID PBASE-DIRSPECIALENT-0292
//! @SYMTestCaseDesc Verify that if the directory is not in the root directory, 2 special entries are created in the first two
//! 32-byte directory entries of the directory
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Perform a full format and create a directory. Using raw disk access read
//! a. the first byte of the entry
//! b. the 32nd byte of the entry
//! 2. Attempt to create a file, using RFile::Write() with the following names
//! a. "."
//! b. ".."
//! @SYMTestExpectedResults These are as follows
//! 1. Two special entries are created in the first two 32-byte directory entries of the directory
//! a. First directory has the name set to "."
//! b. Second directory has the name set to ".."
//! 2.
//! a. File cannot be created, KErrBadName is returned
//! b. File cannot be created, KErrBadName is returned
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIRSPECIALENT_1
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIRSPECIALENT_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIRSPECIALENT_1a
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini DIRSPECIALENT_1b
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIRSPECIALENT_2a
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIRSPECIALENT_2b
END_TESTCASE PBASE-DIRSPECIALENT-0292
START_TESTCASE PBASE-DIR-Date-0293
//! @SYMTestCaseID PBASE-DIR-Date-0293
//! @SYMTestCaseDesc Validating the date format
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Create a file and using raw disk access, change the created date field and the modified date
//! field in the entry various correct and incorrectvalues. Following this call the function RFs::Modified().
//! @SYMTestExpectedResults These are as follows
//! a. All correct values return the date written to the disk
//! b. All incorrect values return the default vlaue 01/01/0000
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1ai
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1aii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_1aii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1bi
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1bii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_1bii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1ci
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_1cii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_1cii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2ai
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2aii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2aii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2bi
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2bii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2bii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2ci
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2cii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2cii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2di
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_2dii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_2dii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3ai
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3aii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_3aii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Date
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3bi
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Date_3bii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Date_3bii
END_TESTCASE PBASE-DIR-Date-0293
START_TESTCASE PBASE-DIR-Time-0294
//! @SYMTestCaseID PBASE-DIR-Time-0294
//! @SYMTestCaseDesc Validating the time format
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Create a file and using raw disk access, change the created time field and the modified time
//! field in the entry various correct and incorrectvalues. Following this call the function RFs::Modified().
//! @SYMTestExpectedResults These are as follows
//! a. All correct values return the time written to the disk
//! b. All incorrect values return the default vlaue 00:00:00
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1ai
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1aii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_1aii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1bi
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1bii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_1bii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1ci
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_1cii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_1cii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2ai
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2aii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_2aii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2bi
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2bii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_2bii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2ci
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_2cii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_2cii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3ai
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3aii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_3aii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bi
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_3bii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini DIR_Time
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bi
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini DIR_Time_3bii
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini DIR_Time_3bii
END_TESTCASE PBASE-DIR-Time-0294
START_TESTCASE PBASE-LDIR-0295
//! @SYMTestCaseID PBASE-LDIR-0295
//! @SYMTestCaseDesc Validate values for the long name field.
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Create a file that takes up 3 long directory entries. Read the first byte of the last long directory name.
//! 2. Create a file that taked up 2 long directory entries. Delete the file and Read the fist byte of each long entry
//! 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
//! long entry to check the range.
//! 4. Create a file and read the attributes of the long directory entry at position 11 of the entry
//! 5. Create a file and perform the following
//! a) Read the field LDIR_FstClusLO at position 26 of the long directory entry
//! b) Use raw disk access to write a value other than zero to the LDIR_FstClusLO field and
//! following this check the integrity of the disk by calling RFs::CheckDisk().
//! @SYMTestExpectedResults These are as follows
//! 1. The value is masked witih 0x40 and is therefore 0x43
//! 2. The first byte of each long entry is set to 0xE5
//! 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
//! 4. The attribute is set to ATTR_LONG_NAME (0x0F)
//! 5. The following is expected form the actions
//! a. Value is 0x00
//! b. Disk errors are reported
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_1
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_1
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_1
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_2a
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_2a
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2a
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2ai
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_2b
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_2b
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2b
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_2bi
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_3
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_3
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_3
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_3i
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_4
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_4
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_4
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini LDIR_5
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini LDIR_5
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini LDIR_5
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini LDIR_5i
RUN_TEST_STEP -1 basetestfat32server ReadFile \basetest\basetestfat32config.ini LDIR_5i
END_TESTCASE PBASE-LDIR-0295
START_TESTCASE PBASE-HighFourRes-0296
//! @SYMTestCaseID PBASE-HighFourRes-0296
//! @SYMTestCaseDesc Ensuring that the first 4 bytes from offset 36 cannot be any value other than zero
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Format the volume and using raw disk access change the third cluster value in the FAT table to 0xFFFFFFFF.
//! Following this perform a quick format and using raw disk access, read the third cluster value.
//! @SYMTestExpectedResults Third cluster contains the value 0x0FFFFFFF
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini HighFourRes_a
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini HighFourRes_a
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini HighFourRes_a
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini HighFourRes_b
RUN_TEST_STEP -1 basetestfat32server ReadRaw \basetest\basetestfat32config.ini HighFourRes_b
END_TESTCASE PBASE-HighFourRes-0296
START_TESTCASE PBASE-CorruptFatTable-0297
//! @SYMTestCaseID PBASE-CorruptFatTable-0297
//! @SYMTestCaseDesc Purposely corrupting file systems to ensure they are handled gracefully
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions These are as follows:
//! 1. Purposely producing an incomplete FAT table and determine the integrity of the disk
//! 2. Introducing 'garbage' material into the fat table and calling RFs::Checkdisk to determine the integrity of the disk
//! 3. Purposely allowing the FAT table to point to positions that do not exist and determine the integrity of the disk
//! 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
//! @SYMTestExpectedResults The disk is reported as corrupt in all cases
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_1i
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_1i
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_1ii
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_1ii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_2i
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_2i
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_2ii
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_2iii
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_2iii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_3i
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_3i
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_3ii
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_3ii
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini CorruptFatTable_4i
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_4i
RUN_TEST_STEP -1 basetestfat32server WriteFile \basetest\basetestfat32config.ini CorruptFatTable_4ii
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini CorruptFatTable_4ii
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini CorruptFatTable_4iii
END_TESTCASE PBASE-CorruptFatTable-0297
START_TESTCASE PBASE-BadMedia-0298
//! @SYMTestCaseID PBASE-BadMedia-0298
//! @SYMTestCaseDesc Using unreadable or unusable media to ensure they are handled gracefully
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Attempting to mount a file system on unreadable media
//! @SYMTestExpectedResults The media is reported as unkown
//! @SYMTestType CIT
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini BadMedia
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BadMedia
RUN_TEST_STEP -1 basetestfat32server WriteRaw \basetest\basetestfat32config.ini BadMedia_i
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini BadMedia
RUN_TEST_STEP -1 basetestfat32server Mount \basetest\basetestfat32config.ini BadMedia
END_TESTCASE PBASE-BadMedia-0298
START_TESTCASE PBASE-Larger512-0299
//! @SYMTestCaseID PBASE-Larger512-0299
//! @SYMTestCaseDesc Ensuring FAT32 is only used when necessary
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Mounting the file system on various size media
//! @SYMTestExpectedResults The media is reported as unkown
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini Larger512
RUN_TEST_STEP -1 basetestfat32server Larger512 \basetest\basetestfat32config.ini Larger512
END_TESTCASE PBASE-Larger512-0299
START_TESTCASE PBASE-FillDisk-0300
//! @SYMTestCaseID PBASE-FillDisk-0300
//! @SYMTestCaseDesc Ensuring that the disk can be filled to its maximum capacity
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Perform the following actions on FAT32 media
//! a. Filling the drive with one big file
//! b. Check the size of the file
//! @SYMTestExpectedResults These are as follows:
//! a. The disk is full
//! b. Size of the file is equal to the free space available on the disk before it has been filled
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FillDisk
RUN_TEST_STEP -1 basetestfat32server FillDisk \basetest\basetestfat32config.ini FillDisk
RUN_TEST_STEP -1 basetestfat32server ClusterBound \basetest\basetestfat32config.ini ClusterBound_1
END_TESTCASE PBASE-FillDisk-0300
START_TESTCASE PBASE-ClusterBound-0301
//! @SYMTestCaseID PBASE-ClusterBound-0301
//! @SYMTestCaseDesc Testing the cluster boundary values
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Perform the following actions on FAT32 media
//! 1. Create one big file to fill the disk. Following this, create another file and attempt to write to this new file.
//! 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.
//! @SYMTestExpectedResults The disk is full
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FillDisk
RUN_TEST_STEP -1 basetestfat32server FillDisk \basetest\basetestfat32config.ini FillDisk
RUN_TEST_STEP -1 basetestfat32server ClusterBound \basetest\basetestfat32config.ini ClusterBound_1
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini FillDisk
RUN_TEST_STEP -1 basetestfat32server FillDisk \basetest\basetestfat32config.ini FillDisk
RUN_TEST_STEP -1 basetestfat32server ClusterBound \basetest\basetestfat32config.ini ClusterBound_2
END_TESTCASE PBASE-ClusterBound-0301
START_TESTCASE PBASE-RemoveMedia-0302
//! @SYMTestCaseID PBASE-RemoveMedia-0302
//! @SYMTestCaseDesc Sudden removal of removable media cards
//! @SYMREQ REQ0000
//! @SYMTestPriority High
//! @SYMTestActions Perform the following actions on FAT32 media
//! 1. Simulating the removal of a media card whilst operations are taking place
//! @SYMTestExpectedResults The disk should not be corrupt
//! @SYMTestType CIT
//! @SYMTestStatus Implemented
RUN_TEST_STEP -1 basetestfat32server Format \basetest\basetestfat32config.ini RemoveMedia
Print DURING THIS TEST PLEASE REMOVE THE CARD
RUN_TEST_STEP -1 basetestfat32server ReadWrite \basetest\basetestfat32config.ini RemoveMedia
Print PLEASE INSERT THE CARD
DELAY 3000
RUN_TEST_STEP -1 basetestfat32server CheckDisk \basetest\basetestfat32config.ini RemoveMedia
END_TESTCASE PBASE-RemoveMedia-0302