diff options
Diffstat (limited to 'test/functional/ui/highlight_spec.lua')
-rw-r--r-- | test/functional/ui/highlight_spec.lua | 248 |
1 files changed, 193 insertions, 55 deletions
diff --git a/test/functional/ui/highlight_spec.lua b/test/functional/ui/highlight_spec.lua index 2ec10d149f..d9bb4d3a98 100644 --- a/test/functional/ui/highlight_spec.lua +++ b/test/functional/ui/highlight_spec.lua @@ -1708,68 +1708,206 @@ end) describe("'number' and 'relativenumber' highlight", function() before_each(clear) + -- oldtest: Test_relativenumber_colors() it('LineNr, LineNrAbove and LineNrBelow', function() - local screen = Screen.new(20, 10) + local screen = Screen.new(50, 10) screen:set_default_attr_ids({ [1] = { foreground = Screen.colors.Red }, [2] = { foreground = Screen.colors.Blue }, [3] = { foreground = Screen.colors.Green }, }) screen:attach() - command('set number relativenumber') - command('call setline(1, range(50))') - command('highlight LineNr guifg=Red') - feed('4j') - screen:expect([[ - {1: 4 }0 | - {1: 3 }1 | - {1: 2 }2 | - {1: 1 }3 | - {1:5 }^4 | - {1: 1 }5 | - {1: 2 }6 | - {1: 3 }7 | - {1: 4 }8 | - | - ]]) - command('highlight LineNrAbove guifg=Blue') - screen:expect([[ - {2: 4 }0 | - {2: 3 }1 | - {2: 2 }2 | - {2: 1 }3 | - {1:5 }^4 | - {1: 1 }5 | - {1: 2 }6 | - {1: 3 }7 | - {1: 4 }8 | - | - ]]) - command('highlight LineNrBelow guifg=Green') - screen:expect([[ - {2: 4 }0 | - {2: 3 }1 | - {2: 2 }2 | - {2: 1 }3 | - {1:5 }^4 | - {3: 1 }5 | - {3: 2 }6 | - {3: 3 }7 | - {3: 4 }8 | - | - ]]) - feed('3j') - screen:expect([[ - {2: 7 }0 | - {2: 6 }1 | - {2: 5 }2 | - {2: 4 }3 | - {2: 3 }4 | - {2: 2 }5 | - {2: 1 }6 | - {1:8 }^7 | - {3: 1 }8 | - | + exec([[ + call setline(1, range(200)) + 111 + set number relativenumber + hi LineNr guifg=red + ]]) + screen:expect([[ + {1: 4 }106 | + {1: 3 }107 | + {1: 2 }108 | + {1: 1 }109 | + {1:111 }^110 | + {1: 1 }111 | + {1: 2 }112 | + {1: 3 }113 | + {1: 4 }114 | + | + ]]) + command('hi LineNrAbove guifg=blue') + screen:expect([[ + {2: 4 }106 | + {2: 3 }107 | + {2: 2 }108 | + {2: 1 }109 | + {1:111 }^110 | + {1: 1 }111 | + {1: 2 }112 | + {1: 3 }113 | + {1: 4 }114 | + | + ]]) + command('hi LineNrBelow guifg=green') + screen:expect([[ + {2: 4 }106 | + {2: 3 }107 | + {2: 2 }108 | + {2: 1 }109 | + {1:111 }^110 | + {3: 1 }111 | + {3: 2 }112 | + {3: 3 }113 | + {3: 4 }114 | + | + ]]) + command('hi clear LineNrAbove') + screen:expect([[ + {1: 4 }106 | + {1: 3 }107 | + {1: 2 }108 | + {1: 1 }109 | + {1:111 }^110 | + {3: 1 }111 | + {3: 2 }112 | + {3: 3 }113 | + {3: 4 }114 | + | + ]]) + end) + + -- oldtest: Test_relativenumber_colors_wrapped() + it('LineNr, LineNrAbove and LineNrBelow with wrapped lines', function() + local screen = Screen.new(50, 20) + screen:set_default_attr_ids({ + [1] = { background = Screen.colors.Red, foreground = Screen.colors.Black }, + [2] = { background = Screen.colors.Blue, foreground = Screen.colors.Black }, + [3] = { background = Screen.colors.Green, foreground = Screen.colors.Black }, + [4] = { bold = true, foreground = Screen.colors.Blue }, + }) + screen:attach() + exec([[ + set display=lastline scrolloff=0 + call setline(1, range(200)->map('v:val->string()->repeat(40)')) + 111 + set number relativenumber + hi LineNr guibg=red guifg=black + hi LineNrAbove guibg=blue guifg=black + hi LineNrBelow guibg=green guifg=black + ]]) + screen:expect([[ + {2: 2 }1081081081081081081081081081081081081081081081| + {2: }0810810810810810810810810810810810810810810810| + {2: }8108108108108108108108108108 | + {2: 1 }1091091091091091091091091091091091091091091091| + {2: }0910910910910910910910910910910910910910910910| + {2: }9109109109109109109109109109 | + {1:111 }^1101101101101101101101101101101101101101101101| + {1: }1011011011011011011011011011011011011011011011| + {1: }0110110110110110110110110110 | + {3: 1 }1111111111111111111111111111111111111111111111| + {3: }1111111111111111111111111111111111111111111111| + {3: }1111111111111111111111111111 | + {3: 2 }1121121121121121121121121121121121121121121121| + {3: }1211211211211211211211211211211211211211211211| + {3: }2112112112112112112112112112 | + {3: 3 }1131131131131131131131131131131131131131131131| + {3: }1311311311311311311311311311311311311311311311| + {3: }3113113113113113113113113113 | + {3: 4 }1141141141141141141141141141141141141141141{4:@@@}| + | + ]]) + feed('k') + screen:expect([[ + {2: 1 }1081081081081081081081081081081081081081081081| + {2: }0810810810810810810810810810810810810810810810| + {2: }8108108108108108108108108108 | + {1:110 }^1091091091091091091091091091091091091091091091| + {1: }0910910910910910910910910910910910910910910910| + {1: }9109109109109109109109109109 | + {3: 1 }1101101101101101101101101101101101101101101101| + {3: }1011011011011011011011011011011011011011011011| + {3: }0110110110110110110110110110 | + {3: 2 }1111111111111111111111111111111111111111111111| + {3: }1111111111111111111111111111111111111111111111| + {3: }1111111111111111111111111111 | + {3: 3 }1121121121121121121121121121121121121121121121| + {3: }1211211211211211211211211211211211211211211211| + {3: }2112112112112112112112112112 | + {3: 4 }1131131131131131131131131131131131131131131131| + {3: }1311311311311311311311311311311311311311311311| + {3: }3113113113113113113113113113 | + {3: 5 }1141141141141141141141141141141141141141141{4:@@@}| + | + ]]) + feed('2j') + screen:expect([[ + {2: 3 }1081081081081081081081081081081081081081081081| + {2: }0810810810810810810810810810810810810810810810| + {2: }8108108108108108108108108108 | + {2: 2 }1091091091091091091091091091091091091091091091| + {2: }0910910910910910910910910910910910910910910910| + {2: }9109109109109109109109109109 | + {2: 1 }1101101101101101101101101101101101101101101101| + {2: }1011011011011011011011011011011011011011011011| + {2: }0110110110110110110110110110 | + {1:112 }^1111111111111111111111111111111111111111111111| + {1: }1111111111111111111111111111111111111111111111| + {1: }1111111111111111111111111111 | + {3: 1 }1121121121121121121121121121121121121121121121| + {3: }1211211211211211211211211211211211211211211211| + {3: }2112112112112112112112112112 | + {3: 2 }1131131131131131131131131131131131131131131131| + {3: }1311311311311311311311311311311311311311311311| + {3: }3113113113113113113113113113 | + {3: 3 }1141141141141141141141141141141141141141141{4:@@@}| + | + ]]) + feed('2j') + screen:expect([[ + {2: 5 }1081081081081081081081081081081081081081081081| + {2: }0810810810810810810810810810810810810810810810| + {2: }8108108108108108108108108108 | + {2: 4 }1091091091091091091091091091091091091091091091| + {2: }0910910910910910910910910910910910910910910910| + {2: }9109109109109109109109109109 | + {2: 3 }1101101101101101101101101101101101101101101101| + {2: }1011011011011011011011011011011011011011011011| + {2: }0110110110110110110110110110 | + {2: 2 }1111111111111111111111111111111111111111111111| + {2: }1111111111111111111111111111111111111111111111| + {2: }1111111111111111111111111111 | + {2: 1 }1121121121121121121121121121121121121121121121| + {2: }1211211211211211211211211211211211211211211211| + {2: }2112112112112112112112112112 | + {1:114 }^1131131131131131131131131131131131131131131131| + {1: }1311311311311311311311311311311311311311311311| + {1: }3113113113113113113113113113 | + {3: 1 }1141141141141141141141141141141141141141141{4:@@@}| + | + ]]) + feed('k') + screen:expect([[ + {2: 4 }1081081081081081081081081081081081081081081081| + {2: }0810810810810810810810810810810810810810810810| + {2: }8108108108108108108108108108 | + {2: 3 }1091091091091091091091091091091091091091091091| + {2: }0910910910910910910910910910910910910910910910| + {2: }9109109109109109109109109109 | + {2: 2 }1101101101101101101101101101101101101101101101| + {2: }1011011011011011011011011011011011011011011011| + {2: }0110110110110110110110110110 | + {2: 1 }1111111111111111111111111111111111111111111111| + {2: }1111111111111111111111111111111111111111111111| + {2: }1111111111111111111111111111 | + {1:113 }^1121121121121121121121121121121121121121121121| + {1: }1211211211211211211211211211211211211211211211| + {1: }2112112112112112112112112112 | + {3: 1 }1131131131131131131131131131131131131131131131| + {3: }1311311311311311311311311311311311311311311311| + {3: }3113113113113113113113113113 | + {3: 2 }1141141141141141141141141141141141141141141{4:@@@}| + | ]]) end) |