diff options
| author | ruki <[email protected]> | 2026-01-21 00:46:38 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2026-01-21 00:46:38 +0800 |
| commit | f10baca5c10b1d21c6d9900ad3d6b382c37258c6 (patch) | |
| tree | 01799807de63410f747c1132dc1fefd7df699959 /tests/modules/utf8/test.lua | |
| parent | b5a506803e4f3c8b11858be2a57c509d479683e1 (diff) | |
add utf8.byte
Diffstat (limited to 'tests/modules/utf8/test.lua')
| -rw-r--r-- | tests/modules/utf8/test.lua | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/modules/utf8/test.lua b/tests/modules/utf8/test.lua index bab3ce896..329672d50 100644 --- a/tests/modules/utf8/test.lua +++ b/tests/modules/utf8/test.lua @@ -159,4 +159,23 @@ function test_width(t) t:are_equal(utf8.width("A\tB"), 6) -- 1 + 4 + 1 end +function test_byte(t) + t:are_equal({utf8.byte("A")}, {65}) + t:are_equal({utf8.byte("€")}, {0x20AC}) + t:are_equal({utf8.byte("ABC")}, {65}) + t:are_equal({utf8.byte("ABC", 2)}, {66}) + t:are_equal({utf8.byte("ABC", 2, 2)}, {66}) + t:are_equal({utf8.byte("ABC", 1, 3)}, {65, 66, 67}) + t:are_equal({utf8.byte("你好")}, {utf8.codepoint("你好", 1, 1)}) + t:are_equal({utf8.byte("你好", 1, 2)}, {20320, 22909}) + -- negative indices + t:are_equal({utf8.byte("ABC", -1)}, {67}) + t:are_equal({utf8.byte("ABC", -2)}, {66}) + t:are_equal({utf8.byte("ABC", -2, -1)}, {66, 67}) + t:are_equal({utf8.byte("ABC", 1, -1)}, {65, 66, 67}) + + -- out of bounds + t:are_equal({utf8.byte("ABC", 4)}, {}) + t:are_equal({utf8.byte("ABC", 1, 0)}, {}) +end |
