def test_readonly_indicator(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.readonly_indicator(pl=pl, segment_info=segment_info), None) with vim_module._with('bufoptions', readonly=1): self.assertEqual(vim.readonly_indicator(pl=pl, segment_info=segment_info), '') self.assertEqual(vim.readonly_indicator(pl=pl, segment_info=segment_info, text='L'), 'L')
def test_cursor_current(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.line_current(pl=pl, segment_info=segment_info), '1') self.assertEqual(vim.col_current(pl=pl, segment_info=segment_info), '1') self.assertEqual(vim.virtcol_current(pl=pl, segment_info=segment_info), [{'highlight_group': ['virtcol_current', 'col_current'], 'contents': '1'}])
def test_paste_indicator(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.paste_indicator(pl=pl, segment_info=segment_info), None) with vim_module._with('options', paste=1): self.assertEqual(vim.paste_indicator(pl=pl, segment_info=segment_info), 'PASTE') self.assertEqual(vim.paste_indicator(pl=pl, segment_info=segment_info, text='P'), 'P')
def test_repository_status(self): pl = Pl() segment_info = vim_module._get_segment_info() with replace_attr(vim, 'guess', lambda path: Args(branch=lambda: os.path.basename(path), status=lambda: None, directory=path)): self.assertEqual(vim.repository_status(pl=pl, segment_info=segment_info), None) with replace_attr(vim, 'guess', lambda path: Args(branch=lambda: os.path.basename(path), status=lambda: 'DU', directory=path)): self.assertEqual(vim.repository_status(pl=pl, segment_info=segment_info), 'DU')
def test_file_directory(self): segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_directory(segment_info=segment_info), None) with replace_env('HOME', '/home/foo'): with vim_module._with('buffer', '/tmp/abc') as segment_info: self.assertEqual(vim.file_directory(segment_info=segment_info), '/tmp/') os.environ['HOME'] = '/tmp' self.assertEqual(vim.file_directory(segment_info=segment_info), '~/')
def test_modified_indicator(self): segment_info = vim_module._get_segment_info() self.assertEqual(vim.modified_indicator(segment_info=segment_info), None) segment_info['buffer'][0] = 'abc' try: self.assertEqual(vim.modified_indicator(segment_info=segment_info), '+') self.assertEqual(vim.modified_indicator(segment_info=segment_info, text='-'), '-') finally: vim_module._bw(segment_info['bufnr'])
def test_file_directory(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), None) with replace_env('HOME', '/home/foo', os.environ): with vim_module._with('buffer', '/tmp/abc') as segment_info: self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), '/tmp/') os.environ['HOME'] = '/tmp' self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), '~/')
def test_modified_indicator(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.modified_indicator(pl=pl, segment_info=segment_info), None) segment_info['buffer'][0] = 'abc' try: self.assertEqual(vim.modified_indicator(pl=pl, segment_info=segment_info), '+') self.assertEqual(vim.modified_indicator(pl=pl, segment_info=segment_info, text='-'), '-') finally: vim_module._bw(segment_info['bufnr'])
def test_file_opts(self): segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_format(segment_info=segment_info), [{'divider_highlight_group': 'background:divider', 'contents': 'unix'}]) self.assertEqual(vim.file_encoding(segment_info=segment_info), [{'divider_highlight_group': 'background:divider', 'contents': 'utf-8'}]) self.assertEqual(vim.file_type(segment_info=segment_info), None) with vim_module._with('bufoptions', filetype='python'): self.assertEqual(vim.file_type(segment_info=segment_info), [{'divider_highlight_group': 'background:divider', 'contents': 'python'}])
def test_mode(self): segment_info = vim_module._get_segment_info() self.assertEqual(vim.mode(segment_info=segment_info), 'NORMAL') self.assertEqual(vim.mode(segment_info=segment_info, override={'i': 'INS'}), 'NORMAL') self.assertEqual(vim.mode(segment_info=segment_info, override={'n': 'NORM'}), 'NORM') with vim_module._with('mode', 'i') as segment_info: self.assertEqual(vim.mode(segment_info=segment_info), 'INSERT') with vim_module._with('mode', chr(ord('V') - 0x40)) as segment_info: self.assertEqual(vim.mode(segment_info=segment_info), 'V·BLCK') self.assertEqual(vim.mode(segment_info=segment_info, override={'^V': 'VBLK'}), 'VBLK')
def test_mode(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.mode(pl=pl, segment_info=segment_info), 'NORMAL') self.assertEqual(vim.mode(pl=pl, segment_info=segment_info, override={'i': 'INS'}), 'NORMAL') self.assertEqual(vim.mode(pl=pl, segment_info=segment_info, override={'n': 'NORM'}), 'NORM') with vim_module._with('mode', 'i') as segment_info: self.assertEqual(vim.mode(pl=pl, segment_info=segment_info), 'INSERT') with vim_module._with('mode', chr(ord('V') - 0x40)) as segment_info: self.assertEqual(vim.mode(pl=pl, segment_info=segment_info), 'V·BLCK') self.assertEqual(vim.mode(pl=pl, segment_info=segment_info, override={'^V': 'VBLK'}), 'VBLK')
def test_file_opts(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_format(pl=pl, segment_info=segment_info), [{'divider_highlight_group': 'background:divider', 'contents': 'unix'}]) self.assertEqual(vim.file_encoding(pl=pl, segment_info=segment_info), [{'divider_highlight_group': 'background:divider', 'contents': 'utf-8'}]) self.assertEqual(vim.file_type(pl=pl, segment_info=segment_info), None) with vim_module._with('bufoptions', filetype='python'): self.assertEqual(vim.file_type(pl=pl, segment_info=segment_info), [{'divider_highlight_group': 'background:divider', 'contents': 'python'}])
def test_line_percent(self): segment_info = vim_module._get_segment_info() segment_info['buffer'][0:-1] = [str(i) for i in range(100)] try: self.assertEqual(vim.line_percent(segment_info=segment_info), '0') vim_module._set_cursor(50, 0) self.assertEqual(vim.line_percent(segment_info=segment_info), '49') self.assertEqual(vim.line_percent(segment_info=segment_info, gradient=True), [{'contents': '49', 'highlight_group': ['line_percent_gradient', 'line_percent'], 'gradient_level': 49}]) finally: vim_module._bw(segment_info['bufnr'])
def test_file_name(self): segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_name(segment_info=segment_info), None) self.assertEqual(vim.file_name(segment_info=segment_info, display_no_file=True), [{'contents': '[No file]', 'highlight_group': ['file_name_no_file', 'file_name']}]) self.assertEqual(vim.file_name(segment_info=segment_info, display_no_file=True, no_file_text='X'), [{'contents': 'X', 'highlight_group': ['file_name_no_file', 'file_name']}]) with vim_module._with('buffer', '/tmp/abc') as segment_info: self.assertEqual(vim.file_name(segment_info=segment_info), 'abc') with vim_module._with('buffer', '/tmp/’’') as segment_info: self.assertEqual(vim.file_name(segment_info=segment_info), '’’')
def test_cursor_current(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.line_current(pl=pl, segment_info=segment_info), '1') self.assertEqual(vim.col_current(pl=pl, segment_info=segment_info), '1') self.assertEqual(vim.virtcol_current(pl=pl, segment_info=segment_info), [{ 'highlight_group': ['virtcol_current_gradient', 'virtcol_current', 'col_current'], 'contents': '1', 'gradient_level': 100.0 / 80, }]) self.assertEqual(vim.virtcol_current(pl=pl, segment_info=segment_info, gradient=False), [{ 'highlight_group': ['virtcol_current', 'col_current'], 'contents': '1', }])
def test_line_percent(self): pl = Pl() segment_info = vim_module._get_segment_info() segment_info['buffer'][0:-1] = [str(i) for i in range(100)] try: self.assertEqual(vim.line_percent(pl=pl, segment_info=segment_info), '1') vim_module._set_cursor(50, 0) self.assertEqual(vim.line_percent(pl=pl, segment_info=segment_info), '50') self.assertEqual(vim.line_percent(pl=pl, segment_info=segment_info, gradient=True), [{'contents': '50', 'highlight_group': ['line_percent_gradient', 'line_percent'], 'gradient_level': 50 * 100.0 / 101}]) finally: vim_module._bw(segment_info['bufnr'])
def test_file_name(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_name(pl=pl, segment_info=segment_info), None) self.assertEqual(vim.file_name(pl=pl, segment_info=segment_info, display_no_file=True), [{'contents': '[No file]', 'highlight_group': ['file_name_no_file', 'file_name']}]) self.assertEqual(vim.file_name(pl=pl, segment_info=segment_info, display_no_file=True, no_file_text='X'), [{'contents': 'X', 'highlight_group': ['file_name_no_file', 'file_name']}]) with vim_module._with('buffer', '/tmp/abc') as segment_info: self.assertEqual(vim.file_name(pl=pl, segment_info=segment_info), 'abc') with vim_module._with('buffer', '/tmp/’’') as segment_info: self.assertEqual(vim.file_name(pl=pl, segment_info=segment_info), '’’')
def test_file_directory(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), None) with replace_env('HOME', '/home/foo', os.environ): with vim_module._with('buffer', '/tmp/’’/abc') as segment_info: self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), '/tmp/’’/') with vim_module._with('buffer', b'/tmp/\xFF\xFF/abc') as segment_info: self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), '/tmp/<ff><ff>/') with vim_module._with('buffer', '/tmp/abc') as segment_info: self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), '/tmp/') os.environ['HOME'] = '/tmp' self.assertEqual(vim.file_directory(pl=pl, segment_info=segment_info), '~/')
def test_position(self): pl = Pl() segment_info = vim_module._get_segment_info() try: 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}]) finally: vim_module._bw(segment_info['bufnr'])
def test_position(self): pl = Pl() segment_info = vim_module._get_segment_info() try: 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}]) finally: vim_module._bw(segment_info['bufnr'])
def test_window_title(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.window_title(pl=pl, segment_info=segment_info), None) with vim_module._with('wvars', quickfix_title='Abc'): self.assertEqual(vim.window_title(pl=pl, segment_info=segment_info), 'Abc')
def test_file_size(self): pl = Pl() segment_info = vim_module._get_segment_info() self.assertEqual(vim.file_size(pl=pl, segment_info=segment_info), '0 B') with vim_module._with('buffer', os.path.join(os.path.dirname(__file__), 'empty')) as segment_info: self.assertEqual(vim.file_size(pl=pl, segment_info=segment_info), '0 B')