From 9bdb3cb5c665eab02b6e14345aeb4e69a20596c7 Mon Sep 17 00:00:00 2001 From: Urban Müller Date: Mon, 29 Mar 2021 17:26:59 +0200 Subject: remove => false args in it::exec, consistent with it_html --- it.class | 3 ++- test/exec.t | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/it.class b/it.class index c219f19..5b83317 100644 --- a/it.class +++ b/it.class @@ -704,7 +704,8 @@ static function shell_command($cmd, ...$args) else { foreach ((array)$values[$key] as $value) - $parts[] = it::_exec_quotevalue($value, "cmd=$cmd key=$key val=$value"); + if ($value !== false) + $parts[] = it::_exec_quotevalue($value, "cmd=$cmd key=$key val=$value"); } $replacements[$tag] = implode(" ", $parts); diff --git a/test/exec.t b/test/exec.t index 5f78482..09e16da 100755 --- a/test/exec.t +++ b/test/exec.t @@ -9,6 +9,9 @@ is(it::exec("echo {0}", 'gna'), "gna\n", "exec with positional argument"); is(it::shell_command("echo {arg}", ['arg' => 'gna07,-:blah']), "echo gna07,-:blah", "don't quote arguments with only whitelistes characters"); is(it::shell_command("echo {arg}", ['arg' => '2>&1']), "echo '2>&1'", "quote arguments with dangerous characters"); is(it::shell_command("echo {arg}", ['arg' => '']), "echo ''", "quote empty arguments"); +is(it::shell_command("echo {arg}", ['arg' => null]), "echo ", "remove null values"); +is(it::shell_command("echo {arg}", ['arg' => false]), "echo ", "remove false values"); +is(it::shell_command("echo {arg}", ['arg' => []]), "echo ", "remove empty arrays"); is( -- cgit v1.2.3