From e6175f6389ea3fdc685fe2158948d49caa8cdba2 Mon Sep 17 00:00:00 2001 From: ckipp01 Date: Sun, 30 May 2021 13:08:43 +0200 Subject: fix(vim.opt): Get window options before setting. This closes #14677, but I also am a little unsure if there are times where this may not be correct. However, this just changes the behavior that even if `was_set` was false, we still get for `nvim_win_get_option`. --- test/functional/lua/vim_spec.lua | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'test/functional/lua/vim_spec.lua') diff --git a/test/functional/lua/vim_spec.lua b/test/functional/lua/vim_spec.lua index 51a0b58172..890f6427bb 100644 --- a/test/functional/lua/vim_spec.lua +++ b/test/functional/lua/vim_spec.lua @@ -1228,6 +1228,21 @@ describe('lua stdlib', function() eq("only-local", result[8]) end) + it('should allow you to retrieve window opts even if they have not been set', function() + local result = exec_lua [[ + local result = {} + table.insert(result, vim.opt.number:get()) + table.insert(result, vim.opt_local.number:get()) + + vim.opt_local.number = true + table.insert(result, vim.opt.number:get()) + table.insert(result, vim.opt_local.number:get()) + + return result + ]] + eq({false, false, true, true}, result) + end) + it('should allow all sorts of string manipulation', function() eq({'hello', 'hello world', 'start hello world'}, exec_lua [[ local results = {} -- cgit