diff options
| author | 2019-10-14 22:18:17 +0200 | |
|---|---|---|
| committer | 2019-10-14 22:18:17 +0200 | |
| commit | 57432d564980612bdb894637e696b608f6763b9f (patch) | |
| tree | 608b03f79213ccc95123b65af777327c1d54d198 /tests/bot | |
| parent | Add more specialized Mocks to tests.helpers (diff) | |
| parent | Merge pull request #531 from python-discord/unittest-bot-constants (diff) | |
Merge branch 'unittest-migration' of github.com:python-discord/bot into unittest-migration
Diffstat (limited to 'tests/bot')
| -rw-r--r-- | tests/bot/test_constants.py | 26 | 
1 files changed, 26 insertions, 0 deletions
| diff --git a/tests/bot/test_constants.py b/tests/bot/test_constants.py new file mode 100644 index 000000000..dae7c066c --- /dev/null +++ b/tests/bot/test_constants.py @@ -0,0 +1,26 @@ +import inspect +import unittest + +from bot import constants + + +class ConstantsTests(unittest.TestCase): +    """Tests for our constants.""" + +    def test_section_configuration_matches_type_specification(self): +        """The section annotations should match the actual types of the sections.""" + +        sections = ( +            cls +            for (name, cls) in inspect.getmembers(constants) +            if hasattr(cls, 'section') and isinstance(cls, type) +        ) +        for section in sections: +            for name, annotation in section.__annotations__.items(): +                with self.subTest(section=section, name=name, annotation=annotation): +                    value = getattr(section, name) + +                    if getattr(annotation, '_name', None) in ('Dict', 'List'): +                        self.skipTest("Cannot validate containers yet.") + +                    self.assertIsInstance(value, annotation) | 
