aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorGravatar Johannes Christ <[email protected]>2019-10-14 19:21:00 +0200
committerGravatar GitHub <[email protected]>2019-10-14 19:21:00 +0200
commit45e82e08aec7fba831bc58e6615602f00fe9676c (patch)
tree2677e8d3c409d3861fd8042464f53456db365ebb /tests
parentRemove empty tests.cogs folder (diff)
parentMigrate test_constants to unittest (diff)
Merge pull request #531 from python-discord/unittest-bot-constants
Migrate `test_constants` to unittest
Diffstat (limited to 'tests')
-rw-r--r--tests/bot/test_constants.py26
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)