From a53af0c94f8f1b6c00f5f5f3fc183a58aab6affe Mon Sep 17 00:00:00 2001 From: Nathan Gass Date: Wed, 17 Jul 2013 11:32:00 +0000 Subject: revert special --opts syntax as -opts does not warn on missing dashes anyway --- it.class | 6 +++--- tests/exec.t | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/it.class b/it.class index 0c6d4a6..18f9ffc 100644 --- a/it.class +++ b/it.class @@ -550,16 +550,16 @@ static function shell_command(/* $cmd, $values1 = array(), ... */) #for escapeshellarg in it::_exec_quotevalue $oldlocale = setlocale(LC_CTYPE, 0); setlocale(LC_CTYPE, 'de_CH'); - foreach (it::match('({(-?-?)([a-z0-9]\w*)})', $cmd, array('all' => true)) as $tags) + foreach (it::match('({(-?)([a-z0-9]\w*)})', $cmd, array('all' => true)) as $tags) { list($tag, $option, $key) = $tags; $parts = array(); if ($option) { - foreach ((array)$values[$option . $key] as $key => $value) + foreach ((array)$values["-$key"] as $key => $value) { - if ($option == '--') + if ($key[0] != '-') $key = ($key[1] ? '--' : '-') . $key; if ($value === true || $value === false || $value === null) $parts[] = $value ? $key : ""; diff --git a/tests/exec.t b/tests/exec.t index 4702681..da5113d 100755 --- a/tests/exec.t +++ b/tests/exec.t @@ -52,14 +52,14 @@ is( "... with disabled short option" ); is( - it::shell_command("echo {--opts}", array('--opts' => array('longopt' => true))), + it::shell_command("echo {-opts}", array('-opts' => array('longopt' => true))), "echo --longopt", - "... long option without dashes for --opts" + "... long option without dashes" ); is( - it::shell_command("echo {--opts}", array('--opts' => array('s' => true))), + it::shell_command("echo {-opts}", array('-opts' => array('s' => true))), "echo -s", - "... short option without dashes for --opts" + "... short option without dashes" ); foreach (array("", "C", "de_CH", "de_CH.utf8") as $locale) { -- cgit v1.2.3