summaryrefslogtreecommitdiffhomepage
path: root/test/unit (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2021-08-12Java: upgrading third-party components.Max Romanov1-1/+1
2021-08-09Java: upgrading third-party components.Max Romanov1-1/+1
2021-07-29Application restart introduced.Max Romanov1-0/+1
When processing a restart request, the router sends a QUIT message to all existing processes of the application. Then, a new shared application port is created to ensure that new requests won't be handled by the old processes of the application.
2021-07-23Tests: added SNI test without hostname in request.Andrei Zeliankou1-1/+1
2021-07-02Tests: Ruby hooks.Oisin Canty3-22/+46
2021-07-02Tests: run Ruby applications inside temporary directory.Oisin Canty2-3/+20
2021-05-25Go: fixing tests for Go 1.16.Max Romanov2-0/+2
In Go 1.16, the module-aware mode is enabled by default; to fall back to previous behavior, the GO111MODULE environment variable should be set to 'auto'. Details: https://golang.org/doc/go1.16
2021-05-24Tests: test_settings_send_timeout improved.Andrei Zeliankou1-0/+11
Data length adjusts depending on socket buffer size when it's possible.
2021-05-24Node.js: renamed "require_shim" to "loader".Oisin Canty1-3/+3
2021-05-20Tests: Python targets.Oisin Canty1-2/+9
2021-05-12Tests: added test for TLS with IP in SAN.Andrei Zeliankou1-2/+7
2021-05-12Node.js: a shim for overriding "http" and "websocket" modules.Oisin Canty2-5/+29
Also added stubs for Server.address() This was done to prevent crashes in some popular frameworks like express Supports both CommonJS and the new ES Modules system syntax e.g: app.js: const http = require('http') app.mjs: import http from "http" Usage on Node 14.16.x and higher: { "type": "external", "processes": {"spare": 0}, "working_directory": '/project', "executable": "/usr/bin/env", "arguments": [ "node", "--loader", "unit-http/require_shim.mjs" "--require", "unit-http/require_shim", "app.js" ] } Usage on Node 14.15.x and lower: { "type": "external", "processes": {"spare": 0}, "working_directory": '/project', "executable": "/usr/bin/env", "arguments": [ "node", "--require", "unit-http/require_shim", "app.js" ] }
2021-05-05Tests: added tests for openat2() features.Andrei Zeliankou1-0/+32
2021-04-08Tests: preserving unit.log when run without restart.Max Romanov2-6/+35
Introducing "unit.log.Log" class for "unit.log" file management. Moving "findall()" function into TestApplicationProto. Using "os.kill()" to send signals.
2021-04-05Tests: style.Andrei Zeliankou5-30/+40
2021-03-26Tests: SNI.Andrei Zeliankou2-4/+20
2021-03-22Java: upgrading third-party components.Sergey A. Osokin1-1/+1
2021-02-18Tests: added regex check.Andrei Zeliankou1-0/+13
2021-02-10Tests: increased timeout in wait_for_record().Andrei Zeliankou1-2/+2
2021-02-08Tests: added "--restart" option.Andrei Zeliankou1-1/+1
Now Unit do not restart after each test by default.
2021-01-13Tests: waitformount() and waitforunmount() introduced.Andrei Zeliankou1-0/+32
2020-12-21Tests: introduced a separate cache directory for Go builds.Tiago Natel de Moura1-0/+1
The Go compiler can't detect changes to C header files when compiling CGO applications, and then this leads to Go test samples being linked with wrong libunit. This patch creates a new cache directory reused throughout the test suite.
2020-12-15Tests: fixed bug that disabled isolation tests.Tiago Natel de Moura1-1/+1
2020-12-09Tests: TestUnit class removed.Andrei Zeliankou2-38/+1
Prerequisite checks moved to the fixture in conftest.py.
2020-12-09Tests: isolation check moved to the pytest_sessionstart().Andrei Zeliankou4-186/+190
This change eliminates the need for some classes to run Unit one more time before running tests.
2020-12-08Tests: utils module introduced.Andrei Zeliankou2-1/+51
2020-12-06Tests: options moved to the separate class.Andrei Zeliankou14-13/+29
This change is necessary to separate the logic and prevent possible circular dependency.
2020-11-16Tests: fixing tests interrupt in terminal.Max Romanov4-3/+24
KeyboardInterrupt re-raised.
2020-11-10Python: supporting ASGI legacy protocol.Max Romanov1-1/+2
Introducing manual protocol selection for 'universal' apps and frameworks.
2020-11-10Tests: supporting instant app parameters in load().Max Romanov1-9/+13
2020-11-03Tests: force applications to build for JVM 8.Andrei Zeliankou1-0/+1
This change is made to avoid situations when an application is compiled for a version newer than the Java module used.
2020-11-02Java: upgrading 3rd-party components.Max Romanov1-1/+1
2020-10-29Isolation: mounting of procfs by default when using "rootfs".Tiago Natel de Moura1-0/+14
2020-10-28Tests: improving get_application_type() and fixing its name.Max Romanov6-27/+11
This patch also enables multiversion tests running for Java.
2020-10-27Tests: fixed isolation detection.Andrei Zeliankou3-27/+112
2020-10-19Tests: fixed unit.log print.Andrei Zeliankou10-219/+38
2020-10-07Tests: minor fixes.Andrei Zeliankou12-23/+23
2020-10-07Tests: fixed loading selected module version.Valentin Bartenev3-3/+15
Previously, for PHP, Ruby, and Perl the latest version was always loaded in multi-version tests.
2020-10-01Tests: added ASGI WebSocket.Max Romanov1-1/+1
2020-10-01Tests: minor fixes.Andrei Zeliankou8-69/+60
Fixed temporary dir removing. Fixed printing path to log. Module checks moved to the separate file.
2020-09-22Tests: introduced module name configuration.Max Romanov1-3/+10
Also fixed problem with "/" in application name.
2020-09-22Tests: improved response receiving while upgrade.Max Romanov1-4/+1
The patch required to process non-101 response.
2020-09-22Tests: using dict.get() method with default value.Max Romanov1-18/+9
No functional changes. Only code readability improved.
2020-09-16Tests: migrated to the pytest.Andrei Zeliankou14-305/+124
2020-07-28Tests: fixed double stop() call for some tests.Andrei Zeliankou1-6/+11
2020-07-28Tests: style.Andrei Zeliankou2-3/+2
2020-07-22Tests: switching stdout to blocking before printing log.Max Romanov1-3/+6
This is another attempt to fix the following error message: BlockingIOError: [Errno 11] write could not complete without blocking
2020-05-28Tests: Added rootfs tests.Tiago Natel de Moura3-31/+66
2020-04-14Tests: minor fixes and style.Andrei Zeliankou1-6/+2
2020-04-08Controller: improved handling of unix domain control socket.Valentin Bartenev1-4/+1
One of the ways to detect Unit's startup and subsequent readiness to accept commands relies on waiting for the control socket file to be created. Earlier, it was unreliable due to a race condition between the client's connect() and the daemon's listen() calls after the socket's bind() call. Now, unix domain listening sockets are created with a nxt_listen_socket_create() call as follows: s = socket(); unlink("path/to/socket.tmp") bind(s, "path/to/socket.tmp"); listen(s); rename("path/to/socket.tmp", "path/to/socket"); This eliminates a time-lapse when the socket file is already created but nobody is listening on it yet, which therefore prevents the condition described above. Also, it allows reliably detecting whether the socket is being used or simply wasn't cleaned after the daemon stopped abruptly. A successful connection to the socket file means the daemon has been started; otherwise, the file can be overwritten.