Skip to content
Snippets Groups Projects
Commit 63b5748e authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

-g runs the specified test(s) with gdb!

parent e2590430
No related branches found
No related tags found
No related merge requests found
...@@ -51,6 +51,7 @@ my $short; ...@@ -51,6 +51,7 @@ my $short;
my $verbose; my $verbose;
my $debugprotocol; my $debugprotocol;
my $anyway; my $anyway;
my $gdbthis; # run test case with gdb debugger
####################################################################### #######################################################################
# Return the pid of the server as found in the given pid file # Return the pid of the server as found in the given pid file
...@@ -397,12 +398,13 @@ sub singletest { ...@@ -397,12 +398,13 @@ sub singletest {
} }
# run curl, add -v for debug information output # run curl, add -v for debug information output
my $CMDLINE="$CURL $out--include -v --silent $cmd >$STDOUT 2>$STDERR"; my $cmdargs="$out--include -v --silent $cmd";
my $STDINFILE="$TESTDIR/stdin$NUMBER.txt"; my $STDINFILE="$TESTDIR/stdin$NUMBER.txt";
if(-f $STDINFILE) { if(-f $STDINFILE) {
$CMDLINE .= " < $STDINFILE"; $cmdargs .= " < $STDINFILE";
} }
my $CMDLINE="$CURL $cmdargs >$STDOUT 2>$STDERR";
if($verbose) { if($verbose) {
print "$CMDLINE\n"; print "$CMDLINE\n";
...@@ -410,9 +412,20 @@ sub singletest { ...@@ -410,9 +412,20 @@ sub singletest {
print CMDLOG "$CMDLINE\n"; print CMDLOG "$CMDLINE\n";
my $res;
# run the command line we built # run the command line we built
my $res = system("$CMDLINE"); if($gdbthis) {
$res /= 256; open(GDBCMD, ">log/gdbcmd");
print GDBCMD "set args $cmdargs\n";
print GDBCMD "show args\n";
close(GDBCMD);
system("gdb $CURL -x log/gdbcmd");
$res =0; # makes it always continue after a debugged run
}
else {
$res = system("$CMDLINE");
$res /= 256;
}
my $ERRORCODE = "$TESTDIR/error$NUMBER.txt"; my $ERRORCODE = "$TESTDIR/error$NUMBER.txt";
...@@ -560,6 +573,10 @@ do { ...@@ -560,6 +573,10 @@ do {
# have the servers display protocol output # have the servers display protocol output
$debugprotocol=1; $debugprotocol=1;
} }
elsif ($ARGV[0] eq "-g") {
# run this test with gdb
$gdbthis=1;
}
elsif($ARGV[0] eq "-s") { elsif($ARGV[0] eq "-s") {
# short output # short output
$short=1; $short=1;
...@@ -574,6 +591,7 @@ do { ...@@ -574,6 +591,7 @@ do {
Usage: runtests.pl [-h][-s][-v][numbers] Usage: runtests.pl [-h][-s][-v][numbers]
-a continue even if a test fails -a continue even if a test fails
-d display server debug info -d display server debug info
-g run the test case with gdb
-h this help text -h this help text
-s short output -s short output
-v verbose output -v verbose output
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment