aboutsummaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2020-05-02sockfilt: make select_ws stop waiting on exit signal eventMarc Hoersken
This makes sure that select_ws behaves similar to real select which stops waiting on a signal handler being triggered. This makes it possible to gracefully stop sockfilt.exe on Windows with taskkill /IM sockfilt.exe (without /F force flag). Reviewed-by: Jay Satiro Part of #5260
2020-05-02tests/server/util.[ch]: add exit event to stop waiting on WindowsMarc Hoersken
This commit adds a global exit event to the test servers that Windows-specific wait routines can use to get triggered if the program was signaled to be terminated, eg. select_ws in sockfilt.c The exit event will be managed by the signal handling code and is set to not reset automatically to support multiple wait routines. Reviewed-by: Jay Satiro Closes #5260
2020-05-02tests/server/util.c: fix thread handle not being closedMarc Hoersken
Reviewed-by: Jay Satiro Part of #5260
2020-05-02tests/server/util.c: use raise instead of calling signal handlerMarc Hoersken
Use raise to trigger signal handler instead of calling it directly and causing potential unexpected control flow. Reviewed-by: Jay Satiro Part of #5260
2020-05-02tests: add support for SSH server variant specific transfer pathsMarc Hoersken
OpenSSH for Windows requires paths in the format of /C:/ instead of the pseudo-POSIX paths /cygdrive/c/ or just /c/ Reviewed-by: Daniel Stenberg Closes #5298
2020-05-02runtests: make the logmsg from the ssh server only show in verboseDaniel Stenberg
2020-05-02tests: make test 1248 + 1249 use %NOLISTENPORTDaniel Stenberg
... instead of a port of a non-running server so that it works stand-alone. Closes #5318
2020-04-30runtests: fix typo in the existence of disabled tests checkerEmil Engler
Closes #5316
2020-04-30test75: Remove precheck testDan Fandrich
This has not been needed since commit 9fa42bed and often prevents it from running at all with dynamic test ports.
2020-04-30tests: Stop referring to server ports when they're not usedDan Fandrich
Several tests referred to specific server ports even when the test didn't actually use that server or specify that it's needed. In such cases, the test harness substitutes the text "[not running]" as the port number which causes many such tests to fail due to the inability to parse the URL. These tests are changed to use %NOLISTENPORT which will always be substituted correctly.
2020-04-30conncache: various concept cleanupsDaniel Stenberg
More connection cache accesses are protected by locks. CONNCACHE_* is a beter prefix for the connection cache lock macros. Curl_attach_connnection: now called as soon as there's a connection struct available and before the connection is added to the connection cache. Curl_disconnect: now assumes that the connection is already removed from the connection cache. Ref: #4915 Closes #5009
2020-04-30tests: tests: run stunnel for HTTPS and FTPS on dynamic portsDaniel Stenberg
As stunnel is an external tool and it has no specific option to export the actually used port number when asked to listen to 0, runtests instead iterates over ten randomly picked high number ports and sticks to the first one stunnel can listen to. Closes #5267
2020-04-30tests: pick a random port number for SSHDaniel Stenberg
Since sshd doesn't have such an option by itself, we iterate over a series of random ports until one works. Closes #5273
2020-04-30libtest/cmake: Remove commented codeRikard Falkeborn
These were commented out in e9dd0998706a when Makefile.inc was included instead. 11 years have passed since then and the commented code is of course very outdated. Remove it to avoid confusion. Closes #5311
2020-04-29test1177: look for curl.h in source directoryKamil Dudka
If we use a separate build directory, there is no copy of the header. Closes #5310
2020-04-29tests: look for preprocessed tests in build directoryKamil Dudka
... which is not always the same directory as source directory Closes #5310
2020-04-28headers: copyright range fixDaniel Stenberg
2020-04-28doh: Constify some input pointersRikard Falkeborn
Closes #5306
2020-04-25runtests: check for the disabled tests relative srcdirDaniel Stenberg
To make it work correctly for out-of-tree builds. Follow-up to 75e8feb6fb08b Bug: https://github.com/curl/curl/pull/5288#issuecomment-619346389 Reported-by: Marcel Raad Closes #5297
2020-04-25runtests: revert commenting out a line I did for debuggingDaniel Stenberg
Follow-up to 11091cd4d. It was not meant to be pushed!
2020-04-25runtests: when <killserver> mentions http, kill http/2 tooDaniel Stenberg
Since the http2 test server is a mere proxy that needs to know about the dynamic port the HTTP server is using, it too needs to get restarted when the http server is killed. A regression caused by 80d6515. Fixes #5289 Closes #5291
2020-04-24tests/git: ignore mqttd and port filesEmil Engler
Closes #5290
2020-04-24tests: make runtests check that disabled tests existsDaniel Stenberg
... and error out if so. Removed '536' from DISABLED as there is no such test file. Closes #5288
2020-04-24test1154: set a proper nameDaniel Stenberg
2020-04-22transfer: Switch PUT to GET/HEAD on 303 redirectJay Satiro
Prior to this change if there was a 303 reply to a PUT request then the subsequent request to respond to that redirect would also be a PUT. It was determined that was most likely incorrect based on the language of the RFCs. Basically 303 means "see other" resource, which implies it is most likely not the same resource, therefore we should not try to PUT to that different resource. Refer to the discussions in #5237 and #5248 for more information. Fixes https://github.com/curl/curl/issues/5237 Closes https://github.com/curl/curl/pull/5248
2020-04-20tests: run the RTSP test server on a dynamic port numberDaniel Stenberg
To avoid port collisions. Closes #5272
2020-04-20tests: add %NOLISTENPORT and use itDaniel Stenberg
The purpose with this variable is to provide a port number that is reasonably likely to not have a listener on the local host so that tests can try connect failures against it. It uses port 47 - "reserved" according to IANA. Updated six tests to use it instead of the previous different ports. Assisted-by: Emil Engler Closes #5270
2020-04-20server/tftpd: fix compiler warningDaniel Stenberg
Follow-up from 369ce38ac1d Reported-by: Marc Hörsken
2020-04-20tests: run the SOCKS test server on a dynamic port numberDaniel Stenberg
Closes #5266
2020-04-20tests: run the TFTP test server on a dynamic port numberDaniel Stenberg
Picking a dynamic unused port is better than a fixed to avoid the collision risk. Closes #5265
2020-04-20mqtt: improve the state machineDaniel Stenberg
To handle PUBLISH before SUBACK and more. Updated the existing tests and added three new ones. Reported-by: Christoph Krey Bug: https://curl.haxx.se/mail/lib-2020-04/0021.html Closes #5246
2020-04-20runtests: always put test number in servercmd fileDaniel Stenberg
2020-04-20ensure all references to ports are replaced by varsxquery
2020-04-20add more alt-svc test coveragexquery
2020-04-20test1247: use http server to get the port number setDaniel Stenberg
Follow-up to 0f5db7b263f
2020-04-19runtests: use a unix domain socket path with the pid in the nameDaniel Stenberg
To make it impossible for test cases to access the file name without using the proper variable for the purpose. Closes #5264
2020-04-19src: Remove C99 constructs to ensure C89 complianceTom
This fixes the error: 'for' loop initial declaration used outside C99 mode by declaring the loop increment variable in the beginning of the block instead of inside the for loop. Fixes #5254 Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
2020-04-19runtests: dummy init the ports variables to avoid warningsDaniel Stenberg
... and generate something that can help debug test cases.
2020-04-19mime: properly check Content-Type even if it has parametersPatrick Monnerat
New test 669 checks this fix is effective. Fixes #5256 Closes #5258 Reported-by: thanhchungbtc on github
2020-04-19tests/FILEFORMAT: converted to markdown and extendedDaniel Stenberg
Closes #5261
2020-04-18test1245: make it work with dynamic FTP server portDaniel Stenberg
2020-04-18test1055: make it work with dynamic FTP portDaniel Stenberg
2020-04-18test1028: make it run on dynamic FTP server portDaniel Stenberg
2020-04-18tests: move pingpong server to dynamic listening portDaniel Stenberg
FTP, IMAP, POP3, SMTP and their IPv6 versions are now all on dynamic ports Test 842-845 are unfortunately a bit hard to move over to this concept right now and require "default port" still...
2020-04-18test1056: work with dynamic HTTP ipv6 portDaniel Stenberg
2020-04-18test1448: work with dynamic HTTP server portDaniel Stenberg
2020-04-18tests: introduce preprocessed test casesDaniel Stenberg
The runtests script now always performs variable replacement on the entire test source file before the test gets executed, and saves the updated version in a temporary file (log/test[num]) so that all test case readers/servers can use that version (if present) and thus enjoy the powers of test case variable substitution. This is necessary to allow complete port number freedom. Test 309 is updated to work with a non-fixed port number thanks to this.
2020-04-18tests: make 2006-2010 handle different port number lengthsDaniel Stenberg
2020-04-18tests: run the sws server on "any port"Daniel Stenberg
Makes the test servers for HTTP and Gopher pop up on a currently unused port and runtests adapts to that! Closes #5247
2020-04-18sockfilt: tidy variable naming and data structure in select_wsMarc Hoersken
This commit does not introduce any logical changes to the code. Reviewed-by: Jay Satiro and Marcel Raad Closes #5238