diff options
Diffstat (limited to 'tests/builder/equality.test.py')
| -rw-r--r-- | tests/builder/equality.test.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tests/builder/equality.test.py b/tests/builder/equality.test.py index 8482b51..f02eddc 100644 --- a/tests/builder/equality.test.py +++ b/tests/builder/equality.test.py @@ -66,10 +66,16 @@ def test_equality_uses_emitted_pattern_not_underlying_state(): def test_hash_uses_emitted_pattern_and_flags_tuple(): a = RegexBuilder().string("hi") b = RegexBuilder().string("hi") - assert hash(a) == hash((a.to_regex_string(), a._state.flags)) assert hash(a) == hash(b) +def test_hash_differs_when_flags_differ_but_pattern_matches(): + without_flag = RegexBuilder().string("hi") + with_flag = RegexBuilder().ignore_case().string("hi") + assert without_flag.to_regex_string() == with_flag.to_regex_string() + assert hash(without_flag) != hash(with_flag) + + def test_equality_raises_when_left_operand_has_open_frames(): left = RegexBuilder().any_of() right = RegexBuilder().digit() |
