diff options
Diffstat (limited to 'tests/pattern/factories/quantifiers.test.py')
| -rw-r--r-- | tests/pattern/factories/quantifiers.test.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/pattern/factories/quantifiers.test.py b/tests/pattern/factories/quantifiers.test.py index 8a6f34f..a0f558a 100644 --- a/tests/pattern/factories/quantifiers.test.py +++ b/tests/pattern/factories/quantifiers.test.py @@ -7,6 +7,7 @@ from edify import ( WORD, Pattern, at_least, + at_most, between, between_lazy, char, @@ -62,6 +63,14 @@ def test_at_least_produces_open_ended_quantifier(): assert at_least(2, DIGIT).to_regex_string() == "\\d{2,}" +def test_at_most_produces_zero_lower_bound_quantifier(): + assert at_most(3, DIGIT).to_regex_string() == "\\d{0,3}" + + +def test_at_most_groups_a_multi_element_operand(): + assert at_most(3, DIGIT + WORD).to_regex_string() == "(?:\\d\\w){0,3}" + + def test_between_produces_greedy_bounded_quantifier(): assert between(2, 4, DIGIT).to_regex_string() == "\\d{2,4}" @@ -84,6 +93,11 @@ def test_at_least_rejects_negative_count(): at_least(-1, DIGIT) +def test_at_most_rejects_zero_count(): + with pytest.raises(MustBePositiveIntegerError): + at_most(0, DIGIT) + + def test_between_rejects_negative_lower_bound(): with pytest.raises(MustBeIntegerGreaterThanZeroError): between(-1, 5, DIGIT) |
