bel2125 158e71c8e6 Add support for access_control_allow_headers vor 8 Jahren
..
ajax 6d3cbb697f Update manual tests vor 9 Jahren
dir with spaces d864d72470 On windows, enclosing path to CGI script in quotes to allow paths with spaces vor 12 Jahren
imagetest 4872116f19 image test: File extension is case sensitive for Linux vor 10 Jahren
.leading.dot.txt a69a2da39d Initial import - converting from Subversion. vor 15 Jahren
1000images.lua 72b3d3deb2 Reduce test default from 10000 images to 1000 (number can be configured as ?cnt=1000) vor 10 Jahren
100images.htm 6d3cbb697f Update manual tests vor 9 Jahren
CMakeLists.txt ac059742a0 Improve unit tests vor 8 Jahren
HugeText.lua a9cdd7960c Test 'require' of other Lua libs vor 11 Jahren
MakefileTest.mk 16b31002e7 Updated test makefile to eb easier to read. vor 11 Jahren
MethodTest.xhtml 01711abd46 Test even more HTTP methods vor 10 Jahren
README.md 548baf792c Added check unit tests vor 10 Jahren
all_build_flags.pl cd94fb9bdc Changed exec permissions on perl test programs vor 11 Jahren
bad.cgi a69a2da39d Initial import - converting from Subversion. vor 15 Jahren
bad2.cgi 82bcf523f3 added vor 13 Jahren
bad_page.lp 66aa28b234 Add a bad lua script and a bad lua page for test purposes vor 9 Jahren
bad_script.lua 66aa28b234 Add a bad lua script and a bad lua page for test purposes vor 9 Jahren
cgi_test.c 226167b881 Add test to reproduce #296 vor 9 Jahren
cgi_test.html 1b4b8b8fc7 Add HTML page for CGI test (#296) vor 9 Jahren
civetweb_check.h 00f5b51bac Easing to build and debug unit test locally vor 8 Jahren
cors.html 7a366c45b2 CORS test should work with default port 8080 vor 10 Jahren
cors.reply.html c498dde851 Add cross-origin resource sharing (CORS) test vor 11 Jahren
cors.reply.lua 158e71c8e6 Add support for access_control_allow_headers vor 8 Jahren
cors.reply.shtml c62ded82e8 CORS for SSI pages vor 11 Jahren
echo.lua 7539ab1172 Add websocket echo test vor 8 Jahren
embed.c ec9d5413a8 replace Windows CRLF with Unix newline vor 10 Jahren
env.cgi da75a62a32 More tests vor 13 Jahren
error.lua b5da6dbcaa Lua error handler for all errors vor 11 Jahren
error404.htm 4b0bfbb55b Error4xx page should be an error404 page. The error 403 (e.g., list a directory if enable_directory_listing no is configured) will show the error.lua page vor 11 Jahren
exit.lua 1473a00ce2 Add Lua script to exit the server vor 9 Jahren
exploit.pl cd94fb9bdc Changed exec permissions on perl test programs vor 11 Jahren
filehandler.lua aa6dd2f84e Add example for a Lua file handler vor 9 Jahren
form.html b08b61d0d2 Alternative to mg_upload (Step 7/?) vor 9 Jahren
handle_form.lua 8dea7de0c4 Dump file content as hex in handle_form example vor 10 Jahren
hello.cgi a69a2da39d Initial import - converting from Subversion. vor 15 Jahren
hello.shtml a2178b9045 New test for server side includes (SSI) vor 9 Jahren
hello.txt a69a2da39d Initial import - converting from Subversion. vor 15 Jahren
hello_gz.txt.gz 94b38ccc65 Add zipped test file vor 10 Jahren
hello_gz_unzipped.txt 94b38ccc65 Add zipped test file vor 10 Jahren
html_esc.lua d8adb70f43 Character encoding converstion functions for Lua (as test/example) vor 11 Jahren
linux.cgi a6eb2d232f Linux shell scripts used as CGI process must still return \r\n at the end of header lines vor 9 Jahren
linux_fail.cgi c9bb894b84 Redirect stderr of CGI process to error log (Step 3/3) vor 9 Jahren
linux_fail_silent.cgi c9bb894b84 Redirect stderr of CGI process to error log (Step 3/3) vor 9 Jahren
lua_preload_file.lua 4f3c267731 Add test for lua_preload_file vor 11 Jahren
main.c 0e1a352855 Update copyright year vor 8 Jahren
page.lp 6ed309a7ac Update link in test scripts vor 8 Jahren
page.lua 6ed309a7ac Update link in test scripts vor 8 Jahren
page.ssjs 4189a556ab Fix Duktape test: rename function in test vor 9 Jahren
page2.lp 533eac37cd Add library test for Lua5.3 vor 9 Jahren
page2.lua 533eac37cd Add library test for Lua5.3 vor 9 Jahren
page2.ssjs e9860d7180 Duktape example: show content of civetweb specific javascript objects vor 9 Jahren
page3.lp 53144a0904 Add test page for mg.include vor 8 Jahren
page3.lua 9bb13c9232 Add parameter checking in var_get vor 11 Jahren
page3.ssjs 9a9a424511 Duktape: Add http_headers vor 9 Jahren
page4.lua 01998fbcfe Add UUID for Lua (in Linux). See also #140. vor 9 Jahren
page5.lua f030c1c71e Add very simple test page (created by Lua) vor 8 Jahren
page_keep_alive.lua 6ed309a7ac Update link in test scripts vor 8 Jahren
page_keep_alive_chunked.lua aae7646e90 Cache control (see also #201) (Step 1/?) vor 9 Jahren
page_status.lua 7a5bbf5de6 Prepare data for server status (Step 17/?) (See #243)[B vor 8 Jahren
passfile a69a2da39d Initial import - converting from Subversion. vor 15 Jahren
prime.ssjs 799a8e0f19 Duktape: Store connection object as internal property on the Ecmascript function object vor 9 Jahren
private.c ca728e5140 Merge remote-tracking branch 'upstream/master' vor 8 Jahren
private.h 0e1a352855 Update copyright year vor 8 Jahren
private_exe.c 0e1a352855 Update copyright year vor 8 Jahren
private_exe.h 0e1a352855 Update copyright year vor 8 Jahren
public_func.c 48f210ec2c Improve unit tests vor 8 Jahren
public_func.h 0e1a352855 Update copyright year vor 8 Jahren
public_server.c e18393d109 Unit test: test quoted and unquoted multipart message bodies (fix test) vor 8 Jahren
public_server.h 0e1a352855 Update copyright year vor 8 Jahren
require_test.lua a9cdd7960c Test 'require' of other Lua libs vor 11 Jahren
resource_script_demo.lua e497dd34f8 Test for chunked transfer encoding (#95, #98) vor 10 Jahren
shared.c 0e1a352855 Update copyright year vor 8 Jahren
shared.h 0e1a352855 Update copyright year vor 8 Jahren
ssi_test.shtml a2178b9045 New test for server side includes (SSI) vor 9 Jahren
syntax_error.ssjs 9308cbd16d Duktape: Create 'conn' object with 'read' and 'write' function vor 9 Jahren
test.ico 32cbb48710 Allow to specify title and tray icon for the Windows standalone server vor 11 Jahren
test.pl cd94fb9bdc Changed exec permissions on perl test programs vor 11 Jahren
testclient.c 6b92c512f5 Rename include Windows.h to windows.h for cross-compilation from Linux to Windows vor 8 Jahren
timeout.cgi 08bf149d85 timeout.cgi test sometimes failed. vor 14 Jahren
timertest.c 3924d27aa5 Remove old instrumentation and format code vor 8 Jahren
timertest.h 7ec97f166a Add unit test for timers vor 8 Jahren
websocket.lua ed72d40adf Websocket test should support WSS vor 11 Jahren
websocket.xhtml 1a273e421d Fix for issue #77 (Step 1/?) vor 10 Jahren
windows.cgi ceb5f39461 Add CGI test for windows, that does not need an extra interpreter vor 10 Jahren
windows.cgi.cmd 1286e26b43 Windows minimal CGI test: HTTP method and status code are sent by the framework and windows.cgi.cmd must be in the PATH vor 10 Jahren
windows_fail.cgi d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) vor 9 Jahren
windows_fail.cgi.cmd d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) vor 9 Jahren
windows_fail_silent.cgi d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) vor 9 Jahren
windows_fail_silent.cgi.cmd d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) vor 9 Jahren
ws_status.lua bd2e80ca53 Prepare data for server status (Step 20/?) (See #243) vor 8 Jahren
x.php 771ce9059c added vor 12 Jahren

README.md

Testing

C API

The unit tests leverage the CTest and Check frameworks to provide a easy environment to build up unit tests. They are split into Public and Private test suites reflecting the public and internal API functions of civetweb.

When adding new functionality to civetweb tests should be written so that the new functionality will be tested across the continuous build servers. There are various levels of the unit tests:

  • Tests are included in
  • Test Cases which are there are multiple in
  • Test Suites which are ran by the check framework by
  • civetweb-unit-tests which is driven using the --suite and --test-case arguments by
  • CTest via add_test in CMakeLists.txt

Each test suite and test case is ran individually by CTest so that it provides good feedback to the continuous integration servers and also CMake. Adding a new test case or suite will require the corresponding add_test driver to be added to CMakeLists.txt