2009-09-05 Micah Cowan * Test-ftp-recursive.px: Added. * run-px, Makefile.am (EXTRA_DIST): Added Test-ftp-recursive.px. * FTPTest.pm (_setup_server): Don't construct the "input" directory's contents, just pass the URLs structure to FTPServer->new. * FTPServer.pm: Rewrote portions, so that the server now uses the information from the %urls hash directly, rather than reading from real files. Added an FTPPaths package to the file. 2009-09-04 Micah Cowan * WgetTest.pm.in (run): Error-checking improvements. 2009-09-02 Micah Cowan * Makefile.am (unit-tests): explicit dependency is unnecessary (and harmful, as it overrides the automatic one). 2009-09-01 Micah Cowan * Makefile.am (../src/libunittest.a): Make it a phony target, so we always make sure to get up-to-date unit-test runs. 2009-09-01 Steven Schubiger * Makefile.am: Add Test-cookies.px, Test-cookies-401.px and Test-restrict-ascii.px to EXTRA_DIST. 2009-08-31 Steven Schubiger * Makefile.am: Add Test-k.px to EXTRA_DIST. 2009-08-29 Steven Schubiger * run-px: Add Test-k.px to the list. * Test-k.px: Test escaping of semicolons in local file strings. 2009-08-27 Micah Cowan * WgetTest.pm.in (run): Shift the errcode right by 8 binary places. * Test--spider-fail.px, Test--spider-r--no-content-disposition.px, Test--spider-r--no-content-disposition-trivial.px, Test--spider-r-HTTP-Content-Disposition.px, Test--spider-r.px, Test-O-nonexisting.px, Test-cookies-401.px, Test-nonexisting-quiet.px: Adjusted "expected error code"; Wget's exit codes have changed. 2009-08-27 Micah Cowan * run-px: Added Test-cookies.px, Test-cookies-401.px * Test-cookies.px: Basic testing to make sure Wget doesn't send cookies; no path/domain checking. * Test-cookies.px: Test to make sure Wget heeds cookies when they are sent with a 401 response (#26775). * HTTPServer.pm (send_response): Don't try to substitute port in response body, if there isn't one. (verify_request_headers): Avoid uninitialized warning when an expected header isn't provided by Wget. 2009-07-27 Micah Cowan * Test-restrict-ascii.px: New. * run-px: Added Test-restrict-ascii.px. 2009-07-26 Micah Cowan * Test-ftp-iri.px, Test-ftp-iri-fallback.px, Test-ftp-iri-recursive.px, Test-ftp-iri-disabled.px, Test-idn-cmd.px, Test-idn-robots.px: Adjust wget invocations, replacing --locale with --local-encoding. 2009-07-07 Steven Schubiger * Makefile.am: Add IDN/IRI test files and Test-meta-robots.px to EXTRA_DIST. 2009-07-05 Micah Cowan * Test-meta-robots.px: Added. * run-px: Add Test-meta-robots.px to the list. 2009-07-03 Micah Cowan * Test-ftp-iri-disabled.px, Test-iri-disabled.px: --iri=no --> --no-iri 2009-07-01 Micah Cowan * HTTPServer.pm (send_response): Invocation of verify_request_headers, to support testing of Wget-sent header values. (verify_request_headers): Added. * Test-iri.px: Added verification checks for Referer values. 2009-06-29 Micah Cowan * WgetTest.pm.in (_cleanup): Allow cleanup of test directories to be skipped at user discretion. * run-px, Test-iri-percent.px, Test-ftp-iri-recursive.px: Added test for percent-coded value preservation, FTP recursion when IRI support's on. 2008-12-04 Micah Cowan (not copyrightable) * run-px, Test-idn-robots.px: Added test for robots-file downloads. * Test-idn-cmd.px, Test-idn-meta.px, Test-idn-headers.px: Fix test names. 2008-11-26 Micah Cowan (not copyrightable) * Test-ftp-iri-disabled.px, Test-ftp-iri-fallback.px, Test-ftp-iri.px, Test-idn-cmd.px, Test-idn-headers.px, Test-idn-meta.px, Test-iri-disabled.px, Test-iri-forced-remote.px, Test-iri-list.px, Test-iri.px: More module-scope warnings. 2009-06-14 Micah Cowan * Makefile.am (EXTRA_DIST): Include all the tests, run-px, and certs/, to make distcheck happy. 2009-06-11 Benjamin Wolsey * Test-proxied-https-auth.px: Take an optional argument for the top source directory, so we can find the cert and key. * run-px: Provide the top source directory as an argument, so scripts can find their way around. 2009-04-11 Steven Schubiger * run-px: Skip testing with real rc files by setting SYSTEM_WGETRC and WGETRC to /dev/null. 2009-02-25 Benjamin Wolsey * Makefile.am (run-px-tests): Ensure run-px is run from srcdir. * run-px: Include modules from srcdir. 2008-11-25 Steven Schubiger * WgetTest.pm.in: Remove the magic interpreter line; replace -w with lexical warnings. 2008-11-13 Steven Schubiger * FTPServer.pm, FTPTest.pm, HTTPServer.pm, HTTPTest.pm, WgetTest.pm.in: Clean up leftover whitespace. 2008-11-12 Steven Schubiger * Test-auth-basic.px, Test-auth-no-challenge.px, Test-auth-no-challenge-url.px, Test-c-full.px, Test-c-partial.px, Test-c.px, Test-c-shorter.px, Test-E-k-K.px, Test-E-k.px, Test-ftp.px, Test-HTTP-Content-Disposition-1.px, Test-HTTP-Content-Disposition-2.px, Test-HTTP-Content-Disposition.px, Test-N-current.px, Test-N-HTTP-Content-Disposition.px, Test-N--no-content-disposition.px, Test-N--no-content-disposition-trivial.px, Test-N-no-info.px, Test--no-content-disposition.px, Test--no-content-disposition-trivial.px, Test-N-old.px, Test-nonexisting-quiet.px, Test-noop.px, Test-np.px, Test-N.px, Test-N-smaller.px, Test-O-HTTP-Content-Disposition.px, Test-O-nc.px, Test-O--no-content-disposition.px, Test-O--no-content-disposition-trivial.px, Test-O-nonexisting.px, Test-O.px, Test-proxy-auth-basic.px, Test-Restrict-Lowercase.px, Test-Restrict-Uppercase.px, Test--spider-fail.pxm, Test--spider.px, Test--spider-r-HTTP-Content-Disposition.px, Test--spider-r--no-content-disposition.px, Test--spider-r--no-content-disposition-trivial.px, Test--spider-r.px: Enforce lexically scoped warnings. * Test-proxied-https-auth.px, run-px: Place use strict before use warnings. 2008-11-12 Steven Schubiger * FTPServer.pm, FTPTest.pm, HTTPServer.pm, HTTPTest.pm: Remove the magic interpreter line, because it cannot be used fully. Substitute -w with use warnings. 2008-11-11 Micah Cowan * HTTPServer.pm (handle_auth): Allow testing of --auth-no-challenge. * Test-auth-no-challenge.px, Test-auth-no-challenge-url.px: Added. * run-px: Add Test-auth-no-challenge.px, Test-auth-no-challenge-url.px. 2008-11-07 Steven Schubiger * run-px: Use some colors for the summary part of the test output to strengthen the distinction between a successful or failing run. 2008-11-06 Steven Schubiger * run-px: When executing test scripts, invoke them with the current perl executable name as determined by env. 2008-11-06 Micah Cowan * run-px: Use strict (thanks Steven Schubiger!). 2008-09-09 Micah Cowan * Test-idn-cmd.px: Added. * run-px: Added Test-idn-cmd.px. 2008-08-28 Micah Cowan * HTTPServer.pm (run): Allow distinguishing between hostnames, when used as a proxy. * Test-idn-headers.px, Test-idn-meta.px: Added. * run-px: Added Test-idn-headers.px, Test-idn-meta.px. * Test-proxy-auth-basic.px: Use the full URL, rather than just the path (made necessary by the accompanying change to HTTPServer.pm). 2008-08-14 Xavier Saint * Test-iri-list.px : Fetch files from a remote list. 2008-08-03 Xavier Saint * Test-iri.px : HTTP recursive fetch for testing IRI support and fallback. * Test-iri-disabled.px : Same file structure as Test-iri.px but with IRI support disabled * Test-iri-forced-remote.px : There's a difference between ISO-8859-1 and ISO-8859-15 for character 0xA4 (respectively currency sign and euro sign). So with a forced ISO-8859-1 remote encoding, wget should see 0xA4 as a currency sign and transcode it correctly in UTF-8 instead of using the ISO-8859-15 given by the server. * Test-ftp-iri.px : Give a file to fetch via FTP in a specific locale and expect wget to fetch the file UTF-8 encoded. * Test-ftp-iri-fallback.px : Same as above but wget should fallback on locale encoding to fetch the file. * Test-ftp-iri.px : Same as Test-ftp-iri.px but with IRI support disabled. The UTF-8 encoded file should not be retrieved. 2008-06-22 Micah Cowan * Test-proxied-https-auth.px: Shift exit code so it falls in the lower bits, and actually fails when it should. Use dynamic port, instead of static port. Only run the test if our Wget was built with HTTPS support. * certs/server-cert.pem, certs/server-key.pem: Apparently failed to add these from 1.11.x repo. Fixed. 2008-06-12 Micah Cowan * FTPServer.pm, FTPTest.pm, HTTPServer.pm, HTTPTest.pm, Test--no-content-disposition-trivial.px, Test--no-content-disposition.px, Test--spider-fail.px, Test--spider-r--no-content-disposition-trivial.px, Test--spider-r--no-content-disposition.px, Test--spider-r-HTTP-Content-Disposition.px, Test--spider-r.px, Test--spider.px, Test-E-k-K.px, Test-E-k.px, Test-HTTP-Content-Disposition-1.px, Test-HTTP-Content-Disposition-2.px, Test-HTTP-Content-Disposition.px, Test-N--no-content-disposition-trivial.px, Test-N--no-content-disposition.px, Test-N-HTTP-Content-Disposition.px, Test-N-current.px, Test-N-no-info.px, Test-N-old.px, Test-N-smaller.px, Test-N.px, Test-O--no-content-disposition-trivial.px, Test-O--no-content-disposition.px, Test-O-HTTP-Content-Disposition.px, Test-O-nonexisting.px, Test-O.px, Test-Restrict-Lowercase.px, Test-Restrict-Uppercase.px, Test-auth-basic.px, Test-c-full.px, Test-c-partial.px, Test-c.px, Test-ftp.px, Test-nonexisting-quiet.px, Test-noop.px, Test-np.px, Test-proxied-https-auth.px, Test-proxy-auth-basic.px, WgetTest.pm.in: Use whatever ports are available, rather than hard-coded ones. * run-px: More summary info, explicit exit code. * Makefile.am: Reinstate "run-px-tests" as a dependency for the "check" target. * WgetTest.pm.in: Draw more attention to the fact that WgetTest.pm is a generated file. * Test-proxied-https-auth.px: Better cleanup, so next test can open the port. 2008-05-31 Micah Cowan * Test-N-current.px: Ensure we catch failures. * Test-N-old.px: Make it test only the timestamp, and not the content length in addition. * Test-N-smaller.px, Test-N-no-info.px: added. * Test-c-partial.px: Improve checking that the file was partially retrieved, rather than overwritten. * run-px: Added Test-N-smaller.px, Test-N-no-info.px. * HTTPServer.pm: Return 416 for fully-retrieved content, rather than 206 with a zero content-length. 2008-05-23 Micah Cowan * Test--spider.px: Make test expect 0 return code. 2008-05-22 Micah Cowan * Makefile.am (run-px-tests): Replaced ugly list of tests with run-px Perl script to manage running them. * run-px: Added. * FTPServer.pm (run): Avoid re-forking. Fixes bug #20458. 2008-04-26 Micah Cowan * Makefile.am, Test-proxied-https-auth.px: Added a test for accessing password-protected HTTPS URLs through a proxy (via CONNECT). 2008-04-10 Micah Cowan * Makefile.am, Test-proxy-auth-basic.px: Added a test for accessing password-protected URLs through a proxy. 2008-01-25 Micah Cowan * Makefile.am: Updated copyright year. 2008-01-23 Micah Cowan * Makefile.am: Add libmd5 to unit-tests. 2007-11-28 Micah Cowan * Makefile.am: Updated license exception for OpenSSL, per the SFLC. 2007-10-18 Micah Cowan * Makefile.am: Add dependency for unit_tests on libgnu.a. 2007-10-05 Ralf Wildenhues * WgetTest.pm.in: wget is built in the build tree. Use an absolute path to the binary. * Makefile.in: Removed, replaced by Makefile.am. * Makefile.am: Converted from Makefile.in. 2007-09-25 Micah Cowan * Makefile.in: Use EXEEXT instead of exeext. 2007-08-21 Mauro Tortonesi * WgetTest.pm.in: Added support for timestamping of pre-existing files. * Test-N-current.px: Fixed broken test logic. * Makefile.in: Updated list of automatically run tests. * Test-HTTP-Content-Disposition.px: Added -e contentdisposition=on option, since now HTTP Content-Disposition header support is turned off by default. * Test-HTTP-Content-Disposition-1.px: Ditto. 2007-08-10 Mauro Tortonesi * Test--spider--no-content-disposition-trivial.px: Added new tests for validation of HTTP Content-Disposition header support logic. In particular, these tests check wget's behavior for every combination of --spider [-r] and -e contentdisposition=on/off options. * Test--spider-r-HTTP-Content-Disposition.px: Ditto. * Test--spider-HTTP-Content-Disposition.px: Ditto. * Test--spider--no-content-disposition.px: Ditto. * Test--spider-r--no-content-disposition-trivial.px: Ditto. * Test--spider-r--no-content-disposition.px: Ditto. 2007-07-25 Micah Cowan * HTTPServer.pm (run, send_response): Farmed out some logic from the run method into a separate one named send_response, which was then modified to handle simple authentication testing. (handle_auth): Added to handle simple authentication testing. (verify_auth_basic): Checks to make sure Basic credentials are valid. (verify_auth_digest): Stub added; always fails test. * Makefile.in: Added Test-auth-basic.px to list of automatically run tests. * Test-auth-basic: Simple basic authentication test; mainly just lets the server do its testing. Its current purpose is just to ensure that correct basic creds are sent, but never until a challenge has been sent. 2007-07-10 Mauro Tortonesi * Test--no-content-disposition.px: Added new tests for validation of HTTP Content-Disposition header support logic. In particular, these tests check wget's behavior for every combination of -N/-O and -e contentdisposition=on/off options. * Test--no-content-disposition-trivial.px: Ditto. * Test-N-HTTP-Content-Disposition.px: Ditto. * Test-N--no-content-disposition.px: Ditto. * Test-N--no-content-disposition-trivial.px: Ditto. * Test-O-HTTP-Content-Disposition.px: Ditto. * Test-O--no-content-disposition.px: Ditto. * Test-O--no-content-disposition-trivial.px: Ditto. 2007-07-05 Micah Cowan * Makefile.in: Updated GPL reference to version 3 or later, removed FSF address. 2007-06-14 Mauro Tortonesi * FTPServer.pm: Added FTP testing support. * FTPTest.pm: Ditto. * Test-ftp.px: Ditto. 2006-12-22 Mauro Tortonesi * HTTPTest.pm: Don't ignore initial '/' character in requested URLs. 2006-11-10 Mauro Tortonesi * Test-np.px: Added test for -np. * HTTPTest.pm: Ignore initial '/' character in requested URLs. 2006-10-12 Mauro Tortonesi * Test1.px: Renamed to Test-noop.px. * Test-noop.px: Ditto. * Test2.px: Renamed to Test-N.px. * Test-N.px: Ditto. * Test3.px: Renamed to Test-nonexisting-quiet.px. * Test-nonexisting-quiet.px: Ditto. * Test4.px: Renamed to Test-O-nonexisting.px. * Test-O-nonexisting.px: Ditto. * Test5.px: Renamed to Test-HTTP-Content-Disposition.px. * Test-HTTP-Content-Disposition.px: Ditto. * Test6.px: Renamed to Test-HTTP-Content-Disposition-1.px. * Test-HTTP-Content-Disposition-1.px: Ditto. * Test7.px: Renamed to Test-HTTP-Content-Disposition-2.px. * Test-HTTP-Content-Disposition-2.px: Ditto. * Test8.px: Replaced by Test--spider-r.px. * Test9.px: Renamed to Test-Restrict-Lowercase.px. * Test-Restrict-Lowercase.px: Ditto. * Test10.px: Renamed to Test-Restrict-Uppercase.px. * Test-Restrict-Uppercase.px: Ditto. * Test--spider.px: Added test for spider mode. * Test--spider-fail.px: Added failing test for spider mode. * Test--spider-r.px: Added test for recursive spider mode. * Test-c.px: Added test for --continue mode. * Test-c-full.px: Added test for --continue mode. * Test-c-partial.px: Added test for --continue mode. * Test-O.px: Added test for -O. * Test-N-current.px: Added test for -N. * Test-N-old.px: Added test for -N. * Test-E-k.px: Added test for -E -k. * Test-E-k-K.px: Added test for -E -k -K. 2006-08-17 Mauro Tortonesi * HTTPServer.pm: Added support for Range header. 2006-07-14 Mauro Tortonesi * Test4.px: Fixed wrong expected behaviour. 2006-06-13 Mauro Tortonesi * Test9.px: Added test for --restrict-file-names=lowercase option. * Test10.px: Added test for --restrict-file-names=uppercase option. 2006-05-26 Mauro Tortonesi * HTTPServer.pm: Added synchronization between client and server processes to prevent the test to start before the server is ready. * HTTPTest.pm: Ditto. * Test.pm: Ditto. * Test1.px: Removed unneeded ../src/ from command line. * Test2.px: Ditto. * Test3.px: Ditto. * Test4.px: Ditto. * Test5.px: Ditto. * Test6.px: Ditto. * Test7.px: Ditto. * Test8.px: Added test for recursive spider mode. 2006-05-26 Mauro Tortonesi * HTTPServer.pm: Fixed bug when returning 404. Improved logging. * Test.pm: Added support for command lines which use an absolute path for the Wget binary. 2006-04-28 Mauro Tortonesi * Test5.px: Added test for HTTP Content-Disposition support. * Test6.px: Ditto. * Test7.px: Ditto. 2006-04-27 Mauro Tortonesi * HTTPServer.pm: Serve index.html if no filename is given. * Test.pm: Added support for pre-existing files. 2006-01-24 Mauro Tortonesi * HTTPServer.pm: Enhanced logging support. * HTTPTest.pm: Updated to new test format. * Test.pm: Improved test setup, verification and cleanup. Major refactoring. * Test1.px: Updated to new test format. * Test2.px: Updated to new test format. * Test3.px: Added new test for quiet download of nonexistent URL. * Test4.px: Added new test for quiet download of nonexistent URL with --output-document option. 2005-12-05 Mauro Tortonesi * HTTPServer.pm: Refactored as a subclass of HTTP::Daemon. Removed the old run method and renamed the old run_daemon method to run. Added support for partial * Testing.pm: Renamed to HTTPTest.pm. * HTTPTest.pm: Refactored as a subclass of Test. Renamed Run_HTTP_Test to run, verify_download to _verify_download and added support for timestamp checking. * Test.pm: Added Test class as the super class of every testcase. * test1: Renamed to Test1.px. * Test1.px: Refactored as an instance of the HTTPTest class. * Test2.px: Added -N HTTP test. 2005-11-02 Mauro Tortonesi * HTTPServer.pm: Added basic support for HTTP testing. * Testing.pm: Added basic support for feature testing (only HTTP testing is supported at the moment). * test1: Added basic HTTP test.