diff options
Diffstat (limited to 'tests/cogs')
| -rw-r--r-- | tests/cogs/test_antispam.py | 30 | 
1 files changed, 30 insertions, 0 deletions
| diff --git a/tests/cogs/test_antispam.py b/tests/cogs/test_antispam.py new file mode 100644 index 000000000..67900b275 --- /dev/null +++ b/tests/cogs/test_antispam.py @@ -0,0 +1,30 @@ +import pytest + +from bot.cogs import antispam + + +def test_default_antispam_config_is_valid(): +    validation_errors = antispam.validate_config() +    assert not validation_errors + + +    ('config', 'expected'), +    ( +        ( +            {'invalid-rule': {}}, +            {'invalid-rule': "`invalid-rule` is not recognized as an antispam rule."} +        ), +        ( +            {'burst': {'interval': 10}}, +            {'burst': "Key `max` is required but not set for rule `burst`"} +        ), +        ( +            {'burst': {'max': 10}}, +            {'burst': "Key `interval` is required but not set for rule `burst`"} +        ) +    ) +) +def test_invalid_antispam_config_returns_validation_errors(config, expected): +    validation_errors = antispam.validate_config(config) +    assert validation_errors == expected | 
