diff options
| author | Evgeni Chasnovski <evgeni.chasnovski@gmail.com> | 2025-08-09 17:28:14 +0300 |
|---|---|---|
| committer | Evgeni Chasnovski <evgeni.chasnovski@gmail.com> | 2025-08-09 17:54:39 +0300 |
| commit | acff86601efd3923fdb1ef4088574fff6befbe37 (patch) | |
| tree | f97c65e1700a52438e7815f66031e600cc4eb7b7 /test/functional/plugin/pack_spec.lua | |
| parent | dd828690c747d0adf19b9f455e0b4cfe2d1ae954 (diff) | |
| download | rneovim-acff86601efd3923fdb1ef4088574fff6befbe37.tar.gz rneovim-acff86601efd3923fdb1ef4088574fff6befbe37.tar.bz2 rneovim-acff86601efd3923fdb1ef4088574fff6befbe37.zip | |
feat(pack): allow skip install confirmation in `add()`
Problem: No way to skip install confirmation in `add()`. Having install
confirmation by default is a more secure design. However, users are
usually aware of the fact that plugin will be installed and there is
currently no way to skip confirmation.
Plus it can introduce inconvenience on the clean config initialization
if it is modularized with many `vim.pack.add()` calls (leads to
confirming installation many times in a row).
Solution: Add `opts.confirm` option that can skip install confirmation.
Diffstat (limited to 'test/functional/plugin/pack_spec.lua')
| -rw-r--r-- | test/functional/plugin/pack_spec.lua | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/test/functional/plugin/pack_spec.lua b/test/functional/plugin/pack_spec.lua index 5123321121..165afa1f49 100644 --- a/test/functional/plugin/pack_spec.lua +++ b/test/functional/plugin/pack_spec.lua @@ -332,6 +332,22 @@ describe('vim.pack', function() eq({ confirm_msg, 'Proceed? &Yes\n&No', 1, 'Question' }, exec_lua('return _G.confirm_args')) end) + it('respects `opts.confirm`', function() + exec_lua(function() + _G.confirm_used = false + ---@diagnostic disable-next-line: duplicate-set-field + vim.fn.confirm = function() + _G.confirm_used = true + return 1 + end + + vim.pack.add({ repos_src.basic }, { confirm = false }) + end) + + eq(false, exec_lua('return _G.confirm_used')) + eq('basic main', exec_lua('return require("basic")')) + end) + it('installs at proper version', function() local out = exec_lua(function() vim.pack.add({ |