diff options
Diffstat (limited to 'tests/python/test_range.py')
-rw-r--r-- | tests/python/test_range.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/python/test_range.py b/tests/python/test_range.py new file mode 100644 index 0000000..9977e95 --- /dev/null +++ b/tests/python/test_range.py @@ -0,0 +1,36 @@ +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. + +import hamcrest +import pytest + +from lsprotocol import types as lsp + + +@pytest.mark.parametrize( + ("a", "b", "expected"), + [ + ( + lsp.Range(lsp.Position(1, 23), lsp.Position(4, 56)), + lsp.Range(lsp.Position(1, 23), lsp.Position(4, 56)), + True, + ), + ( + lsp.Range(lsp.Position(1, 23), lsp.Position(4, 56)), + lsp.Range(lsp.Position(1, 23), lsp.Position(4, 57)), + False, + ), + ( + lsp.Range(lsp.Position(1, 23), lsp.Position(4, 56)), + lsp.Range(lsp.Position(1, 23), lsp.Position(7, 56)), + False, + ), + ], +) +def test_range_equality(a, b, expected): + hamcrest.assert_that(a == b, hamcrest.is_(expected)) + + +def test_range_repr(): + a = lsp.Range(lsp.Position(1, 23), lsp.Position(4, 56)) + hamcrest.assert_that(f"{a!r}", hamcrest.is_("1:23-4:56")) |