bel2125 242ba025ac Restore AppVeyor build 7 роки тому
..
ajax 6d3cbb697f Update manual tests 9 роки тому
dir with spaces d864d72470 On windows, enclosing path to CGI script in quotes to allow paths with spaces 12 роки тому
imagetest 4872116f19 image test: File extension is case sensitive for Linux 10 роки тому
protected b06c3f90da Rename parameter "domain" to "realm", to use the same parameter names 7 роки тому
.leading.dot.txt a69a2da39d Initial import - converting from Subversion. 15 роки тому
1000images.lua 72b3d3deb2 Reduce test default from 10000 images to 1000 (number can be configured as ?cnt=1000) 10 роки тому
100images.htm 6d3cbb697f Update manual tests 9 роки тому
CMakeLists.txt c5582b0107 Unit tests: Split functions into separate tests 7 роки тому
HugeText.lua a9cdd7960c Test 'require' of other Lua libs 11 роки тому
MakefileTest.mk 16b31002e7 Updated test makefile to eb easier to read. 11 роки тому
MethodTest.xhtml 01711abd46 Test even more HTTP methods 10 роки тому
README.md 548baf792c Added check unit tests 10 роки тому
all_build_flags.pl cd94fb9bdc Changed exec permissions on perl test programs 11 роки тому
bad.cgi 8849e7f3ba More instrumentation for #519 7 роки тому
bad2.cgi 82bcf523f3 added 13 роки тому
bad_page.lp 66aa28b234 Add a bad lua script and a bad lua page for test purposes 9 роки тому
bad_script.lua 66aa28b234 Add a bad lua script and a bad lua page for test purposes 9 роки тому
cgi_test.c 226167b881 Add test to reproduce #296 9 роки тому
cgi_test.html 1b4b8b8fc7 Add HTML page for CGI test (#296) 9 роки тому
civetweb_check.h 9fe36a9fc8 Unit test: Format some commented code 7 роки тому
cors.html 7a366c45b2 CORS test should work with default port 8080 10 роки тому
cors.reply.html c498dde851 Add cross-origin resource sharing (CORS) test 11 роки тому
cors.reply.lua 158e71c8e6 Add support for access_control_allow_headers 8 роки тому
cors.reply.shtml c62ded82e8 CORS for SSI pages 11 роки тому
delayed.cgi f0445b5de8 Code should be C89/C90 compliant, and add some CGI tests 7 роки тому
echo.lua 7539ab1172 Add websocket echo test 8 роки тому
embed.c ec9d5413a8 replace Windows CRLF with Unix newline 10 роки тому
env.cgi da75a62a32 More tests 13 роки тому
error.lua b5da6dbcaa Lua error handler for all errors 11 роки тому
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 11 роки тому
exit.lua 1473a00ce2 Add Lua script to exit the server 9 роки тому
exploit.pl cd94fb9bdc Changed exec permissions on perl test programs 11 роки тому
filehandler.lua aa6dd2f84e Add example for a Lua file handler 9 роки тому
form.html b08b61d0d2 Alternative to mg_upload (Step 7/?) 9 роки тому
handle_form.lua 8dea7de0c4 Dump file content as hex in handle_form example 10 роки тому
hello.cgi f0445b5de8 Code should be C89/C90 compliant, and add some CGI tests 7 роки тому
hello.shtml a2178b9045 New test for server side includes (SSI) 9 роки тому
hello.txt a69a2da39d Initial import - converting from Subversion. 15 роки тому
hello_gz.txt.gz 94b38ccc65 Add zipped test file 10 роки тому
hello_gz_unzipped.txt 94b38ccc65 Add zipped test file 10 роки тому
html_esc.lua d8adb70f43 Character encoding converstion functions for Lua (as test/example) 11 роки тому
linux.cgi a6eb2d232f Linux shell scripts used as CGI process must still return \r\n at the end of header lines 9 роки тому
linux_fail.cgi c9bb894b84 Redirect stderr of CGI process to error log (Step 3/3) 9 роки тому
linux_fail_silent.cgi c9bb894b84 Redirect stderr of CGI process to error log (Step 3/3) 9 роки тому
lua_preload_file.lua 4f3c267731 Add test for lua_preload_file 11 роки тому
main.c 195755118a Reset content length and format code 7 роки тому
page.lp 6ed309a7ac Update link in test scripts 8 роки тому
page.lua 6ed309a7ac Update link in test scripts 8 роки тому
page.ssjs 4189a556ab Fix Duktape test: rename function in test 9 роки тому
page2.lp 533eac37cd Add library test for Lua5.3 9 роки тому
page2.lua 096b5472a0 Add Lua function to list all options 8 роки тому
page2.ssjs e9860d7180 Duktape example: show content of civetweb specific javascript objects 9 роки тому
page3.lp 53144a0904 Add test page for mg.include 8 роки тому
page3.lua 9bb13c9232 Add parameter checking in var_get 11 роки тому
page3.ssjs 9a9a424511 Duktape: Add http_headers 9 роки тому
page3a.lp 5c0a223474 Lua Pages: mg.include should support absolute, relative and virtual path types 7 роки тому
page3r.lp 5c0a223474 Lua Pages: mg.include should support absolute, relative and virtual path types 7 роки тому
page3v.lp 5c0a223474 Lua Pages: mg.include should support absolute, relative and virtual path types 7 роки тому
page4.lua 01998fbcfe Add UUID for Lua (in Linux). See also #140. 9 роки тому
page5.lua f030c1c71e Add very simple test page (created by Lua) 8 роки тому
page6.lua d0fac166e5 Fix #ifdef error in unit test 7 роки тому
page_keep_alive.lua 6ed309a7ac Update link in test scripts 8 роки тому
page_keep_alive_chunked.lua aae7646e90 Cache control (see also #201) (Step 1/?) 9 роки тому
page_status.lua 8ccd6f7270 Convert system info text to JSON format 8 роки тому
passfile a69a2da39d Initial import - converting from Subversion. 15 роки тому
prime.ssjs 799a8e0f19 Duktape: Store connection object as internal property on the Ecmascript function object 9 роки тому
private.c 242ba025ac Restore AppVeyor build 7 роки тому
private.h 0e1a352855 Update copyright year 8 роки тому
private_exe.c 0bc2439b3a Unit test: set defines for local debugging 7 роки тому
private_exe.h 0e1a352855 Update copyright year 8 роки тому
public_func.c 0bc2439b3a Unit test: set defines for local debugging 7 роки тому
public_func.h 0e1a352855 Update copyright year 8 роки тому
public_server.c 62a547bb10 Unit test / AppVeyor: Add printf instrumentation 7 роки тому
public_server.h 0e1a352855 Update copyright year 8 роки тому
require_test.lua a9cdd7960c Test 'require' of other Lua libs 11 роки тому
resource_script_demo.lua e497dd34f8 Test for chunked transfer encoding (#95, #98) 10 роки тому
shared.c 0e1a352855 Update copyright year 8 роки тому
shared.h 0e1a352855 Update copyright year 8 роки тому
ssi_test.shtml a2178b9045 New test for server side includes (SSI) 9 роки тому
syntax_error.ssjs 9308cbd16d Duktape: Create 'conn' object with 'read' and 'write' function 9 роки тому
test.ico 32cbb48710 Allow to specify title and tray icon for the Windows standalone server 11 роки тому
test.pl cd94fb9bdc Changed exec permissions on perl test programs 11 роки тому
testclient.c 6b92c512f5 Rename include Windows.h to windows.h for cross-compilation from Linux to Windows 8 роки тому
timeout.cgi 08bf149d85 timeout.cgi test sometimes failed. 14 роки тому
timertest.c 0bc2439b3a Unit test: set defines for local debugging 7 роки тому
timertest.h 7ec97f166a Add unit test for timers 8 роки тому
websocket.lua ed72d40adf Websocket test should support WSS 11 роки тому
websocket.xhtml 1a273e421d Fix for issue #77 (Step 1/?) 10 роки тому
windows.cgi ceb5f39461 Add CGI test for windows, that does not need an extra interpreter 10 роки тому
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 10 роки тому
windows_fail.cgi d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) 9 роки тому
windows_fail.cgi.cmd d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) 9 роки тому
windows_fail_silent.cgi d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) 9 роки тому
windows_fail_silent.cgi.cmd d8adf7d640 Redirect stderr of CGI process to error log (Step 2/3) 9 роки тому
ws_status.lua bd2e80ca53 Prepare data for server status (Step 20/?) (See #243) 8 роки тому
x.php 771ce9059c added 12 роки тому

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