mirror of
https://github.com/lune-org/lune.git
synced 2024-12-12 13:00:37 +00:00
38 lines
1.2 KiB
Lua
38 lines
1.2 KiB
Lua
local luau = require("@lune/luau")
|
|
|
|
local EMPTY_LUAU_CODE_BLOCK = "do end"
|
|
|
|
local MIN_OPTION_VALUE = 0
|
|
local MAX_OPTION_VALUE = 2
|
|
local OPTION_NAMES = {
|
|
"optimizationLevel",
|
|
"coverageLevel",
|
|
"debugLevel",
|
|
}
|
|
|
|
for _, optionName in OPTION_NAMES do
|
|
-- In range should work
|
|
for optionValue = MIN_OPTION_VALUE, MAX_OPTION_VALUE, 1 do
|
|
local options = { [optionName] = optionValue }
|
|
local success2 = pcall(function()
|
|
luau.compile(EMPTY_LUAU_CODE_BLOCK, options)
|
|
end)
|
|
assert(success2, "expected `luau.compile` to accept options within range")
|
|
end
|
|
-- Lower than min range should error
|
|
for optionValue = MIN_OPTION_VALUE - 16, MIN_OPTION_VALUE - 1, 1 do
|
|
local options = { [optionName] = optionValue }
|
|
local success2 = pcall(function()
|
|
luau.compile(EMPTY_LUAU_CODE_BLOCK, options)
|
|
end)
|
|
assert(not success2, "expected `luau.compile` to not accept options outside of range")
|
|
end
|
|
-- Higher than max range should error
|
|
for optionValue = MAX_OPTION_VALUE + 1, MAX_OPTION_VALUE + 16, 1 do
|
|
local options = { [optionName] = optionValue }
|
|
local success2 = pcall(function()
|
|
luau.compile(EMPTY_LUAU_CODE_BLOCK, options)
|
|
end)
|
|
assert(not success2, "expected `luau.compile` to not accept options outside of range")
|
|
end
|
|
end
|