summaryrefslogtreecommitdiff
path: root/src/mailman/config/tests/test_configuration.py
diff options
context:
space:
mode:
authorBarry Warsaw2016-05-01 16:53:16 -0400
committerBarry Warsaw2016-05-01 16:53:16 -0400
commite61e9b73f84c2c0ff646d6967436507692d0220f (patch)
tree3049f1425244b43befe8c439e788d67dd332039c /src/mailman/config/tests/test_configuration.py
parent9150dac0b5e7a959cbac121762b86f1de39cab99 (diff)
downloadmailman-e61e9b73f84c2c0ff646d6967436507692d0220f.tar.gz
mailman-e61e9b73f84c2c0ff646d6967436507692d0220f.tar.zst
mailman-e61e9b73f84c2c0ff646d6967436507692d0220f.zip
Diffstat (limited to 'src/mailman/config/tests/test_configuration.py')
-rw-r--r--src/mailman/config/tests/test_configuration.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/mailman/config/tests/test_configuration.py b/src/mailman/config/tests/test_configuration.py
index f295ef633..f4bccad83 100644
--- a/src/mailman/config/tests/test_configuration.py
+++ b/src/mailman/config/tests/test_configuration.py
@@ -18,7 +18,6 @@
"""Test the system-wide global configuration."""
import os
-import shutil
import unittest
from contextlib import ExitStack
@@ -29,7 +28,7 @@ from mailman.interfaces.configuration import (
from mailman.testing.helpers import configuration, event_subscribers
from mailman.testing.layers import ConfigLayer
from pkg_resources import resource_filename
-from tempfile import NamedTemporaryFile
+from tempfile import NamedTemporaryFile, TemporaryDirectory
from unittest import mock
@@ -54,13 +53,18 @@ class TestConfiguration(unittest.TestCase):
def test_config_template_dir_is_source(self):
# This test will leave a 'var' directory in the top-level source
# directory. Be sure to clean it up.
- self.addCleanup(shutil.rmtree, 'var')
config = Configuration()
- with NamedTemporaryFile('w', encoding='utf-8') as fp:
+ with ExitStack() as resources:
+ fp = resources.enter_context(
+ NamedTemporaryFile('w', encoding='utf-8'))
+ var_dir = resources.enter_context(TemporaryDirectory())
+ # Don't let the post-processing after the config.load() to put a
+ # 'var' directory in the source tree's top level directory.
print("""\
[paths.here]
template_dir: :source:
-""", file=fp)
+var_dir: {}
+""".format(var_dir), file=fp)
fp.flush()
config.load(fp.name)
import mailman.templates