diff options
author | Jeremy Harris <jgh146exb@wizmail.org> | 2015-12-12 00:31:01 +0000 |
---|---|---|
committer | Jeremy Harris <jgh146exb@wizmail.org> | 2015-12-12 01:10:32 +0000 |
commit | bdf36f7cd98fba7717e078de8c6f6bd3e5927cae (patch) | |
tree | 40b18e4be05531b92494c95cf4578ce2a4310976 /test/runtest | |
parent | 2d8d625b2b96260d2517e59b896eb03e5c33aaf3 (diff) |
Testsuite: add testcase for Redis. Bug 1755
Diffstat (limited to 'test/runtest')
-rwxr-xr-x | test/runtest | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/test/runtest b/test/runtest index d62da04c0..97a32cb7f 100755 --- a/test/runtest +++ b/test/runtest @@ -2210,6 +2210,45 @@ elsif (/^([A-Z_]+=\S+\s+)?(\d+)?\s*(sudo(?:\s+-u\s+(\w+))?\s+)?exim(_\S+)?\s+(.* } } +# The "background" command is run but not waited-for, like exim -DSERVER=server. +# One script line is read and fork-exec'd. The PID is stored for a later +# killdaemon. + +elsif (/^background$/) + { + my $line; +# $pidfile = "$parm_cwd/aux-var/server-daemon.pid"; + + $_ = <SCRIPT>; $lineno++; + chomp; + $line = $_; + if ($debug) { printf ">> daemon: $line >>test-stdout 2>>test-stderr\n"; } + + my $pid = fork(); + if (not defined $pid) { die "** fork failed: $!\n" } + if (not $pid) { + print "[$$]>> ${line}\n" if ($debug); + close(STDIN); + open(STDIN, "<", "test-stdout"); + close(STDOUT); + open(STDOUT, ">>", "test-stdout"); + close(STDERR); + open(STDERR, ">>", "test-stderr-server"); + exec "exec ${line}"; + exit(1); + } + +# open(my $fh, ">", $pidfile) || +# tests_exit(-1, "Failed to open $pidfile: $!"); +# printf($fh, "%d\n", $pid); +# close($fh); + + while (<SCRIPT>) { $lineno++; last if /^\*{4}\s*$/; } # Ignore any input + select(undef, undef, undef, 0.3); # Let the daemon get going + return (3, { exim_pid => $pid }); # Don't wait + } + + # Unknown command @@ -2811,6 +2850,22 @@ if (defined $parm_support{'Content_Scanning'}) ################################################## +# Check for redis # +################################################## +if (defined $parm_support{'Experimental_Redis'}) + { + if (system("redis-server -v 2>/dev/null >/dev/null") == 0) + { + print "The redis-server command works\n"; + $parm_running{'redis'} = ' '; + } + else + { + print "The redis-server command failed: assume Redis not installed\n"; + } + } + +################################################## # Test for the basic requirements # ################################################## |