[START] 1. Start the test target. 2. Login to the target. 3. Request that the target randomly fragment PDUs and inject random delays. 4. Partition and format the disk. 5. Write some data to a test file on the disk. 6. Logout from the target, and login again. This flushes any cached file data. 7. Read the test file and check whether the data is correct. 8. Request that the target begin randomly injecting SCSI read and write errors. 9. Logout from the target, and login again. This flushes any cached file data. 10. Read the test file and check whether the data is correct. The random SCSI errors should not affect the ability to read the file and should also not affect the data. 11. Request that the target stop injecting SCSI read and write errors. 12. Logout from the target. 13. Login to the target 14. Request that the target send an asynchronous-logout PDU to the initiator. 15. Read the test file and check whether the data is correct. 16. Logout from the target. This flushes any cached file data. 17. Login to the target. 18. Request that the target inject random read and write corruption. 19. Read the test file. Ignore any filesystem errors. 20. Write some data to the test file. Ignore any filesystem errors. 21. Check whether the initiator is still connected to the target. 22. Logout from the target. [END]
Figure 1: Test case using the error-injection capabilities of the emulated target.