diff options
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_warnings.py | 19 | ||||
-rw-r--r-- | Lib/warnings.py | 3 |
2 files changed, 21 insertions, 1 deletions
diff --git a/Lib/test/test_warnings.py b/Lib/test/test_warnings.py index cd3288b..ad1d540 100644 --- a/Lib/test/test_warnings.py +++ b/Lib/test/test_warnings.py @@ -61,6 +61,25 @@ class BaseTest: sys.modules['warnings'] = original_warnings super(BaseTest, self).tearDown() +class PublicAPITests(BaseTest): + + """Ensures that the correct values are exposed in the + public API. + """ + + def test_module_all_attribute(self): + self.assertTrue(hasattr(self.module, '__all__')) + target_api = ["warn", "warn_explicit", "showwarning", + "formatwarning", "filterwarnings", "simplefilter", + "resetwarnings", "catch_warnings"] + self.assertSetEqual(set(self.module.__all__), + set(target_api)) + +class CPublicAPITests(PublicAPITests, unittest.TestCase): + module = c_warnings + +class PyPublicAPITests(PublicAPITests, unittest.TestCase): + module = py_warnings class FilterTests(BaseTest): diff --git a/Lib/warnings.py b/Lib/warnings.py index f37b8a7..e53efa5 100644 --- a/Lib/warnings.py +++ b/Lib/warnings.py @@ -2,7 +2,8 @@ import sys -__all__ = ["warn", "showwarning", "formatwarning", "filterwarnings", +__all__ = ["warn", "warn_explicit", "showwarning", + "formatwarning", "filterwarnings", "simplefilter", "resetwarnings", "catch_warnings"] |