10 my $shell = App::MrShell->new;
11 my @cmd = ("a b", '%h', "c d", '%h', "e f");
15 my @res = $shell->set_subst_vars('%h'=>$host)->subst_cmd_vars(@cmd);
16 ok("@res", "a b nombre c d nombre e f");
20 my $host = "via1!nombre";
21 my @res = $shell->set_subst_vars('%h'=>$host)->subst_cmd_vars(@cmd);
22 ok("@res", 'a b via1 "a b" nombre "c d" via1 "a b" via1 "\"a b\"" nombre "\"c d\"" nombre "\"e f\""');
26 @cmd = map {my @a = map { (m/^\[/ or $_ eq '%h') ? $_ : substr $_, 0, 1} split; "@a"} @App::MrShell::DEFAULT_SHELL_COMMAND;
27 # do { local $" = ")("; warn " wtf(@cmd)\n" };
29 my $host = "via1!via2!via3!nombre";
30 my @res = $shell->set_subst_vars('%h'=>$host)->subst_cmd_vars(@cmd);
31 ok("@res", 's - B y - S n - C 2 via1 s - "B y" - "S n" - "C 2" via2 s - "\"B y\"" - "\"S n\"" - "\"C 2\"" via3 s - "\"\\\\\\"B y\\\\\\"\"" - "\"\\\\\\"S n\\\\\\"\"" - "\"\\\\\\"C 2\\\\\\"\"" nombre');