summaryrefslogtreecommitdiff
path: root/src/mailman/testing/layers.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/testing/layers.py')
-rw-r--r--src/mailman/testing/layers.py21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/mailman/testing/layers.py b/src/mailman/testing/layers.py
index 19300ba1e..3f7e63406 100644
--- a/src/mailman/testing/layers.py
+++ b/src/mailman/testing/layers.py
@@ -22,6 +22,7 @@ from __future__ import absolute_import, unicode_literals
__metaclass__ = type
__all__ = [
'ConfigLayer',
+ 'MockAndMonkeyLayer',
'SMTPLayer',
]
@@ -40,6 +41,7 @@ from mailman.core import initialize
from mailman.core.logging import get_handler
from mailman.i18n import _
from mailman.testing.helpers import SMTPServer
+from mailman.utilities.datetime import factory
from mailman.utilities.string import expand
@@ -47,7 +49,24 @@ NL = '\n'
-class ConfigLayer:
+class MockAndMonkeyLayer:
+ """Layer for mocking and monkey patching for testing."""
+
+ @classmethod
+ def setUp(cls):
+ factory.testing_mode = True
+
+ @classmethod
+ def tearDown(cls):
+ factory.testing_mode = False
+
+ @classmethod
+ def testTearDown(cls):
+ factory.reset()
+
+
+
+class ConfigLayer(MockAndMonkeyLayer):
"""Layer for pushing and popping test configurations."""
var_dir = None