More test cases for position segment
This commit is contained in:
parent
90132fe386
commit
10cd7b78f0
|
@ -505,9 +505,17 @@ class TestVim(TestCase):
|
|||
pl = Pl()
|
||||
segment_info = vim_module._get_segment_info()
|
||||
try:
|
||||
segment_info['buffer'][:] = ['1']
|
||||
vim_module._set_cursor(1, 0)
|
||||
self.assertEqual(vim.position(pl=pl, segment_info=segment_info), 'All')
|
||||
segment_info['buffer'][0:-1] = [str(i) for i in range(99)]
|
||||
vim_module._set_cursor(49, 0)
|
||||
self.assertEqual(vim.position(pl=pl, segment_info=segment_info), '50%')
|
||||
self.assertEqual(vim.position(pl=pl, segment_info=segment_info, gradient=True),
|
||||
[{'contents': '50%', 'highlight_group': ['position_gradient', 'position'], 'gradient_level': 50.0}])
|
||||
vim_module._set_cursor(0, 0)
|
||||
self.assertEqual(vim.position(pl=pl, segment_info=segment_info), 'Top')
|
||||
vim_module._set_cursor(97, 0)
|
||||
self.assertEqual(vim.position(pl=pl, segment_info=segment_info, position_strings={'top':'Comienzo', 'bottom':'Final', 'all':'Todo'}), 'Final')
|
||||
segment_info['buffer'][0:-1] = [str(i) for i in range(2)]
|
||||
vim_module._set_cursor(0, 0)
|
||||
self.assertEqual(vim.position(pl=pl, segment_info=segment_info, position_strings={'top':'Comienzo', 'bottom':'Final', 'all':'Todo'}), 'Todo')
|
||||
self.assertEqual(vim.position(pl=pl, segment_info=segment_info, gradient=True),
|
||||
[{'contents': 'All', 'highlight_group': ['position_gradient', 'position'], 'gradient_level': 0.0}])
|
||||
|
|
|
@ -304,10 +304,12 @@ def _emul_line2byte(line):
|
|||
|
||||
@_vim
|
||||
def _emul_line(expr):
|
||||
cursorline = windows[_window - 1].cursor[0] + 1
|
||||
numlines = len(_buf_lines[_buffer()])
|
||||
if expr == 'w0':
|
||||
return 1
|
||||
return max(cursorline-5, 1)
|
||||
if expr == 'w$':
|
||||
return 1
|
||||
return min(cursorline+5, numlines)
|
||||
raise NotImplementedError
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue