浏览代码

rdelete_cmd converted

bigtedde 1 年之前
父节点
当前提交
a3bfc4d390
共有 1 个文件被更改,包括 19 次插入24 次删除
  1. 19 24
      src/borg/testsuite/archiver/rdelete_cmd.py

+ 19 - 24
src/borg/testsuite/archiver/rdelete_cmd.py

@@ -1,30 +1,25 @@
 import os
-import unittest
-
-from ...constants import *  # NOQA
-from . import ArchiverTestCaseBase, RemoteArchiverTestCaseBase, ArchiverTestCaseBinaryBase, RK_ENCRYPTION, BORG_EXES
 
+import pytest
 
-class ArchiverTestCase(ArchiverTestCaseBase):
-    def test_delete_repo(self):
-        self.create_regular_file("file1", size=1024 * 80)
-        self.create_regular_file("dir2/file2", size=1024 * 80)
-        self.cmd(f"--repo={self.repository_location}", "rcreate", RK_ENCRYPTION)
-        self.cmd(f"--repo={self.repository_location}", "create", "test", "input")
-        self.cmd(f"--repo={self.repository_location}", "create", "test.2", "input")
-        os.environ["BORG_DELETE_I_KNOW_WHAT_I_AM_DOING"] = "no"
-        self.cmd(f"--repo={self.repository_location}", "rdelete", exit_code=2)
-        assert os.path.exists(self.repository_path)
-        os.environ["BORG_DELETE_I_KNOW_WHAT_I_AM_DOING"] = "YES"
-        self.cmd(f"--repo={self.repository_location}", "rdelete")
-        # Make sure the repo is gone
-        self.assertFalse(os.path.exists(self.repository_path))
-
+from ...constants import *  # NOQA
+from . import create_regular_file, cmd, RK_ENCRYPTION
 
-class RemoteArchiverTestCase(RemoteArchiverTestCaseBase, ArchiverTestCase):
-    """run the same tests, but with a remote repository"""
 
+@pytest.mark.parametrize("archivers", ["archiver", "remote_archiver", "binary_archiver"])
+def test_delete_repo(archivers, request):
+    archiver = request.getfixturevalue(archivers)
+    repo_location, repo_path, input_path = archiver.repository_location, archiver.repository_path, archiver.input_path
+    create_regular_file(input_path, "file1", size=1024 * 80)
+    create_regular_file(input_path, "dir2/file2", size=1024 * 80)
 
-@unittest.skipUnless("binary" in BORG_EXES, "no borg.exe available")
-class ArchiverTestCaseBinary(ArchiverTestCaseBinaryBase, ArchiverTestCase):
-    """runs the same tests, but via the borg binary"""
+    cmd(archiver, f"--repo={repo_location}", "rcreate", RK_ENCRYPTION)
+    cmd(archiver, f"--repo={repo_location}", "create", "test", "input")
+    cmd(archiver, f"--repo={repo_location}", "create", "test.2", "input")
+    os.environ["BORG_DELETE_I_KNOW_WHAT_I_AM_DOING"] = "no"
+    cmd(archiver, f"--repo={repo_location}", "rdelete", exit_code=2)
+    assert os.path.exists(repo_path)
+    os.environ["BORG_DELETE_I_KNOW_WHAT_I_AM_DOING"] = "YES"
+    cmd(archiver, f"--repo={repo_location}", "rdelete")
+    # Make sure the repo is gone
+    assert not os.path.exists(repo_path)