summaryrefslogtreecommitdiff
path: root/Data/Libraries/Penlight/tests/test-compat.lua
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-10-30 11:32:16 +0800
committerchai <chaifix@163.com>2021-10-30 11:32:16 +0800
commit42ec7286b2d36a9ba22925f816a17cb1cc2aa5ce (patch)
tree24bc7009457a8d7500f264e89946dc20d069294f /Data/Libraries/Penlight/tests/test-compat.lua
parent164885fd98d48703bd771f802d79557b7db97431 (diff)
+ Penlight
Diffstat (limited to 'Data/Libraries/Penlight/tests/test-compat.lua')
-rw-r--r--Data/Libraries/Penlight/tests/test-compat.lua29
1 files changed, 29 insertions, 0 deletions
diff --git a/Data/Libraries/Penlight/tests/test-compat.lua b/Data/Libraries/Penlight/tests/test-compat.lua
new file mode 100644
index 0000000..c4a2724
--- /dev/null
+++ b/Data/Libraries/Penlight/tests/test-compat.lua
@@ -0,0 +1,29 @@
+local test = require 'pl.test'
+local asserteq = test.asserteq
+
+local compat = require "pl.compat"
+local coroutine = require "coroutine"
+
+local code_generator = coroutine.wrap(function()
+ local result = {"ret", "urn \"Hello World!\""}
+ for _,v in ipairs(result) do
+ coroutine.yield(v)
+ end
+ coroutine.yield(nil)
+end)
+
+local f, err = compat.load(code_generator)
+asserteq(err, nil)
+asserteq(f(), "Hello World!")
+
+
+-- package.searchpath
+if compat.lua51 and not compat.jit then
+ assert(package.searchpath("pl.compat", package.path):match("lua[/\\]pl[/\\]compat"))
+
+ local path = "some/?/nice.path;another/?.path"
+ local ok, err = package.searchpath("my.file.name", path, ".", "/")
+ asserteq(err, "\tno file 'some/my/file/name/nice.path'\n\tno file 'another/my/file/name.path'")
+ local ok, err = package.searchpath("my/file/name", path, "/", ".")
+ asserteq(err, "\tno file 'some/my.file.name/nice.path'\n\tno file 'another/my.file.name.path'")
+end \ No newline at end of file