Commit Graph

223 Commits

Author SHA1 Message Date
Daniel Stenberg 177848ed27 detect SSL library properly and display it on startup 2005-04-27 09:59:29 +00:00
Daniel Stenberg f0057977b7 ignore the memdump file when showing files after a failure 2005-04-22 20:47:35 +00:00
Daniel Stenberg b8d7a13ea3 modified the test case success reporting, added "test N out of Y" and
"remaining: [time]" outputs to hint users about what to expect
2005-04-22 11:51:06 +00:00
Daniel Stenberg 14424f7058 Modified the FTP server to use the new 'sockfilt' program to do all the socket
level stuff. The FTP server communicates with sockfilt using perl's open2().
This enables easier IPv6 support and hopefully FTP-SSL support in the future.
Added four test cases for FTP-ipv6.
2005-04-18 06:57:44 +00:00
Daniel Stenberg cd1144dc24 make the ftp server support reply/servercmd, and make SLOWDOWN work, and
update the docs accordingly
2005-04-14 22:52:08 +00:00
Daniel Stenberg 0050ab2a3d support tests that requires 'OpenSSL' specificly 2005-04-12 07:18:48 +00:00
Daniel Stenberg 3e5a32671c Make NTLM tests depend on the NTLM feature at not SSL, since the NTLM support
is no longer only present when built with SSL support.
2005-03-21 08:14:32 +00:00
Daniel Stenberg 67f04d2d5f support multiple error codes for a test case since some things just vary
between platforms
2005-03-17 08:17:48 +00:00
Daniel Stenberg 4a6cc54eb5 check for the HTTPS server in a manner similar to how we check for the HTTP
server
2005-03-16 22:02:09 +00:00
Daniel Stenberg 160d6b26b0 Moved out the valgrind report parser to valgrind.pm, to make it easier to
test it outside the test suite. Now we also disable valgrind usage if libcurl
was built shared, as then valgrind is only testing the wrapper-script running
shell which is pointless.
2005-02-10 08:50:33 +00:00
Daniel Stenberg 6a99ab098c Bugfixed the parser that scans the valgrind report outputs. I noticed that it
previously didn't detect and report the "Conditional jump or move depends on
uninitialised value(s)" error.

When I fixed this, I caught a few curl bugs with it. And then I had to spend
time to make the test suite IGNORE these errors when OpenSSL is used since it
produce massive amounts of valgrind warnings (but only of the "Conditional..."
kind it seems).

So, if a test that requires SSL is run, it ignores the "Conditional..."
errors, and you'll get a "valgrind PARTIAL" output instead of "valgrind OK".
2005-01-30 12:56:36 +00:00
Daniel Stenberg 0859cd2444 when using valgrind, include a much longer stack trace 2005-01-29 13:06:31 +00:00
Daniel Stenberg 289a42f050 Make the debug build get the debug dump file path from the environment
variable to allow the test suite to better control where it ends up.
2005-01-27 15:51:03 +00:00
Daniel Stenberg 291a908f19 Added support for "verify" => "stripfile" to strip contents of the file that
is being checked.

