Parcourir la source

Revert "Don't look up "HOME" environment variable unconditionally to avoid KeyError"

This reverts commit 5b8a6675e86c1714d734fc8bba19241c3491eaaa,
as I have been unable to contact Risto about relicensing to Apachev2+.
Jelmer Vernooij il y a 8 ans
Parent
commit
0913a1b433
3 fichiers modifiés avec 17 ajouts et 5 suppressions
  1. 13 4
      dulwich/tests/test_config.py
  2. 4 0
      dulwich/tests/test_repository.py
  3. 0 1
      relicensing-apachev2.txt

+ 13 - 4
dulwich/tests/test_config.py

@@ -19,6 +19,7 @@
 """Tests for reading and writing configuration files."""
 
 from io import BytesIO
+import os
 from dulwich.config import (
     ConfigDict,
     ConfigFile,
@@ -35,7 +36,15 @@ from dulwich.tests import (
     )
 
 
-class ConfigFileTests(TestCase):
+class ConfigTestCase(TestCase):
+
+    def setUp(self):
+        super(ConfigTestCase, self).setUp()
+        self.addCleanup(os.environ.__setitem__, "HOME", os.environ["HOME"])
+        os.environ["HOME"] = "/nonexistant"
+
+
+class ConfigFileTests(ConfigTestCase):
 
     def from_file(self, text):
         return ConfigFile.from_file(BytesIO(text))
@@ -162,7 +171,7 @@ class ConfigFileTests(TestCase):
         }}), cf)
 
 
-class ConfigDictTests(TestCase):
+class ConfigDictTests(ConfigTestCase):
 
     def test_get_set(self):
         cd = ConfigDict()
@@ -216,7 +225,7 @@ class ConfigDictTests(TestCase):
             list(cd.itersections()))
 
 
-class StackedConfigTests(TestCase):
+class StackedConfigTests(ConfigTestCase):
 
     def test_default_backends(self):
         StackedConfig.default_backends()
@@ -294,7 +303,7 @@ class CheckSectionNameTests(TestCase):
         self.assertTrue(_check_section_name(b"bar.bar"))
 
 
-class SubmodulesTests(TestCase):
+class SubmodulesTests(ConfigTestCase):
 
     def testSubmodules(self):
         cf = ConfigFile.from_file(BytesIO(b"""\

+ 4 - 0
dulwich/tests/test_repository.py

@@ -303,6 +303,8 @@ class RepositoryRootTests(TestCase):
         self.assertIsInstance(r.get_config(), Config)
 
     def test_get_config_stack(self):
+        self.addCleanup(os.environ.__setitem__, "HOME", os.environ["HOME"])
+        os.environ["HOME"] = "/nonexistant"
         r = self.open_repo('ooo_merge.git')
         self.assertIsInstance(r.get_config_stack(), Config)
 
@@ -627,6 +629,8 @@ class BuildRepoRootTests(TestCase):
         self.assertEqual(b"iso8859-1", r[commit_sha].encoding)
 
     def test_commit_config_identity(self):
+        self.addCleanup(os.environ.__setitem__, "HOME", os.environ["HOME"])
+        os.environ["HOME"] = "/nonexistant"
         # commit falls back to the users' identity if it wasn't specified
         r = self._repo
         c = r.get_config()

+ 0 - 1
relicensing-apachev2.txt

@@ -16,7 +16,6 @@ alone. Code written by the following contributors has not (yet) been relicensed
 under dual Apachev2/GPLv2:
 
 Artem Tikhomirov <artem.tikhomirov@syntevo.com>
-Risto Kankkunen <risto.kankkunen@f-secure.com> <risto.kankkunen@iki.fi>
 
 If your name is in this list and you'd be happy to relicense your contribution
 under dual GPLv2/Apachev2, then please send me an e-mail (jelmer@jelmer.uk) or