aboutsummaryrefslogtreecommitdiff
path: root/test/functional/fixtures/shell-test.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/fixtures/shell-test.c')
-rw-r--r--test/functional/fixtures/shell-test.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/test/functional/fixtures/shell-test.c b/test/functional/fixtures/shell-test.c
index d9ec254aff..3f3976ece5 100644
--- a/test/functional/fixtures/shell-test.c
+++ b/test/functional/fixtures/shell-test.c
@@ -12,8 +12,12 @@ static void help(void)
puts(" shell-test");
puts(" shell-test EXE");
puts(" Prints \"ready $ \" to stderr.");
+ puts(" shell-test -t {prompt text}");
+ puts(" Prints \"{prompt text} $ \" to stderr.");
puts(" shell-test EXE \"prog args...\"");
puts(" Prints \"ready $ prog args...\\n\" to stderr.");
+ puts(" shell-test -t {prompt text} EXE \"prog args...\"");
+ puts(" Prints \"{prompt text} $ progs args...\" to stderr.");
puts(" shell-test REP {byte} \"line line line\"");
puts(" Prints \"{lnr}: line line line\\n\" to stdout {byte} times.");
puts(" I.e. for `shell-test REP ab \"test\"'");
@@ -30,7 +34,17 @@ int main(int argc, char **argv)
}
if (argc >= 2) {
- if (strcmp(argv[1], "EXE") == 0) {
+ if (strcmp(argv[1], "-t") == 0) {
+ if (argc < 3) {
+ fprintf(stderr,"Missing prompt text for -t option\n");
+ return 5;
+ } else {
+ fprintf(stderr, "%s $ ", argv[2]);
+ if (argc >= 5 && (strcmp(argv[3], "EXE") == 0)) {
+ fprintf(stderr, "%s\n", argv[4]);
+ }
+ }
+ } else if (strcmp(argv[1], "EXE") == 0) {
fprintf(stderr, "ready $ ");
if (argc >= 3) {
fprintf(stderr, "%s\n", argv[2]);