Also made the server retrying sleep only one second instead of three, to reduce
some waiting when fooling around with the servers.
2005-01-20 22:48:43 +00:00
Daniel Stenberg 7bfd58d41f Add support for server 'ftp2' which is a second FTP server. Useful for 3rd
party transfer tests or tests that need two FTP servers.
2005-01-17 20:20:34 +00:00
Daniel Stenberg cf51f7fb65 output better error detection, like when ipv6 can't resolve 2005-01-15 09:21:51 +00:00
Daniel Stenberg 5a8097a4d5 fixed the valgrind log check and make it possible to disable it for a specific
test, see test 509
2005-01-07 21:11:13 +00:00
Daniel Stenberg 1225ad58bd set debug curl too when -c is used 2004-12-21 10:10:40 +00:00
Daniel Stenberg ff54a74b4d duplicate ! typo 2004-12-17 10:09:06 +00:00
Daniel Stenberg 0b85e53af2 fix skip-reason 2004-12-16 22:45:06 +00:00
Daniel Stenberg e47b5d4e6c Provide better reasons for why test cases are skipped. Also, don't show the
SKIPPED stuff in the short output. Some platforms get quite a lot of SKIPPED
and they don't add much value and only clutter screen space.
2004-12-16 14:18:11 +00:00
Daniel Stenberg d3b414724b Dinar in bug report #1086121, found a file handle leak when a multipart
formpost (including a file upload part) was aborted before the whole file was
sent.
2004-12-16 09:52:36 +00:00
Daniel Stenberg dc28a9c0c1 make sure the ipv6 http server gets its pid stored in a separate file 2004-12-14 21:52:16 +00:00
Daniel Stenberg 4b1350e467 when failing to verify a HTTP server, display what curl said on stderr to
help debugging. (when using ipv6 I fell over this server that didn't have
the ipv6 module loaded)
2004-12-12 23:31:45 +00:00
Daniel Stenberg 9b3b7ad22e HTTP IPv6 support added to the test suite 2004-12-11 21:41:00 +00:00
Daniel Stenberg 4781ff88fd Fixed the array comparison function even more, made the temporary files used
for diff output get created in the log/ dir and no longer deletes them since
they help in understanding the problem, fixing the test case and fixing curl
problems.
2004-11-30 09:53:53 +00:00
Daniel Stenberg fe0585ec91 no longer use the MIME::Base64.pm package as it seems to not be standard
on lots of perl versions, provide our own base64 decoder
2004-11-30 09:27:11 +00:00
Daniel Stenberg 85dd4bfb8d make it possible for a test case to depend on the feature 'libz' 2004-11-29 12:23:02 +00:00
Daniel Stenberg 0eb8414750 Enable test cases to provide sections base64-encoded to be able to test
with binary data.
2004-11-29 12:10:09 +00:00
Daniel Stenberg a34a4af36a last-second-before-commit changes corrected 2004-11-26 08:41:39 +00:00
Daniel Stenberg bf51f05a50 FTP improvements:
If EPSV, EPRT or LPRT is tried and doesn't work, it will not be retried on
the same server again even if a following request is made using a persistent
connection.

If a second request is made to a server, requesting a file from the same
directory as the previous request operated on, libcurl will no longer make
that long series of CWD commands just to end up on the same spot. Note that
this is only for *exactly* the same dir. There is still room for improvements
to optimize the CWD-sending when the dirs are only slightly different.

Added test 210, 211 and 212 to verify these changes. Had to improve the
test script too and added a new primitive to the test file format.
2004-11-25 22:21:49 +00:00
Daniel Stenberg be5cc378c8 introducing the client/precheck concept to allow test 518 to *only* run when
it actually can run and test the FD_SETSIZE stuff it is meant to test
2004-11-23 09:50:16 +00:00
Daniel Stenberg a4e1ac7952 David Phillips fix for test 518 and my extension to make it not run on
systems that can't run it fine.
2004-11-22 22:26:46 +00:00
Daniel Stenberg e1607f5705 just nicer output when this is seen 2004-10-25 11:28:15 +00:00
Daniel Stenberg 2b1673c9c8 Now the test servers and test cases can run on a custom port number. There's
no fixed port numbers in use anymore. Starting now, the default ports the
servers use are 8990 - 8993. There's no option to modify these yet, but
changing the $base option in the top of the runtests.pl script.
2004-09-08 08:08:38 +00:00
Daniel Stenberg 20057aee2e prevent files named ".nfs[something]" from being displayed when failing 2004-08-24 09:23:40 +00:00
Daniel Stenberg 464be27479 Provide support for "transferring" zero bytes FTP files and comparing that
the output file actually is zero bytes after the transfer.
2004-08-23 14:40:43 +00:00
Daniel Stenberg 115dd6f095 Bertrand Demiddelaer made the testing work with valgrind 2.1 2004-07-26 15:45:03 +00:00
Daniel Stenberg 38dc548a87 retry to read the sent request a few times if it doesn't exist the first time 2004-06-22 07:09:47 +00:00
Daniel Stenberg b92e2ab6b1 new daring features, not used by any current test 2004-06-17 08:06:03 +00:00
Daniel Stenberg 1770563fff refuse running the torture tests without a debug build 2004-06-14 08:25:54 +00:00
Daniel Stenberg a807065ccc removed debug output and trailing whitespace 2004-05-17 10:53:34 +00:00
Daniel Stenberg 67532e916c grrr, fix the check again if no ftp server at all is running 2004-05-17 10:51:51 +00:00
Daniel Stenberg 5b0bfc298f improved the check for our own ftp server 2004-05-17 07:59:10 +00:00
Daniel Stenberg d1542bf549 made 'runtests.pl -t' run over all the tests just like other command lines
Also made -t imply -n to disable valgrind, it runs sloooow otherwise.

