From f15c8ccfad18f8f9f1f57b474bfcd84be9dba40e Mon Sep 17 00:00:00 2001 From: Marc Hamamji Date: Tue, 11 Apr 2023 18:05:18 +0300 Subject: [PATCH] Fix rust bins not getting picked up --- lua/runner/handlers/languages/rust/init.lua | 27 ++++++++++----------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/lua/runner/handlers/languages/rust/init.lua b/lua/runner/handlers/languages/rust/init.lua index 98a7292..6d97aca 100644 --- a/lua/runner/handlers/languages/rust/init.lua +++ b/lua/runner/handlers/languages/rust/init.lua @@ -2,10 +2,10 @@ local helpers = require('runner.handlers.helpers') local utils = require('runner.handlers.utils') return function(buffer) - utils.run_command(utils.script_path() .. 'get-bins.sh', function(output) + utils.run_command(utils.script_path() .. 'get-bins.sh', function(bins_output) local bins = {} - for _, line in pairs(output) do + for _, line in pairs(bins_output) do for _, data in pairs(line) do if vim.trim(data) ~= '' then bins[#bins + 1] = data @@ -13,30 +13,29 @@ return function(buffer) end end - local run_handlers = {} + local handlers = {} for _, bin in pairs(bins) do - run_handlers['Run "' .. bin .. '"'] = helpers.shell_handler('cargo run --bin ' .. bin) + handlers['Run "' .. bin .. '"'] = helpers.shell_handler('cargo run --bin ' .. bin) end - utils.run_command(utils.script_path() .. 'get-tests.sh', function(output) - local bins = {} + utils.run_command(utils.script_path() .. 'get-tests.sh', function(tests_output) + local tests = {} - for _, line in pairs(output) do + for _, line in pairs(tests_output) do for _, data in pairs(line) do if vim.trim(data) ~= '' then - bins[#bins + 1] = data + tests[#tests + 1] = data end end end - local handlers = { - unpack(run_handlers), - ['Custom'] = helpers.shell_handler('cargo ', true), - ['Test all'] = helpers.shell_handler('cargo test'), - } + handlers['Custom'] = helpers.shell_handler('cargo ', true) + handlers['Test all'] = helpers.shell_handler('cargo test') - for _, bin in pairs(bins) do + P(handlers) + + for _, bin in pairs(tests) do handlers['Test "' .. bin .. '"'] = helpers.shell_handler('cargo test --test ' .. bin) end