2014-07-19 11:45:44 -04:00
|
|
|
from test.vim_test_case import VimTestCase as _VimTest
|
|
|
|
from test.constant import *
|
|
|
|
|
|
|
|
# Test for bug 1251994 {{{#
|
|
|
|
class Bug1251994(_VimTest):
|
|
|
|
snippets = ("test", "${2:#2} ${1:#1};$0")
|
|
|
|
keys = " test" + EX + "hello" + JF + "world" + JF + "blub"
|
|
|
|
wanted = " world hello;blub"
|
|
|
|
# End: 1251994 #}}}
|
|
|
|
|
|
|
|
# Test for https://github.com/SirVer/ultisnips/issues/157 (virtualedit) {{{#
|
|
|
|
class VirtualEdit(_VimTest):
|
|
|
|
snippets = ("pd", "padding: ${1:0}px")
|
|
|
|
keys = "\t\t\tpd" + EX + "2"
|
|
|
|
wanted = "\t\t\tpadding: 2px"
|
|
|
|
|
|
|
|
def _extra_options_pre_init(self, vim_config):
|
|
|
|
vim_config.append('set virtualedit=all')
|
|
|
|
vim_config.append('set noexpandtab')
|
|
|
|
# End: 1251994 #}}}
|
|
|
|
|
|
|
|
# Test for Github Pull Request #134 - Retain unnamed register {{{#
|
|
|
|
class RetainsTheUnnamedRegister(_VimTest):
|
|
|
|
snippets = ("test", "${1:hello} ${2:world} ${0}")
|
|
|
|
keys = "yank" + ESC + "by4lea test" + EX + "HELLO" + JF + JF + ESC + "p"
|
|
|
|
wanted = "yank HELLO world yank"
|
|
|
|
class RetainsTheUnnamedRegister_ButOnlyOnce(_VimTest):
|
|
|
|
snippets = ("test", "${1:hello} ${2:world} ${0}")
|
|
|
|
keys = "blahfasel" + ESC + "v" + 4*ARR_L + "xotest" + EX + ESC + ARR_U + "v0xo" + ESC + "p"
|
|
|
|
wanted = "\nblah\nhello world "
|
|
|
|
# End: Github Pull Request # 134 #}}}
|
|
|
|
|
2014-10-08 13:30:40 -04:00
|
|
|
# Test to ensure that shiftwidth follows tabstop when it's set to zero post
|
|
|
|
# version 7.3.693. Prior to that version a shiftwidth of zero effectively
|
|
|
|
# removes tabs.
|
|
|
|
class ShiftWidthZero(_VimTest):
|
|
|
|
def _extra_options_pre_init(self, vim_config):
|
|
|
|
vim_config += [
|
|
|
|
"if exists('*shiftwidth')",
|
|
|
|
" set shiftwidth=0",
|
|
|
|
"endif",
|
|
|
|
]
|
|
|
|
snippets = ("test", "\t${1}${0}")
|
|
|
|
keys = "test" + EX + "foo"
|
|
|
|
wanted = "\tfoo"
|
2014-11-21 05:41:59 -05:00
|
|
|
|
|
|
|
# Test for https://github.com/SirVer/ultisnips/issues/171 {{{#
|
|
|
|
# Make sure that we don't crash when trying to save and restore the clipboard
|
|
|
|
# when it contains data that we can't coerce into Unicode.
|
|
|
|
class NonUnicodeDataInUnnamedRegister(_VimTest):
|
|
|
|
snippets = ("test", "hello")
|
|
|
|
keys = "test" + EX + ESC + \
|
|
|
|
"\n".join([":redir @a",
|
|
|
|
":messages",
|
|
|
|
":redir END",
|
|
|
|
(":if match(@a, 'Error') != -1 | " +
|
|
|
|
"call setline('.', 'error detected') | " +
|
|
|
|
"3put a | " +
|
|
|
|
"endif"),
|
|
|
|
""])
|
|
|
|
wanted = "hello"
|
|
|
|
|
|
|
|
def _before_test(self):
|
|
|
|
# The string below was the one a user had on their clipboard when
|
|
|
|
# encountering the UnicodeDecodeError and could not be coerced into
|
|
|
|
# unicode.
|
|
|
|
self.vim.send(
|
|
|
|
':let @" = "\\x80kdI{\\x80@7 1},' +
|
|
|
|
'\\x80kh\\x80kh\\x80kd\\x80kdq\\x80kb\\x1b"\n')
|
|
|
|
# End: #171 #}}}
|