65 lines
2.5 KiB
Python
65 lines
2.5 KiB
Python
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 #}}}
|