summaryrefslogtreecommitdiff
path: root/tests/modules/utf8/test.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2026-01-20 23:43:50 +0800
committerruki <[email protected]>2026-01-20 23:43:50 +0800
commit23710584abfd0bb9c12c207066c145e6feee81e5 (patch)
treeb72b9db4d290534618687622fe281c2112de2b9d /tests/modules/utf8/test.lua
parenta9d5fe27bb69cc35022e9c8b80ac9d5f89f570c0 (diff)
fix utf8.find
Diffstat (limited to 'tests/modules/utf8/test.lua')
-rw-r--r--tests/modules/utf8/test.lua22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/modules/utf8/test.lua b/tests/modules/utf8/test.lua
index 51da441d9..8ec9495fb 100644
--- a/tests/modules/utf8/test.lua
+++ b/tests/modules/utf8/test.lua
@@ -106,3 +106,25 @@ function test_lastof(t)
t:are_equal(utf8.lastof("ABC", "D"), nil)
end
+
+function test_find(t)
+ t:are_equal({utf8.find("A", "A")}, {1, 1})
+ t:are_equal({utf8.find("ABC", "A")}, {1, 1})
+ t:are_equal({utf8.find("ABC", "B")}, {2, 2})
+ t:are_equal({utf8.find("ABC", "C")}, {3, 3})
+ t:are_equal({utf8.find("ABCA", "A")}, {1, 1})
+ t:are_equal({utf8.find("ABCA", "A", 2)}, {4, 4})
+ t:are_equal({utf8.find("ABCA", "A", 1)}, {1, 1})
+
+ t:are_equal({utf8.find("你好", "你")}, {1, 1})
+ t:are_equal({utf8.find("你好", "好")}, {2, 2})
+ t:are_equal({utf8.find("你好你", "你", 2)}, {3, 3})
+
+ t:are_equal({utf8.find("A你好A", "A")}, {1, 1})
+ t:are_equal({utf8.find("A你好A", "A", 2)}, {4, 4})
+ t:are_equal({utf8.find("A你好A", "好")}, {3, 3})
+
+ t:are_equal(utf8.find("ABC", "D"), nil)
+ t:are_equal({utf8.find("ABC", "")}, {1, 0})
+ t:are_equal({utf8.find("ABC", "", 2)}, {2, 1})
+end