summaryrefslogtreecommitdiff
path: root/lua/tests/manual/resolver_spec.lua
diff options
context:
space:
mode:
authorTJ DeVries <devries.timothyj@gmail.com>2020-09-12 14:56:58 -0400
committerTJ DeVries <devries.timothyj@gmail.com>2020-09-12 14:56:58 -0400
commitf449c0499ca63e653c9829c2e40bff7594e9eb23 (patch)
treeb9fa4cc01c589234fc8c5f9b9b313002a6e56629 /lua/tests/manual/resolver_spec.lua
parent58ab225dca31607c4a2e1a5fbebdb26b5be1d5e1 (diff)
feat: Better border configuration.
Started adding `resolve` which will allow you to do some really nice stuff easily with options to get the window options from a variety of inputs. You can see how we do it in pickers.lua for borders & borderchars currently.
Diffstat (limited to 'lua/tests/manual/resolver_spec.lua')
-rw-r--r--lua/tests/manual/resolver_spec.lua58
1 files changed, 58 insertions, 0 deletions
diff --git a/lua/tests/manual/resolver_spec.lua b/lua/tests/manual/resolver_spec.lua
new file mode 100644
index 0000000..b71e560
--- /dev/null
+++ b/lua/tests/manual/resolver_spec.lua
@@ -0,0 +1,58 @@
+RELOAD('telescope')
+
+local resolve = require('telescope.config.resolve')
+
+local eq = function(a, b)
+ if a ~= b then
+ error(string.format(
+ "Expected a == b, got: %s and %s", vim.inspect(a), vim.inspect(b)
+ ))
+ end
+end
+
+local opt = nil
+
+local height_config = 0.8
+opt = resolve.win_option(height_config)
+
+eq(height_config, opt.preview)
+eq(height_config, opt.prompt)
+eq(height_config, opt.results)
+
+opt = resolve.win_option(nil, height_config)
+
+eq(height_config, opt.preview)
+eq(height_config, opt.prompt)
+eq(height_config, opt.results)
+
+local table_val = {'a'}
+opt = resolve.win_option(nil, table_val)
+eq(table_val, opt.preview)
+eq(table_val, opt.prompt)
+eq(table_val, opt.results)
+
+local prompt_override = {'a', prompt = 'b'}
+opt = resolve.win_option(prompt_override)
+eq('a', opt.preview)
+eq('a', opt.results)
+eq('b', opt.prompt)
+
+local all_specified = {preview = 'a', prompt = 'b', results = 'c'}
+opt = resolve.win_option(all_specified)
+eq('a', opt.preview)
+eq('b', opt.prompt)
+eq('c', opt.results)
+
+local some_specified = {prompt = 'b', results = 'c'}
+opt = resolve.win_option(some_specified, 'a')
+eq('a', opt.preview)
+eq('b', opt.prompt)
+eq('c', opt.results)
+
+-- local true_table = {true}
+-- opt = resolve.win_option(some_specified, 'a')
+-- eq('a', opt.preview)
+-- eq('b', opt.prompt)
+-- eq('c', opt.results)
+
+print("DONE!")