diff options
| author | Justin M. Keyes <justinkz@gmail.com> | 2026-07-20 17:16:51 +0200 |
|---|---|---|
| committer | Justin M. Keyes <justinkz@gmail.com> | 2026-07-21 13:22:39 +0200 |
| commit | 6d8c8b18d551d0be0490640c00fabb816727ec10 (patch) | |
| tree | bc7ace573d41eb0a20092054b79e70a0ce6f75f9 /test/functional/vimscript/execute_spec.lua | |
| parent | a71ee754ee4bb88fc2d2fbe67972f24c5a6d7883 (diff) | |
| download | rneovim-6d8c8b18d551d0be0490640c00fabb816727ec10.tar.gz rneovim-6d8c8b18d551d0be0490640c00fabb816727ec10.tar.bz2 rneovim-6d8c8b18d551d0be0490640c00fabb816727ec10.zip | |
test(harness): migrate away from magic globals
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`.
Diffstat (limited to 'test/functional/vimscript/execute_spec.lua')
| -rw-r--r-- | test/functional/vimscript/execute_spec.lua | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/test/functional/vimscript/execute_spec.lua b/test/functional/vimscript/execute_spec.lua index f57f6307ea..8a5a6d91b3 100644 --- a/test/functional/vimscript/execute_spec.lua +++ b/test/functional/vimscript/execute_spec.lua @@ -2,6 +2,7 @@ local t = require('test.testutil') local n = require('test.functional.testnvim')() local Screen = require('test.functional.ui.screen') +local describe, it, before_each = t.describe, t.it, t.before_each local eq = t.eq local eval = n.eval local clear = n.clear |