mirror of
https://github.com/neovim/neovim.git
synced 2026-07-31 20:59:11 +00:00
Problem: The magic globals `it`, `describe`, etc., are more trouble than they are worth. - Hooking into `after_each` requires `getfenv()` hacks. - They confuse luals/emmylua, because the top-level `.luarc.json` isn't merged with `test/.luarc.json` (apparently a luals limitation?) - They totally defeat discoverability because the user just has to "know" about the various magic symbols. So they harm DX, which means they serve no purpose at all. Solution: - Expose the test API from `testutil`, so tests can call `t.it()`, `t.describe()`, etc., in the conventional way. - Drop `getfenv()` hacks. - Drop the `setfenv()` injection in `load_chunk`. - Drop `test/_meta.lua`.
52 lines
1.0 KiB
Lua
52 lines
1.0 KiB
Lua
-- Tests Blockwise Visual when there are TABs before the text.
|
|
-- First test for undo working properly when executing commands from a register.
|
|
-- Also test this in an empty buffer.
|
|
|
|
local n = require('test.functional.testnvim')()
|
|
local t = require('test.testutil')
|
|
|
|
local describe, it, setup = t.describe, t.it, t.setup
|
|
local clear, feed, insert = n.clear, n.feed, n.insert
|
|
local feed_command, expect = n.feed_command, n.expect
|
|
|
|
describe('blockwise visual', function()
|
|
setup(clear)
|
|
|
|
it('is working', function()
|
|
insert([[
|
|
123456
|
|
234567
|
|
345678
|
|
|
|
test text test tex start here
|
|
some text
|
|
test text
|
|
test text
|
|
|
|
x jAy kdd
|
|
Ox jAy kdd]])
|
|
|
|
feed(":let @a = 'Ox<C-v><Esc>jAy<C-v><Esc>kdd'<cr>")
|
|
feed('G0k@au')
|
|
feed_command('new')
|
|
feed('@auY')
|
|
feed_command('quit')
|
|
feed('GP')
|
|
feed_command('/start here')
|
|
feed('"by$<C-v>jjlld')
|
|
feed_command('/456')
|
|
feed('<C-v>jj"bP')
|
|
feed_command('$-3,$d')
|
|
|
|
expect([[
|
|
123start here56
|
|
234start here67
|
|
345start here78
|
|
|
|
test text test tex rt here
|
|
somext
|
|
tesext
|
|
test text]])
|
|
end)
|
|
end)
|