This now manages to run all tests OK up to test case 100 (the first FTP one)
for me.
2004-05-13 07:52:33 +00:00
Daniel Stenberg f42b10242f revert the accidentally added use of strace 2004-05-11 18:57:03 +00:00
Daniel Stenberg bbafb2eb27 curl_global_init_mem() allows the memory functions to be replaced.
memory.h is included everywhere for this.
2004-05-11 11:30:23 +00:00
Daniel Stenberg e18d27b78a James Bursa's adjustments to make the -t option work for any test case.
The -t is the "torture" test that first runs the test and counts the number
of allocations performed during it, then it runs the test repeatedly over and
over again and makes alloc number N fail to verify that we detect and return
properly from error cases everywhere.
2004-05-10 09:01:45 +00:00
Daniel Stenberg 135394f511 don't use -i when checking for our own server 2004-05-10 06:29:52 +00:00
Daniel Stenberg 358b72bb12 fixed typo 2004-05-05 20:12:59 +00:00
Daniel Stenberg 6c408c885a Temporary disable the logic that runs gdb on a core dump, as it can't blindly
assume that the curl file is a proper binary, it is often a script file
produced by libtool.
2004-05-05 14:34:35 +00:00
Daniel Stenberg 69f4dda74a added a third URL to the torture testing, this one also hangs at some point
for a reason I don't know
2004-05-05 06:11:13 +00:00
Daniel Stenberg 6e118ce50f Display "exit OK" when the exit code has been verified to be OK, and added
initial basic valgrind-log scan for memory leaks it could detect.
2004-04-30 10:37:40 +00:00
Daniel Stenberg e2aaf22d5d support the new libcurl IDN feature, also a first attempt to display a stack
trace if a test results in a 'core' file and gdb is present
2004-04-30 08:03:07 +00:00
Daniel Stenberg da91d6ac66 remove newline from matching pattern 2004-04-29 13:31:57 +00:00
Daniel Stenberg daced8041d No longer uses the valgrind option '--logfile-fd', we use the --logfile
option instead (even though it appends the pid to the file name, making it
harder to figure out its name to parse it after a test has run).

