- class testing.functional.test_restart.RestartTest(methodName='runTest')
Test checkpoint/restart using duplicity binary
Takes a successful backup and pretend that we interrupted a backup after two-volumes. (This is because we want to be able to model restarting the second volume and duplicity deletes the last volume found because it may have not finished uploading.)
Test basic Checkpoint/Restart
If we restart but find remote volumes missing, we can easily end up with a manifest that lists “vol1, vol2, vol3, vol2”, leaving a dangling vol3. Make sure we can gracefully handle that. This will only happen if the source data changes to be small enough to not create a vol3 on restart.
Make sure we correctly handle restarting a backup when a file disappears when we had been in the middle of backing it up. It’s possible that the first chunk of the next file will be skipped unless we’re careful.
Test restart when no volumes are available on the remote. Caused when duplicity fails before the first transfer.
Test restart when the last file being backed up is missing on restart. Caused when the user deletes a file after a failure. This test puts the file at the end of the backup, with no files following.
Test restart when the last file being backed up is missing on restart. Caused when the user deletes a file after a failure. This test puts the file in the middle of the backup, with files following.
Test restart when fewer volumes are available on the remote than the local manifest has on record. Caused when duplicity fails the last queued transfer(s).
Test multiple Checkpoint/Restart
If we restart right after a volume, but there are new files that would have been backed up earlier in the volume, make sure we don’t wig out. (Expected result is to ignore new, ealier files, but pick up later ones.)
Test that we can successfully restart a encrypt-key-only backup without providing a password for it. (Normally, we’d need to decrypt the first volume, but there is special code to skip that with an encrypt key.)
Test restarting an incremental backup
Test restarting a backup using same key for sign and encrypt https://bugs.launchpad.net/duplicity/+bug/946988
Test restarting a backup using same key for sign and encrypt (hidden key id) https://bugs.launchpad.net/duplicity/+bug/946988
If we restart right after a volume that ended with a large (multi-block) file, make sure we restart in the right place.
If we restart right after a volume that ended with a small (one-block) file, make sure we restart in the right place.
If we restart right after a volume that ended inside of a large (multi-block) file, make sure we restart in the right place.
- class testing.functional.test_restart.RestartTestWithoutEncryption(methodName='runTest')
Hook method for setting up the test fixture before exercising it.
Test that we gracefully ignore double snapshot entries in a signature file. This winds its way through duplicity as a deleted base dir, which doesn’t make sense and should be ignored. An older version of duplicity accidentally created such files as a result of a restart. https://launchpad.net/bugs/929067