Skip to content

Commit 9fcac37

Browse files
chore(testing): udpate row helper to provide range for marks
1 parent 76f7ce5 commit 9fcac37

16 files changed

+617
-616
lines changed

doc/render-markdown.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*render-markdown.txt* For NVIM v0.11.2 Last change: 2025 June 13
1+
*render-markdown.txt* For NVIM v0.11.2 Last change: 2025 June 19
22

33
==============================================================================
44
Table of Contents *render-markdown-table-of-contents*

tests/ad_hoc_spec.lua

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -10,24 +10,24 @@ describe('ad hoc', function()
1010
'---',
1111
})
1212
local marks = util.marks()
13-
marks:add(0, nil, 0, nil, util.heading.sign(2))
14-
marks:add(0, nil, 0, nil, {
13+
marks:add({ 0 }, { 0 }, util.heading.sign(2))
14+
marks:add({ 0 }, { 0 }, {
1515
virt_text = { { '󰲣 ', 'RmH2:RmH2Bg' } },
1616
virt_text_pos = 'inline',
1717
})
18-
marks:add(0, 1, 0, 0, util.heading.bg(2))
19-
marks:add(1, nil, 0, nil, {
18+
marks:add({ 0, 1 }, { 0, 0 }, util.heading.bg(2))
19+
marks:add({ 1 }, { 0 }, {
2020
virt_text = { { ' ', 'RmH2:RmH2Bg' } },
2121
virt_text_pos = 'inline',
2222
})
23-
marks:add(1, 2, 0, 0, util.heading.bg(2))
24-
marks:add(2, nil, 0, nil, {
23+
marks:add({ 1, 2 }, { 0, 0 }, util.heading.bg(2))
24+
marks:add({ 2 }, { 0 }, {
2525
virt_text = { { ' ', 'RmH2:RmH2Bg' } },
2626
virt_text_pos = 'inline',
2727
})
28-
marks:add(2, 2, 0, 3, util.conceal())
29-
marks:add(2, 2, 0, 3, util.conceal_lines())
30-
marks:add(2, 3, 0, 0, util.heading.bg(2))
28+
marks:add({ 2, 2 }, { 0, 3 }, util.conceal())
29+
marks:add({ 2, 2 }, { 0, 3 }, util.conceal_lines())
30+
marks:add({ 2, 3 }, { 0, 0 }, util.heading.bg(2))
3131
util.assert_view(marks, {
3232
'󰫎 󰲣 Heading 2 Line 1',
3333
' Heading 2 Line 2',
@@ -43,55 +43,55 @@ describe('ad hoc', function()
4343
it('image', function()
4444
util.setup.text({ '![test](test.png)' })
4545
local marks = util.marks()
46-
marks:add(0, nil, 0, nil, util.link('image'))
46+
marks:add({ 0 }, { 0 }, util.link('image'))
4747
util.assert_view(marks, { '󰥶 test' })
4848
end)
4949

5050
it('wikilink', function()
5151
util.setup.text({ '[[Basic One]] Then normal text' })
5252
local marks = util.marks()
53-
marks:add(0, 0, 0, 1, util.conceal())
54-
marks:add(0, nil, 1, nil, util.link('wiki'))
55-
marks:add(0, 0, 12, 13, util.conceal())
53+
marks:add({ 0, 0 }, { 0, 1 }, util.conceal())
54+
marks:add({ 0 }, { 1 }, util.link('wiki'))
55+
marks:add({ 0, 0 }, { 12, 13 }, util.conceal())
5656
util.assert_view(marks, { '󱗖 Basic One Then normal text' })
5757
end)
5858

5959
it('wikilink with alias', function()
6060
util.setup.text({ '[[Nickname|With Alias]] Something important' })
6161
local marks = util.marks()
62-
marks:add(0, 0, 0, 1, util.conceal())
63-
marks:add(0, nil, 1, nil, util.link('wiki'))
64-
marks:add(0, 0, 2, 11, util.conceal())
65-
marks:add(0, 0, 22, 23, util.conceal())
62+
marks:add({ 0, 0 }, { 0, 1 }, util.conceal())
63+
marks:add({ 0 }, { 1 }, util.link('wiki'))
64+
marks:add({ 0, 0 }, { 2, 11 }, util.conceal())
65+
marks:add({ 0, 0 }, { 22, 23 }, util.conceal())
6666
util.assert_view(marks, { '󱗖 With Alias Something important' })
6767
end)
6868

6969
it('wikilink media', function()
7070
util.setup.text({ '![[test.png]]' })
7171
local marks = util.marks()
72-
marks:add(0, 0, 1, 2, util.conceal())
73-
marks:add(0, nil, 2, nil, util.link('wiki'))
74-
marks:add(0, 0, 12, 13, util.conceal())
72+
marks:add({ 0, 0 }, { 1, 2 }, util.conceal())
73+
marks:add({ 0 }, { 2 }, util.link('wiki'))
74+
marks:add({ 0, 0 }, { 12, 13 }, util.conceal())
7575
util.assert_view(marks, { '󱗖 test.png' })
7676
end)
7777

7878
it('email', function()
7979
util.setup.text({ '<[email protected]> Email' })
8080
local marks = util.marks()
81-
marks:add(0, nil, 0, nil, util.link('email'))
82-
marks:add(0, 0, 0, 1, util.conceal())
83-
marks:add(0, 0, 0, 18, util.highlight('link'))
84-
marks:add(0, 0, 17, 18, util.conceal())
81+
marks:add({ 0 }, { 0 }, util.link('email'))
82+
marks:add({ 0, 0 }, { 0, 1 }, util.conceal())
83+
marks:add({ 0, 0 }, { 0, 18 }, util.highlight('link'))
84+
marks:add({ 0, 0 }, { 17, 18 }, util.conceal())
8585
util.assert_view(marks, { '󰀓 [email protected] Email' })
8686
end)
8787

8888
it('bare url', function()
8989
util.setup.text({ '<http://www.github.com/> Bare URL' })
9090
local marks = util.marks()
91-
marks:add(0, nil, 0, nil, util.link('git'))
92-
marks:add(0, 0, 0, 1, util.conceal())
93-
marks:add(0, 0, 0, 24, util.highlight('link'))
94-
marks:add(0, 0, 23, 24, util.conceal())
91+
marks:add({ 0 }, { 0 }, util.link('git'))
92+
marks:add({ 0, 0 }, { 0, 1 }, util.conceal())
93+
marks:add({ 0, 0 }, { 0, 24 }, util.highlight('link'))
94+
marks:add({ 0, 0 }, { 23, 24 }, util.conceal())
9595
util.assert_view(marks, { '󰊤 http://www.github.com/ Bare URL' })
9696
end)
9797

@@ -100,7 +100,7 @@ describe('ad hoc', function()
100100
'[Youtube Link](https://www.youtube.com/watch?v=dQw4w9WgXcQ)',
101101
})
102102
local marks = util.marks()
103-
marks:add(0, nil, 0, nil, util.link('youtube'))
103+
marks:add({ 0 }, { 0 }, util.link('youtube'))
104104
util.assert_view(marks, { '󰗃 Youtube Link' })
105105
end)
106106

@@ -110,12 +110,12 @@ describe('ad hoc', function()
110110
'[^1 Info]: Some Info',
111111
})
112112
local marks = util.marks()
113-
marks:add(0, 0, 14, 23, {
113+
marks:add({ 0, 0 }, { 14, 23 }, {
114114
virt_text = { { '¹ ᴵⁿᶠᵒ', 'RmLink' } },
115115
virt_text_pos = 'inline',
116116
conceal = '',
117117
})
118-
marks:add(1, 1, 0, 9, {
118+
marks:add({ 1, 1 }, { 0, 9 }, {
119119
virt_text = { { '¹ ᴵⁿᶠᵒ', 'RmLink' } },
120120
virt_text_pos = 'inline',
121121
conceal = '',
@@ -129,7 +129,7 @@ describe('ad hoc', function()
129129
it('html comment', function()
130130
util.setup.text({ '<!-- comment -->' })
131131
local marks = util.marks()
132-
marks:add(0, 0, 0, 16, util.conceal())
132+
marks:add({ 0, 0 }, { 0, 16 }, util.conceal())
133133
util.assert_view(marks, { '' })
134134
end)
135135
end)

tests/box_dash_quote_spec.lua

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,40 +8,40 @@ describe('box_dash_quote.md', function()
88

99
local marks, row = util.marks(), util.row()
1010

11-
marks:add(row:get(), nil, 0, nil, util.heading.sign(1))
12-
marks:add(row:get(), row:get(), 0, 1, util.heading.icon(1))
13-
marks:add(row:get(), row:inc(), 0, 0, util.heading.bg(1))
11+
marks:add(row:get(0), { 0 }, util.heading.sign(1))
12+
marks:add(row:get(0, 0), { 0, 1 }, util.heading.icon(1))
13+
marks:add(row:get(0, 1), { 0, 0 }, util.heading.bg(1))
1414

15-
marks:add(row:inc(), row:get(), 0, 2, util.conceal())
16-
marks:add(row:get(), row:get(), 2, 5, {
15+
marks:add(row:get(1, 0), { 0, 2 }, util.conceal())
16+
marks:add(row:get(0, 0), { 2, 5 }, {
1717
virt_text = { { '󰄱 ', 'RmUnchecked' }, { ' ', 'Normal' } },
1818
virt_text_pos = 'overlay',
1919
})
20-
marks:add(row:get(), row:get(), 5, 6, util.conceal())
21-
marks:add(row:inc(), row:get(), 0, 2, util.conceal())
22-
marks:add(row:get(), row:get(), 2, 5, {
20+
marks:add(row:get(0, 0), { 5, 6 }, util.conceal())
21+
marks:add(row:get(1, 0), { 0, 2 }, util.conceal())
22+
marks:add(row:get(0, 0), { 2, 5 }, {
2323
virt_text = { { '󰱒 ', 'RmChecked' }, { ' ', 'Normal' } },
2424
virt_text_pos = 'overlay',
2525
})
26-
marks:add(row:get(), row:get(), 5, 6, util.conceal())
27-
marks:add(row:inc(), row:get(), 0, 2, util.conceal())
28-
marks:add(row:get(), row:get(), 2, 6, {
26+
marks:add(row:get(0, 0), { 5, 6 }, util.conceal())
27+
marks:add(row:get(1, 0), { 0, 2 }, util.conceal())
28+
marks:add(row:get(0, 0), { 2, 6 }, {
2929
virt_text = { { '󰥔 ', 'RmTodo' } },
3030
virt_text_pos = 'overlay',
3131
})
32-
marks:add(row:get(), nil, 6, nil, {
32+
marks:add(row:get(0), { 6 }, {
3333
virt_text = { { ' ', 'Normal' } },
3434
virt_text_pos = 'inline',
3535
})
36-
marks:add(row:inc(), row:get(), 0, 2, util.bullet(1))
36+
marks:add(row:get(1, 0), { 0, 2 }, util.bullet(1))
3737

38-
marks:add(row:inc(2), nil, 0, nil, {
38+
marks:add(row:get(2), { 0 }, {
3939
virt_text = { { (''):rep(vim.o.columns), 'RmDash' } },
4040
virt_text_pos = 'overlay',
4141
})
4242

43-
marks:add(row:inc(2), row:get(), 2, 3, util.quote('RmQuote1'))
44-
marks:add(row:inc(), row:get(), 2, 3, util.quote('RmQuote1'))
43+
marks:add(row:get(2, 0), { 2, 3 }, util.quote('RmQuote1'))
44+
marks:add(row:get(1, 0), { 2, 3 }, util.quote('RmQuote1'))
4545

4646
util.assert_view(marks, {
4747
'󰫎 󰲡 Checkbox / Dash / Quote',

tests/callout_spec.lua

Lines changed: 51 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -8,91 +8,91 @@ describe('callout.md', function()
88

99
local marks, row = util.marks(), util.row()
1010

11-
marks:add(row:get(), nil, 0, nil, util.heading.sign(1))
12-
marks:add(row:get(), row:get(), 0, 1, util.heading.icon(1))
13-
marks:add(row:get(), row:inc(), 0, 0, util.heading.bg(1))
11+
marks:add(row:get(0), { 0 }, util.heading.sign(1))
12+
marks:add(row:get(0, 0), { 0, 1 }, util.heading.icon(1))
13+
marks:add(row:get(0, 1), { 0, 0 }, util.heading.bg(1))
1414

1515
local info = 'RmInfo'
16-
marks:add(row:inc(), row:get(), 0, 1, util.quote(info))
17-
marks:add(row:get(), row:get(), 2, 9, {
16+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(info))
17+
marks:add(row:get(0, 0), { 2, 9 }, {
1818
virt_text = { { '󰋽 Note', info } },
1919
virt_text_pos = 'overlay',
2020
})
21-
marks:add(row:inc(), row:get(), 0, 1, util.quote(info))
22-
marks:add(row:inc(), row:get(), 0, 1, util.quote(info))
23-
marks:add(row:inc(), row:get(), 0, 1, util.quote(info))
24-
marks:add(row:inc(), row:get(), 0, 1, util.quote(info))
21+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(info))
22+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(info))
23+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(info))
24+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(info))
2525

26-
marks:add(row:inc(2), nil, 0, nil, util.heading.sign(1))
27-
marks:add(row:get(), row:get(), 0, 1, util.heading.icon(1))
28-
marks:add(row:get(), row:inc(), 0, 0, util.heading.bg(1))
26+
marks:add(row:get(2), { 0 }, util.heading.sign(1))
27+
marks:add(row:get(0, 0), { 0, 1 }, util.heading.icon(1))
28+
marks:add(row:get(0, 1), { 0, 0 }, util.heading.bg(1))
2929

3030
local ok = 'RmSuccess'
31-
marks:add(row:inc(), row:get(), 0, 1, util.quote(ok))
32-
marks:add(row:get(), row:get(), 2, 8, {
31+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(ok))
32+
marks:add(row:get(0, 0), { 2, 8 }, {
3333
virt_text = { { '󰌶 Tip', ok } },
3434
virt_text_pos = 'overlay',
3535
})
36-
marks:add(row:inc(), row:get(), 0, 1, util.quote(ok))
37-
marks:add(row:inc(), row:get(), 0, 1, util.quote(ok))
38-
marks:add(row:get(), nil, 2, nil, util.code.sign('lua'))
39-
marks:add(row:get(), row:get(), 2, 5, util.conceal())
40-
marks:add(row:get(), nil, 5, nil, util.code.icon('lua'))
41-
marks:add(row:get(), row:get(), 5, 8, util.conceal())
42-
marks:add(row:get(), row:inc(), 2, 0, util.code.border('above'))
43-
marks:add(row:get(), row:get(), 0, 1, util.quote(ok))
44-
marks:add(row:get(), row:inc(), 2, 0, util.code.bg())
45-
marks:add(row:get(), row:get(), 0, 1, util.quote(ok))
46-
marks:add(row:get(), row:get(), 2, 5, util.conceal())
47-
marks:add(row:get(), row:get(), 2, 5, util.conceal_lines())
48-
49-
marks:add(row:inc(2), nil, 0, nil, util.heading.sign(1))
50-
marks:add(row:get(), row:get(), 0, 1, util.heading.icon(1))
51-
marks:add(row:get(), row:inc(), 0, 0, util.heading.bg(1))
36+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(ok))
37+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(ok))
38+
marks:add(row:get(0), { 2 }, util.code.sign('lua'))
39+
marks:add(row:get(0, 0), { 2, 5 }, util.conceal())
40+
marks:add(row:get(0), { 5 }, util.code.icon('lua'))
41+
marks:add(row:get(0, 0), { 5, 8 }, util.conceal())
42+
marks:add(row:get(0, 1), { 2, 0 }, util.code.border('above'))
43+
marks:add(row:get(0, 0), { 0, 1 }, util.quote(ok))
44+
marks:add(row:get(0, 1), { 2, 0 }, util.code.bg())
45+
marks:add(row:get(0, 0), { 0, 1 }, util.quote(ok))
46+
marks:add(row:get(0, 0), { 2, 5 }, util.conceal())
47+
marks:add(row:get(0, 0), { 2, 5 }, util.conceal_lines())
48+
49+
marks:add(row:get(2), { 0 }, util.heading.sign(1))
50+
marks:add(row:get(0, 0), { 0, 1 }, util.heading.icon(1))
51+
marks:add(row:get(0, 1), { 0, 0 }, util.heading.bg(1))
5252

5353
local hint = 'RmHint'
54-
marks:add(row:inc(), row:get(), 0, 1, util.quote(hint))
55-
marks:add(row:get(), row:get(), 2, 14, {
54+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(hint))
55+
marks:add(row:get(0, 0), { 2, 14 }, {
5656
virt_text = { { '󰅾 Important', hint } },
5757
virt_text_pos = 'overlay',
5858
})
59-
marks:add(row:inc(), row:get(), 0, 1, util.quote(hint))
59+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(hint))
6060

61-
marks:add(row:inc(2), nil, 0, nil, util.heading.sign(1))
62-
marks:add(row:get(), row:get(), 0, 1, util.heading.icon(1))
63-
marks:add(row:get(), row:inc(), 0, 0, util.heading.bg(1))
61+
marks:add(row:get(2), { 0 }, util.heading.sign(1))
62+
marks:add(row:get(0, 0), { 0, 1 }, util.heading.icon(1))
63+
marks:add(row:get(0, 1), { 0, 0 }, util.heading.bg(1))
6464

6565
local warn = 'RmWarn'
66-
marks:add(row:inc(), row:get(), 0, 1, util.quote(warn))
67-
marks:add(row:get(), row:get(), 2, 12, {
66+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(warn))
67+
marks:add(row:get(0, 0), { 2, 12 }, {
6868
virt_text = { { '󰀪 Custom Title', warn } },
6969
virt_text_pos = 'overlay',
7070
conceal = '',
7171
})
72-
marks:add(row:inc(), row:get(), 0, 1, util.quote(warn))
72+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(warn))
7373

74-
marks:add(row:inc(2), nil, 0, nil, util.heading.sign(1))
75-
marks:add(row:get(), row:get(), 0, 1, util.heading.icon(1))
76-
marks:add(row:get(), row:inc(), 0, 0, util.heading.bg(1))
74+
marks:add(row:get(2), { 0 }, util.heading.sign(1))
75+
marks:add(row:get(0, 0), { 0, 1 }, util.heading.icon(1))
76+
marks:add(row:get(0, 1), { 0, 0 }, util.heading.bg(1))
7777

7878
local err = 'RmError'
79-
marks:add(row:inc(), row:get(), 0, 1, util.quote(err))
80-
marks:add(row:get(), row:get(), 2, 12, {
79+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(err))
80+
marks:add(row:get(0, 0), { 2, 12 }, {
8181
virt_text = { { '󰳦 Caution', err } },
8282
virt_text_pos = 'overlay',
8383
})
84-
marks:add(row:inc(), row:get(), 0, 1, util.quote(err))
84+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(err))
8585

86-
marks:add(row:inc(2), nil, 0, nil, util.heading.sign(1))
87-
marks:add(row:get(), row:get(), 0, 1, util.heading.icon(1))
88-
marks:add(row:get(), row:inc(), 0, 0, util.heading.bg(1))
86+
marks:add(row:get(2), { 0 }, util.heading.sign(1))
87+
marks:add(row:get(0, 0), { 0, 1 }, util.heading.icon(1))
88+
marks:add(row:get(0, 1), { 0, 0 }, util.heading.bg(1))
8989

90-
marks:add(row:inc(), row:get(), 0, 1, util.quote(err))
91-
marks:add(row:get(), row:get(), 2, 8, {
90+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(err))
91+
marks:add(row:get(0, 0), { 2, 8 }, {
9292
virt_text = { { '󰨰 Bug', err } },
9393
virt_text_pos = 'overlay',
9494
})
95-
marks:add(row:inc(), row:get(), 0, 1, util.quote(err))
95+
marks:add(row:get(1, 0), { 0, 1 }, util.quote(err))
9696

9797
util.assert_view(marks, {
9898
'󰫎 󰲡 Note',

0 commit comments

Comments
 (0)