Skip to content

Commit 529a187

Browse files
committed
Fixes test for --error-state option
1 parent 1494a8e commit 529a187

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

tests/delete.py

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -801,3 +801,50 @@ def test_delete_multiple_descendants_dry_run(self):
801801

802802
# Clean after yourself
803803
self.del_test_dir(module_name, fname)
804+
805+
def test_delete_error_backups(self):
806+
"""delete increment and all after him"""
807+
fname = self.id().split('.')[3]
808+
node = self.make_simple_node(
809+
base_dir=os.path.join(module_name, fname, 'node'),
810+
initdb_params=['--data-checksums'])
811+
812+
backup_dir = os.path.join(self.tmp_path, module_name, fname, 'backup')
813+
self.init_pb(backup_dir)
814+
self.add_instance(backup_dir, 'node', node)
815+
self.set_archiving(backup_dir, 'node', node)
816+
node.slow_start()
817+
818+
# full backup mode
819+
self.backup_node(backup_dir, 'node', node)
820+
# page backup mode
821+
self.backup_node(backup_dir, 'node', node, backup_type="page")
822+
823+
# Take FULL BACKUP
824+
backup_id_a = self.backup_node(backup_dir, 'node', node)
825+
# Take PAGE BACKUP
826+
backup_id_b = self.backup_node(backup_dir, 'node', node, backup_type="page")
827+
828+
# Change status to ERROR
829+
self.change_backup_status(backup_dir, 'node', backup_id_a, 'ERROR')
830+
self.change_backup_status(backup_dir, 'node', backup_id_b, 'ERROR')
831+
832+
print(self.show_pb(backup_dir, as_text=True, as_json=False))
833+
834+
show_backups = self.show_pb(backup_dir, 'node')
835+
self.assertEqual(len(show_backups), 4)
836+
837+
# delete error backups
838+
self.delete_pb(backup_dir, 'node', options=['--error-state'])
839+
840+
print(self.show_pb(backup_dir, as_text=True, as_json=False))
841+
842+
show_backups = self.show_pb(backup_dir, 'node')
843+
self.assertEqual(len(show_backups), 2)
844+
845+
self.assertEqual(show_backups[0]['status'], "OK")
846+
self.assertEqual(show_backups[1]['status'], "OK")
847+
848+
# Clean after yourself
849+
self.del_test_dir(module_name, fname)
850+

0 commit comments

Comments
 (0)