feat(git/cmd): improved completion for :G
This commit is contained in:
@@ -97,3 +97,35 @@ end)
|
||||
t.test("parse_args expands leading ~/ to home", function()
|
||||
t.eq(cmd.parse_args("add ~/foo"), { "add", vim.fn.expand("~/foo") })
|
||||
end)
|
||||
|
||||
t.test("parse_complete_state with trailing space", function()
|
||||
local s = cmd._parse_complete_state("G push origin ")
|
||||
t.eq(s.prior, { "push", "origin" })
|
||||
t.falsy(s.after_separator)
|
||||
end)
|
||||
|
||||
t.test("parse_complete_state mid-token", function()
|
||||
local s = cmd._parse_complete_state("G push or")
|
||||
t.eq(s.prior, { "push" })
|
||||
t.falsy(s.after_separator)
|
||||
end)
|
||||
|
||||
t.test("parse_complete_state empty after command", function()
|
||||
local s = cmd._parse_complete_state("G ")
|
||||
t.eq(s.prior, {})
|
||||
t.falsy(s.after_separator)
|
||||
end)
|
||||
|
||||
t.test("parse_complete_state detects -- separator", function()
|
||||
local s = cmd._parse_complete_state("G log -- foo")
|
||||
t.eq(s.prior, { "log", "--" })
|
||||
t.truthy(s.after_separator)
|
||||
end)
|
||||
|
||||
t.test("positional_index ignores flags", function()
|
||||
t.eq(cmd._positional_index({ "push" }), 1)
|
||||
t.eq(cmd._positional_index({ "push", "origin" }), 2)
|
||||
t.eq(cmd._positional_index({ "push", "--force" }), 1)
|
||||
t.eq(cmd._positional_index({ "push", "--force", "origin" }), 2)
|
||||
t.eq(cmd._positional_index({ "checkout", "-b", "feature" }), 2)
|
||||
end)
|
||||
|
||||
Reference in New Issue
Block a user