Describes the tests needed to validate the Replace functionality.
Basic replace
- Upload a new file with a unique name for this test.
bash bin/bitmag.sh put-file -c integrationtest2 -f conf/logback.xml -i replace_test_1_2015_02_18.xml
- Replace the file at a pillar. The file should exist in the collection, providing the correct checksum for the existing file.
- First retrieve the checksum with GetChecksum (or just use md5sum on the local file):
bash bin/bitmag.sh get-checksums -c integrationtest2 -i replace_test_1_2015_02_18.xml
Count: Checksum: Pillars: FileID:
5 3228f1d3684c39ed782af5f9e6aee1b0 All replace_test_1_2015_02_18.xml
- Use the checksum to replace the file:
bash bin/bitmag.sh replace-file -c integrationtest2 -i replace_test_1_2015_02_18.xml -f conf/RepositorySettings.xml -C 3228f1d3684c39ed782af5f9e6aee1b0 -p sbtape2
- Verify that the pillars does not agree upon the checksum any more:
bash bin/bitmag.sh get-checksums -c integrationtest2 -i replace_test_1_2015_02_18.xml
Count: Checksum: Pillars: FileID:
4 3228f1d3684c39ed782af5f9e6aee1b0 [kbpillar2, reference2, checksum2, sbdisk1] replace_test_1_2015_02_18.xml
1 001a83061e71a22a3ac08759fcc082c9 [sbtape2] replace_test_1_2015_02_18.xml
- First retrieve the checksum with GetChecksum (or just use md5sum on the local file):
Bad old file checksum
- Attempt to replace a file, providing the wrong checksum for the old file.
- The file shouldn't be replaced, and the user should be informed that the operation failed due to the invalid checksum for the old file.
Missing file replace
- Attempt to replace a file that does not exist in the collection.
- The user should be informed that the operation failed because the file did't exist.
Replace with returned checksums
- Replace a file with including the a request of a salted checksum calculated on the pillars, which should be returned.
- Check that the file is replaced correctly, and that the returned checksums are correct and consistent across the responses returned by the pillars).
Open issues