Skip to content

Commit e9b5639

Browse files
meymchentombh
authored andcommitted
test(document): add tests for client_position_at_offset
1 parent 788d307 commit e9b5639

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

tests/test_document.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -486,3 +486,34 @@ def test_word_at_position():
486486
)
487487
== "unicode."
488488
)
489+
490+
491+
def test_position_at_offset_utf16():
492+
doc = TextDocument(DOC_URI, DOC)
493+
assert doc.client_position_at_offset(8) == types.Position(line=0, character=8)
494+
assert doc.client_position_at_offset(12) == types.Position(line=1, character=3)
495+
assert doc.client_position_at_offset(13) == types.Position(line=2, character=0)
496+
assert doc.client_position_at_offset(17) == types.Position(line=2, character=4)
497+
assert doc.client_position_at_offset(27) == types.Position(line=3, character=6)
498+
assert doc.client_position_at_offset(28) == types.Position(line=3, character=8)
499+
assert doc.client_position_at_offset(40) == types.Position(line=4, character=0)
500+
501+
502+
def test_position_at_offset_utf32():
503+
doc = TextDocument(
504+
DOC_URI,
505+
DOC,
506+
position_codec=PositionCodec(encoding=types.PositionEncodingKind.Utf32),
507+
)
508+
assert doc.client_position_at_offset(8) == types.Position(line=0, character=8)
509+
assert doc.client_position_at_offset(39) == types.Position(line=4, character=0)
510+
511+
512+
def test_position_at_offset_utf8():
513+
doc = TextDocument(
514+
DOC_URI,
515+
DOC,
516+
position_codec=PositionCodec(encoding=types.PositionEncodingKind.Utf8),
517+
)
518+
assert doc.client_position_at_offset(8) == types.Position(line=0, character=8)
519+
assert doc.client_position_at_offset(41) == types.Position(line=4, character=0)

0 commit comments

Comments
 (0)