Some checks failed
Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
Detach Plugins / check (GitHub.vim) (push) Has been cancelled
Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
Detach Plugins / check (git.vim) (push) Has been cancelled
Detach Plugins / check (iedit.vim) (push) Has been cancelled
Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
Detach Plugins / check (vim-chat) (push) Has been cancelled
Detach Plugins / check (vim-cheat) (push) Has been cancelled
Detach Plugins / check (vim-todo) (push) Has been cancelled
Detach Plugins / check (xmake.vim) (push) Has been cancelled
test / Linux (nvim, nightly) (push) Has been cancelled
test / Linux (nvim, v0.3.8) (push) Has been cancelled
test / Linux (nvim, v0.4.0) (push) Has been cancelled
test / Linux (nvim, v0.4.2) (push) Has been cancelled
test / Linux (nvim, v0.4.3) (push) Has been cancelled
test / Linux (nvim, v0.4.4) (push) Has been cancelled
test / Linux (nvim, v0.5.0) (push) Has been cancelled
test / Linux (nvim, v0.5.1) (push) Has been cancelled
test / Linux (nvim, v0.6.0) (push) Has been cancelled
test / Linux (nvim, v0.6.1) (push) Has been cancelled
test / Linux (nvim, v0.7.0) (push) Has been cancelled
test / Linux (nvim, v0.7.2) (push) Has been cancelled
test / Linux (nvim, v0.8.0) (push) Has been cancelled
test / Linux (nvim, v0.8.1) (push) Has been cancelled
test / Linux (nvim, v0.8.2) (push) Has been cancelled
test / Linux (nvim, v0.8.3) (push) Has been cancelled
test / Linux (nvim, v0.9.0) (push) Has been cancelled
test / Linux (nvim, v0.9.1) (push) Has been cancelled
test / Linux (true, vim, v7.4.052) (push) Has been cancelled
test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
test / Linux (true, vim, v7.4.629) (push) Has been cancelled
test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
test / Linux (vim, nightly) (push) Has been cancelled
test / Linux (vim, v8.0.0184) (push) Has been cancelled
test / Linux (vim, v8.0.1453) (push) Has been cancelled
test / Linux (vim, v8.1.2269) (push) Has been cancelled
test / Linux (vim, v8.2.2434) (push) Has been cancelled
test / Linux (vim, v8.2.3995) (push) Has been cancelled
test / Windows (nvim, nightly) (push) Has been cancelled
test / Windows (nvim, v0.3.8) (push) Has been cancelled
test / Windows (nvim, v0.4.2) (push) Has been cancelled
test / Windows (nvim, v0.4.3) (push) Has been cancelled
test / Windows (nvim, v0.4.4) (push) Has been cancelled
test / Windows (nvim, v0.5.0) (push) Has been cancelled
test / Windows (nvim, v0.5.1) (push) Has been cancelled
test / Windows (nvim, v0.6.0) (push) Has been cancelled
test / Windows (nvim, v0.6.1) (push) Has been cancelled
test / Windows (nvim, v0.7.0) (push) Has been cancelled
test / Windows (nvim, v0.7.2) (push) Has been cancelled
test / Windows (nvim, v0.8.0) (push) Has been cancelled
test / Windows (nvim, v0.8.1) (push) Has been cancelled
test / Windows (nvim, v0.8.2) (push) Has been cancelled
test / Windows (nvim, v0.8.3) (push) Has been cancelled
test / Windows (nvim, v0.9.0) (push) Has been cancelled
test / Windows (nvim, v0.9.1) (push) Has been cancelled
test / Windows (vim, nightly) (push) Has been cancelled
test / Windows (vim, v7.4.1185) (push) Has been cancelled
test / Windows (vim, v7.4.1689) (push) Has been cancelled
test / Windows (vim, v8.0.0027) (push) Has been cancelled
test / Windows (vim, v8.0.1453) (push) Has been cancelled
test / Windows (vim, v8.1.2269) (push) Has been cancelled
test / Windows (vim, v8.2.2434) (push) Has been cancelled
test / Windows (vim, v8.2.3995) (push) Has been cancelled
docker / docker (push) Has been cancelled
mirror / check (coding) (push) Has been cancelled
mirror / check (gitee) (push) Has been cancelled
mirror / check (gitlab) (push) Has been cancelled
103 lines
3.2 KiB
Lua
103 lines
3.2 KiB
Lua
local command = require "telescope.command"
|
|
|
|
local eq = assert.are.same
|
|
|
|
describe("command_parser", function()
|
|
local test_parse = function(should, input, output)
|
|
it(should, function()
|
|
command.convert_user_opts(input)
|
|
eq(output, input)
|
|
end)
|
|
end
|
|
|
|
-- Strings
|
|
test_parse("should handle cwd", { cwd = "string" }, { cwd = "string" })
|
|
|
|
-- Find commands
|
|
test_parse(
|
|
"should handle find_command 1",
|
|
{ find_command = "rg,--ignore,--hidden,files" },
|
|
{ find_command = { "rg", "--ignore", "--hidden", "files" } }
|
|
)
|
|
test_parse(
|
|
"should handle find_command 2",
|
|
{ find_command = "fd,-t,f,-H" },
|
|
{ find_command = { "fd", "-t", "f", "-H" } }
|
|
)
|
|
test_parse(
|
|
"should handle find_command 3",
|
|
{ find_command = "fdfind,--type,f,--no-ignore" },
|
|
{ find_command = { "fdfind", "--type", "f", "--no-ignore" } }
|
|
)
|
|
|
|
-- Dictionaries/tables
|
|
test_parse(
|
|
"should handle layout_config viml 1",
|
|
{ layout_config = "{'prompt_position':'top'}" },
|
|
{ layout_config = { prompt_position = "top" } }
|
|
)
|
|
test_parse(
|
|
"should handle layout_config viml 2",
|
|
{ layout_config = "#{prompt_position:'bottom'}" },
|
|
{ layout_config = { prompt_position = "bottom" } }
|
|
)
|
|
test_parse(
|
|
"should handle layout_config viml 3",
|
|
{ layout_config = "{'mirror':v:true}" },
|
|
{ layout_config = { mirror = true } }
|
|
)
|
|
test_parse(
|
|
"should handle layout_config viml 4",
|
|
{ layout_config = "#{mirror:v:true}" },
|
|
{ layout_config = { mirror = true } }
|
|
)
|
|
test_parse(
|
|
"should handle layout_config lua 1",
|
|
{ layout_config = "{prompt_position='bottom'}" },
|
|
{ layout_config = { prompt_position = "bottom" } }
|
|
)
|
|
test_parse(
|
|
"should handle layout_config lua 2",
|
|
{ layout_config = "{mirror=true}" },
|
|
{ layout_config = { mirror = true } }
|
|
)
|
|
|
|
-- Lists/tables
|
|
test_parse(
|
|
"should handle symbols commas list",
|
|
{ symbols = "alpha,beta,gamma" },
|
|
{ symbols = { "alpha", "beta", "gamma" } }
|
|
)
|
|
test_parse(
|
|
"should handle symbols viml list",
|
|
{ symbols = "['alpha','beta','gamma']" },
|
|
{ symbols = { "alpha", "beta", "gamma" } }
|
|
)
|
|
test_parse(
|
|
"should handle symbols lua list",
|
|
{ symbols = "{'alpha','beta','gamma'}" },
|
|
{ symbols = { "alpha", "beta", "gamma" } }
|
|
)
|
|
|
|
-- Booleans
|
|
test_parse("should handle booleans 1", { hidden = "true" }, { hidden = true })
|
|
test_parse("should handle booleans 2", { no_ignore = "false" }, { no_ignore = false })
|
|
|
|
-- Numbers
|
|
test_parse("should handle numbers 1", { depth = "2" }, { depth = 2 })
|
|
test_parse("should handle numbers 2", { bufnr_width = "4" }, { bufnr_width = 4 })
|
|
test_parse("should handle numbers 3", { severity = "27" }, { severity = 27 })
|
|
|
|
-- Multiple options
|
|
test_parse(
|
|
"should handle multiple options 1",
|
|
{ layout_config = '{prompt_position="top"}', cwd = "/foobar", severity = "27" },
|
|
{ layout_config = { prompt_position = "top" }, cwd = "/foobar", severity = 27 }
|
|
)
|
|
test_parse(
|
|
"should handle multiple options 2",
|
|
{ symbols = "['alef','bet','gimel']", depth = "2", find_command = "rg,--ignore,files" },
|
|
{ symbols = { "alef", "bet", "gimel" }, depth = 2, find_command = { "rg", "--ignore", "files" } }
|
|
)
|
|
end)
|