Kaynağa Gözat

2 small archiver testsuite fixes

environment context manager: if a env var was not present before, it should not be present afterwards

teardown: cd out of the tmpdir before deleting it
Thomas Waldmann 10 yıl önce
ebeveyn
işleme
738ed5d91b
1 değiştirilmiş dosya ile 4 ekleme ve 2 silme
  1. 4 2
      borg/testsuite/archiver.py

+ 4 - 2
borg/testsuite/archiver.py

@@ -58,7 +58,9 @@ class environment_variable:
 
     def __exit__(self, *args, **kw):
         for k, v in self.old_values.items():
-            if v is not None:
+            if v is None:
+                del os.environ[k]
+            else:
                 os.environ[k] = v
 
 
@@ -89,8 +91,8 @@ class ArchiverTestCaseBase(BaseTestCase):
         os.chdir(self.tmpdir)
 
     def tearDown(self):
-        shutil.rmtree(self.tmpdir)
         os.chdir(self._old_wd)
+        shutil.rmtree(self.tmpdir)
 
     def cmd(self, *args, **kw):
         exit_code = kw.get('exit_code', 0)