from test.vim_test_case import VimTestCase as _VimTest from test.constant import * # Undo of Snippet insertion {{{# class Undo_RemoveMultilineSnippet(_VimTest): snippets = ("test", "Hello\naaa ${1} bbb\nWorld") keys = "test" + EX + ESC + "u" + "inothing" wanted = "nothing" class Undo_RemoveEditInTabstop(_VimTest): snippets = ("test", "$1 Hello\naaa ${1} bbb\nWorld") keys = "hello test" + EX + "upsi" + ESC + "hh" + "iabcdef" + ESC + "u" wanted = "hello upsi Hello\naaa upsi bbb\nWorld" class Undo_RemoveWholeSnippet(_VimTest): snippets = ("test", "Hello\n${1:Hello}World") keys = "first line\n\n\n\n\n\nthird line" + \ ESC + "3k0itest" + EX + ESC + "uiupsy" wanted = "first line\n\n\nupsy\n\n\nthird line" class JumpForward_DefSnippet(_VimTest): snippets = ("test", "${1}\n`!p snip.rv = '\\n'.join(t[1].split())`\n\n${0:pass}") keys = "test" + EX + "a b c" + JF + "shallnot" wanted = "a b c\na\nb\nc\n\nshallnot" class DeleteSnippetInsertion0(_VimTest): snippets = ("test", "${1:hello} $1") keys = "test" + EX + ESC + "Vkx" + "i\nworld\n" wanted = "world" class DeleteSnippetInsertion1(_VimTest): snippets = ("test", r"$1${1/(.*)/(?0::.)/}") keys = "test" + EX + ESC + "u" + "i" + JF + "\t" wanted = "\t" # End: Undo of Snippet insertion #}}} # Normal mode editing {{{# # Test for bug #927844 class DeleteLastTwoLinesInSnippet(_VimTest): snippets = ("test", "$1hello\nnice\nworld") keys = "test" + EX + ESC + "j2dd" wanted = "hello" class DeleteCurrentTabStop1_JumpBack(_VimTest): snippets = ("test", "${1:hi}\nend") keys = "test" + EX + ESC + "ddi" + JB wanted = "end" class DeleteCurrentTabStop2_JumpBack(_VimTest): snippets = ("test", "${1:hi}\n${2:world}\nend") keys = "test" + EX + JF + ESC + "ddi" + JB + "hello" wanted = "hello\nend" class DeleteCurrentTabStop3_JumpAround(_VimTest): snippets = ("test", "${1:hi}\n${2:world}\nend") keys = "test" + EX + JF + ESC + "ddkji" + JB + "hello" + JF + "world" wanted = "hello\nendworld" # End: Normal mode editing #}}} # Pressing BS in TabStop {{{# # Test for Bug #774917 class Backspace_TabStop_Zero(_VimTest): snippets = ("test", "A${1:C} ${0:DDD}", "This is Case 1") keys = "test" + EX + "A" + JF + BS + "BBB" wanted = "AA BBB" class Backspace_TabStop_NotZero(_VimTest): snippets = ("test", "A${1:C} ${2:DDD}", "This is Case 1") keys = "test" + EX + "A" + JF + BS + "BBB" wanted = "AA BBB" # End: Pressing BS in TabStop #}}}