diff options
| author | Eli Collins <elic@assurancetechnologies.com> | 2011-06-30 22:18:52 -0400 |
|---|---|---|
| committer | Eli Collins <elic@assurancetechnologies.com> | 2011-06-30 22:18:52 -0400 |
| commit | 4475fba1e1f6b5fc22283fcf4011c17dcd2f85f8 (patch) | |
| tree | a706b82c57ff314dd95799e0d252bb0d526e8147 | |
| parent | e36d4e8b3e5a58f4274dc2b25a291f03379fba1c (diff) | |
| download | passlib-4475fba1e1f6b5fc22283fcf4011c17dcd2f85f8.tar.gz | |
made disabled backends skipTest msg be more informative
| -rw-r--r-- | passlib/tests/test_registry.py | 2 | ||||
| -rw-r--r-- | passlib/tests/utils.py | 18 |
2 files changed, 12 insertions, 8 deletions
diff --git a/passlib/tests/test_registry.py b/passlib/tests/test_registry.py index 0b66988..c73b474 100644 --- a/passlib/tests/test_registry.py +++ b/passlib/tests/test_registry.py @@ -126,7 +126,7 @@ class RegistryTest(TestCase): self.assertIs(get_crypt_handler("dummy_1"), dummy_1) with catch_warnings(): - warnings.filterwarnings("ignore", "handler names be lower-case, and use underscores instead of hyphens:.*", UserWarning) + warnings.filterwarnings("ignore", "handler names should be lower-case, and use underscores instead of hyphens:.*", UserWarning) self.assertIs(get_crypt_handler("DUMMY-1"), dummy_1) #========================================================= diff --git a/passlib/tests/utils.py b/passlib/tests/utils.py index 0126d94..6add6f0 100644 --- a/passlib/tests/utils.py +++ b/passlib/tests/utils.py @@ -829,13 +829,16 @@ def _enable_backend_case(handler, name): assert hasattr(handler, "backends"), "handler must support uh.HasManyBackends protocol" assert name in handler.backends, "unknown backend: %r" % (name,) if not handler.has_backend(name): - return False + return False, "backend not available" if enable_option("all-backends"): - return True + return True, None #otherwise only enable if backend is default orig = handler.get_backend() try: - return handler.set_backend("default") == name + if handler.set_backend("default") == name: + return True, None + else: + return False, "only default backend being tested" finally: handler.set_backend(orig) @@ -845,14 +848,15 @@ def create_backend_case(base, name): # then we return None under UT1, # but return class w/ skip flag set under UT2. handler = base.handler - enable = _enable_backend_case(handler, name) + enable, reason = _enable_backend_case(handler, name) #UT1 doesn't support skipping whole test cases, #so we just return None. if not enable and ut_version < 2: return None - dummy = type( + #create subclass of 'base' which uses correct backend + subcase = type( "%s_%s" % (name.title(), base.__name__), (base,), dict( @@ -862,9 +866,9 @@ def create_backend_case(base, name): ) if not enable: - dummy = unittest.skip("backend not available")(dummy) + subcase = unittest.skip(reason)(subcase) - return dummy + return subcase #========================================================= #misc helpers |
