diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2012-03-04 16:01:18 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2012-03-04 18:02:07 +0100 |
commit | 3a6e4cf2b1a88f3ab6631e75ca2e1be5273b2f8f (patch) | |
tree | 11f586290b2e3bf9729fa7cdc6189f54b2fcefde /selftest | |
parent | cd9cf4797204f307defda7482360580558c5ee44 (diff) | |
download | samba-3a6e4cf2b1a88f3ab6631e75ca2e1be5273b2f8f.tar.gz |
selftest.target: Add NoneTarget.
Diffstat (limited to 'selftest')
-rw-r--r-- | selftest/target/__init__.py | 17 | ||||
-rw-r--r-- | selftest/tests/test_target.py | 13 |
2 files changed, 30 insertions, 0 deletions
diff --git a/selftest/target/__init__.py b/selftest/target/__init__.py index b6a297ce02b..4c95c74895c 100644 --- a/selftest/target/__init__.py +++ b/selftest/target/__init__.py @@ -29,6 +29,14 @@ class EnvironmentDown(Exception): super(EnvironmentDown, self).__init__("environment went down: %s" % msg) +class UnsupportedEnvironment(Exception): + """Indicates a particular environment is not supported.""" + + def __init__(self, target, envname): + super(UnsupportedEnvironment, self).__init__( + "Target %s does not support environment %s" % (target, envname)) + + class Target(object): """A target for Samba tests.""" @@ -93,6 +101,15 @@ class NoneEnvironment(Environment): return {} +class NoneTarget(Target): + """Target that can only provide the 'none' environment.""" + + name = "none" + + def setup_env(self, envname, prefix): + raise UnsupportedEnvironment(self.name, envname) + + class EnvironmentManager(object): """Manager of environments.""" diff --git a/selftest/tests/test_target.py b/selftest/tests/test_target.py index 0a5d1c43100..139ed741d0e 100644 --- a/selftest/tests/test_target.py +++ b/selftest/tests/test_target.py @@ -24,7 +24,9 @@ from selftest.target import ( EnvironmentDown, EnvironmentManager, NoneEnvironment, + NoneTarget, Target, + UnsupportedEnvironment, ) import unittest @@ -67,6 +69,17 @@ class NoneEnvironmentTests(unittest.TestCase): self.assertEquals("", self.env.get_log()) +class NoneTargetTests(unittest.TestCase): + + def setUp(self): + super(NoneTargetTests, self).setUp() + self.target = NoneTarget() + + def test_setup_env(self): + self.assertRaises(UnsupportedEnvironment, self.target.setup_env, + "something", "prefx") + + class EnvironmentManagerTests(unittest.TestCase): def setUp(self): |