Also made sure we only use valgrind for the actual test command command lines,
not when for example running curl to detect if there are any already running
servers are present etc.
2004-04-23 08:38:43 +00:00
Daniel Stenberg 4dc9179f4b modified how valgrind is run to make sure that file handle 3 exists when
we tell valgrind to use that to send the logfile to
2004-04-22 10:33:55 +00:00
Daniel Stenberg 4661cc7403 don't display the . and .. files when dumping the log/ contents 2004-04-16 07:02:17 +00:00
Daniel Stenberg f57efa1899 clean the log directory between each single test, so that we can better
display all logs and only logs with relevant data when a test fails and -p
is used.
2004-04-15 13:37:19 +00:00
Daniel Stenberg bf6e1053cf display interesting log files on failure, if -p is used 2004-04-14 07:04:45 +00:00
Daniel Stenberg 392a543eff Initial support for dumping the contents of the files in log/ when failing
when -p is used. For easier bug-hunting of autobuild failures. This still
only shows what files that are present in log/, as I believe we need to
filter which files we show on a failure.
2004-04-13 05:57:50 +00:00
Daniel Stenberg 712d0374f7 fix to figure out the "real" windows path when built and run with mingw
Andrs Garca helped out!
2004-03-29 09:26:31 +00:00
Daniel Stenberg 71335e5b99 support 'large_file' as a feature to require for specific tests (such as
test 99)
2004-03-01 16:24:54 +00:00
Daniel Stenberg 4427d91479 runtests.pl now provides the srcdir to the ftpserver so that it can pass
that to loadtest properly.
2004-02-26 09:19:59 +00:00
Daniel Stenberg ccde85d198 %HTTPPORT supported in subVariables 2004-02-20 07:14:58 +00:00
Daniel Stenberg 7ac455fca3 When trying to see if there's a friendly http server on "our" port, we
only accept return code 7 to indicate that there's no server present.
2004-02-20 06:59:17 +00:00
Daniel Stenberg 49ab1d914c provide a source path to the servers to make them find the tests when run
outside the source dir, not needing any symlinks
2004-02-12 14:40:08 +00:00
Daniel Stenberg 3c1bb36193 use the *correct* header! 2004-01-13 08:57:01 +00:00
Daniel Stenberg e043cf22e2 added standard source header 2004-01-13 07:37:29 +00:00
Daniel Stenberg b291bbc9a6 better skip reasons, longer waiting for startup of servers (due to slow/loaded
host), added retrying/waiting for slow stunnel startups
2004-01-12 14:34:48 +00:00
Daniel Stenberg a3ad4295c9 Check the error code AFTER the protocol and data. Only changed to perhaps
get some further input on the notorious test case 91 failures!
2003-12-17 15:33:04 +00:00
Daniel Stenberg dac045029a disable ftps-tests for now, we must make them work with the updated ftps
functionality
2003-11-24 07:17:16 +00:00
Daniel Stenberg b9d3c71178 -n disables valgrind now 2003-11-13 10:05:44 +00:00
Daniel Stenberg decdb93ccb my own system had a bad valgrind, so check that it works at least somewhat
before we use it
2003-10-31 21:34:39 +00:00
Daniel Stenberg 0334509754 Stop using stunnel.pm, we pass in the path from the main script instead.
Also made it easier to stop the test suite with control-c.
2003-10-29 16:27:43 +00:00
Daniel Stenberg ec59aa259f stunnel.pm is removed 2003-10-29 09:13:36 +00:00
Daniel Stenberg ffc6d062d8 now check for and use valgrind, inserted and modified the check for stunnel
and we no longer use the stunnel.pm
2003-10-29 09:12:47 +00:00
Daniel Stenberg ba12c5deda slightly quieter torture test by default 2003-10-27 06:40:48 +00:00
Daniel Stenberg faabd44658 improved the torture testing 2003-10-24 13:00:19 +00:00
Daniel Stenberg b53a5e92c0 Introducing -t to "torture" the memory allocations/failing/bail-outing in
curl and libcurl. -t is not used anywhere automated yet, and it does already
identify memory leaks on failed allocations. Work to do.
2003-10-24 08:53:59 +00:00
Daniel Stenberg db074518c3 allow gdb to check the libtest dir for sources too (for the 500- tests) 2003-10-22 12:46:45 +00:00
Daniel Stenberg 84bc46ac3b When people have environment variables set for protocol proxies, we must make
sure to clear them before we run the tests as they interfere badly otherwise.
2003-09-12 15:41:14 +00:00
Daniel Stenberg 89d9d4e6c8 better report on why tests are skipped, and also show a count of the amount
of test cases that were "considered".
2003-08-14 12:59:54 +00:00
Daniel Stenberg 019e612225 David Byron's fix that makes this script use 'cygpath' instead of 'pwd' if
this runs on windows, to find out the current working directory.
2003-08-12 21:18:39 +00:00
Daniel Stenberg 18975d44a6 minor cleanup 2003-08-06 23:10:36 +00:00
Daniel Stenberg 26e17d89c9 produce a skip-report at the end of all tests, and thus record and count
them properly
2003-06-26 11:44:01 +00:00
Daniel Stenberg 9aae16c236 stdout is good enough 2003-06-13 09:09:04 +00:00
Daniel Stenberg 80c194a70a work more on pids, less on pidfiles to be able to do better kills at the
end of the test where the pidfiles aren't found, but "our" server is running
2003-06-13 09:04:08 +00:00
Daniel Stenberg c78df56801 get and use only the first line of the curl --version output 2003-06-12 23:05:12 +00:00
Daniel Stenberg 654e3f1101 require the netrc_debug feature the same way we now can require SSL
present client-side
2003-06-12 16:38:14 +00:00
Daniel Stenberg 86689dc524 now test cases can be set to be dependent on the presence of "SSL" in the
client/library
2003-06-12 16:22:52 +00:00
Daniel Stenberg d398a0dd58 remove debug output 2003-05-19 13:08:48 +00:00
Daniel Stenberg 7723a24297 setenv support added to allow test cases to require a set of environment
variables
2003-05-19 13:06:10 +00:00
Daniel Stenberg 95f6b15a67 no longer assume that the test number implies servers to run 2003-04-30 20:28:49 +00:00
Daniel Stenberg 9aefcada19 modified to produce nicer output when a single test fails 2003-04-30 17:15:38 +00:00
Daniel Stenberg 16ddb09cb4 support the new <killserver> tag 2003-04-01 08:41:49 +00:00
Daniel Stenberg b125e8e23a set binary mode for some file handling and it might work better on some
cygwin installations (using DOS-style files somehow?)
2003-03-19 09:26:29 +00:00
Daniel Stenberg 12c72b419c missing newline added 2003-03-15 17:26:59 +00:00
Daniel Stenberg 01618d323b allow 'none' as server 2003-03-15 17:11:13 +00:00
Daniel Stenberg 24a6100897 * use the pid returned back from test-servers and kill them before starting
them the first time
* verify that the server we start really comes up fine and works as
  expected before continue
* count test cases where the server can't be run (for whatever reason)
* prefix lots of messages with RUN: to make it easier to realize which script
  is saying what when running tests verbose
* remove the generic sleep(1) from each test, makes the suite fly! ;-)

I hope these changes will make the tests run somewhat more reliably on more
platforms.
2003-03-15 16:43:58 +00:00