diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2016-03-10 10:16:44 -0500 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2016-03-10 10:16:44 -0500 |
commit | e7485ab1c969bb4077db42be92473a8923bb1e08 (patch) | |
tree | b443e4446f02fdc71f19ea2b81cc62c721fa384d /test | |
parent | d9ecd0662700839cead978607150e410ba529fc4 (diff) | |
parent | 316d38d98c67c0d6312d55304743ee9b376c8dbc (diff) | |
download | rneovim-e7485ab1c969bb4077db42be92473a8923bb1e08.tar.gz rneovim-e7485ab1c969bb4077db42be92473a8923bb1e08.tar.bz2 rneovim-e7485ab1c969bb4077db42be92473a8923bb1e08.zip |
Merge pull request #2877 from lucc/test88
test: Migrate legacy test 88.
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/legacy/088_conceal_tabs_spec.lua | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/test/functional/legacy/088_conceal_tabs_spec.lua b/test/functional/legacy/088_conceal_tabs_spec.lua new file mode 100644 index 0000000000..c78f4e5c3e --- /dev/null +++ b/test/functional/legacy/088_conceal_tabs_spec.lua @@ -0,0 +1,96 @@ +-- Tests for correct display (cursor column position) with +conceal and +-- tabulators. + +local helpers = require('test.functional.helpers') +local feed, insert, clear, execute = + helpers.feed, helpers.insert, helpers.clear, helpers.execute + +local expect_pos = function(row, col) + return helpers.eq({row, col}, helpers.eval('[screenrow(), screencol()]')) +end + +describe('cursor and column position with conceal and tabulators', function() + setup(clear) + + it('are working', function() + insert([[ + start: + .concealed. text + |concealed| text + + .concealed. text + |concealed| text + + .a. .b. .c. .d. + |a| |b| |c| |d|]]) + + -- Conceal settings. + execute('set conceallevel=2') + execute('set concealcursor=nc') + execute('syntax match test /|/ conceal') + -- Start test. + execute('/^start:') + feed('ztj') + expect_pos(2, 1) + -- We should end up in the same column when running these commands on the + -- two lines. + feed('ft') + expect_pos(2, 17) + feed('$') + expect_pos(2, 20) + feed('0j') + expect_pos(3, 1) + feed('ft') + expect_pos(3, 17) + feed('$') + expect_pos(3, 20) + feed('j0j') + expect_pos(5, 8) + -- Same for next test block. + feed('ft') + expect_pos(5, 25) + feed('$') + expect_pos(5, 28) + feed('0j') + expect_pos(6, 8) + feed('ft') + expect_pos(6, 25) + feed('$') + expect_pos(6, 28) + feed('0j0j') + expect_pos(8, 1) + -- And check W with multiple tabs and conceals in a line. + feed('W') + expect_pos(8, 9) + feed('W') + expect_pos(8, 17) + feed('W') + expect_pos(8, 25) + feed('$') + expect_pos(8, 27) + feed('0j') + expect_pos(9, 1) + feed('W') + expect_pos(9, 9) + feed('W') + expect_pos(9, 17) + feed('W') + expect_pos(9, 25) + feed('$') + expect_pos(9, 26) + execute('set lbr') + feed('$') + expect_pos(9, 26) + execute('set list listchars=tab:>-') + feed('0') + expect_pos(9, 1) + feed('W') + expect_pos(9, 9) + feed('W') + expect_pos(9, 17) + feed('W') + expect_pos(9, 25) + feed('$') + expect_pos(9, 26) + end) +end) |