Commit Graph

577 Commits

Author SHA1 Message Date
Andrei Zeliankou
4404097e05 Tests: added "--restart" option.
Now Unit do not restart after each test by default.
2021-02-08 23:32:27 +00:00
Andrei Zeliankou
42725137f7 Tests: added tests for "path" option in Python application. 2021-02-04 15:09:54 +00:00
Max Romanov
e4e444b827 Router: fixing crash after WebSocket processing.
After WebSocket processing, the application port was released with incorrect
reason ("got request"), unnecessarily decrementing the active request counter.

The assertion was triggered only on application removal; a test was added
for this case.
2021-01-28 17:13:52 +03:00
Andrei Zeliankou
d43a84139d Tests: added missing checks for configuration results. 2021-01-14 03:04:20 +00:00
Andrei Zeliankou
5d983ea762 Tests: added test for "procfs" option. 2021-01-13 06:24:41 +00:00
Andrei Zeliankou
22dac5bd62 Tests: "language_deps" option checked more carefully. 2021-01-13 06:24:32 +00:00
Andrei Zeliankou
db9b70932b Tests: waitformount() and waitforunmount() introduced. 2021-01-13 06:24:26 +00:00
Andrei Zeliankou
6dc9c47ccd Tests: style. 2021-01-13 06:22:43 +00:00
Andrei Zeliankou
f5ac143246 Tests: unit_stop() removed where possible.
Since wait_for_record() was introduced there is no need
to stop Unit before parsing unit.log.
2021-01-12 06:20:23 +00:00
Tiago Natel de Moura
a0bc946db3 Tests: fixed test_respawn.py to act upon test processes.
Running `test_respawn_` test cases on a machine with Unit
daemon in background would fail tests because `ps ax` was
used without filtering out other unit instances.

This patch also prevents from tests killing other Unit
processes not related to tests.
2021-01-08 10:38:46 +00:00
Tiago Natel de Moura
13a06497de Tests: reordered asserts to avoid a test race.
The mount points are unmounted in the main process after it
detects the app process died.  By testing the `tmpfs: true`
first, it happens that main could start the `tmpfs: false`
test case before main cleans the old process mount points.
2021-01-07 16:51:27 +00:00
Max Romanov
d3d6864bdc Node.js: ServerRequest and ServerResponse compliance to Stream API.
ServerRequest now inherit stream Readable object.  ServerResponse
provides 'writable' property.

Thanks to Wu Jian Ping (@wujjpp).

This closes #274, closes #317 issues and closes #502 PR on GitHub.
2020-12-29 19:00:54 +03:00
Andrei Belov
53af12def0 Tests: ability to run unitd with specified "--user" option. 2020-12-23 18:30:17 +03:00
Tiago Natel de Moura
03436d2ec2 Tests: introduced a separate cache directory for Go builds.
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-21 11:00:46 +00:00
Tiago Natel de Moura
66ac35e9b9 Tests: fixed bug that disabled isolation tests. 2020-12-15 11:06:49 +00:00
Andrei Zeliankou
425ffc9416 Tests: hyphen sign used unstead of underscore as more common. 2020-12-12 20:08:03 +00:00
Andrei Zeliankou
16ac829c8f Tests: added tests for PHP_AUTH_* variables. 2020-12-10 19:28:41 +00:00
Andrei Zeliankou
7be62c3c21 Tests: TestUnit class removed.
Prerequisite checks moved to the fixture in conftest.py.
2020-12-09 16:17:46 +00:00
Andrei Zeliankou
4c846ae693 Tests: isolation check moved to the pytest_sessionstart().
This change eliminates the need for some classes
to run Unit one more time before running tests.
2020-12-09 16:15:50 +00:00
Tiago Natel de Moura
c7bd96b476 Tests: fixed ruby isolation.
While alternating between running priv and unpriv tests
locally, it happens that unpriv tests can't bind mount
or create sub directories inside directories created
by root.  This patch fixes this by pointing "rootfs"
to temporary directory.

Now the priv and unpriv test uses the same test function.
2020-12-08 16:38:41 +00:00
Andrei Zeliankou
b2e767819f Tests: skip_alert() converted to the fixture. 2020-12-08 14:37:33 +00:00
Andrei Zeliankou
8f91628563 Tests: utils module introduced. 2020-12-08 14:37:25 +00:00
Andrei Zeliankou
07789a23e9 Tests: options moved to the separate class.
This change is necessary to separate the logic
and prevent possible circular dependency.
2020-12-06 16:01:59 +00:00
Axel Duch
e3af18834d Router: matching regular expressions support. 2020-11-17 15:03:30 +00:00
Andrei Zeliankou
18ddb74772 Tests: added tests for a "discard_unsafe_fields" option. 2020-11-19 05:21:48 +00:00
Andrei Zeliankou
e154d7a3a2 Tests: style. 2020-11-19 05:21:22 +00:00
Tiago Natel de Moura
bbc29df8fe Tests: tmpfs automount. 2020-11-16 17:22:10 +00:00
Max Romanov
567f0a7b30 Tests: fixing tests interrupt in terminal.
KeyboardInterrupt re-raised.
2020-11-16 20:37:01 +03:00
Max Romanov
6d2b60ff3e Tests: making available versions unique. 2020-11-16 20:36:54 +03:00
Tiago Natel de Moura
d6829cc93b Tests: removed test case that reuses rootfs path.
Different applications cannot reuse the same rootfs path
if not using namespaces because of globally visible
builtin mount points.
2020-11-12 12:04:51 +00:00
Andrei Zeliankou
3278253d51 Tests: added a test for "body_buffer_size" option. 2020-11-12 00:07:08 +00:00
Andrei Zeliankou
a0ee50826a Tests: added a test for fastcgi_finish_request() function. 2020-11-11 14:24:40 +00:00
Max Romanov
5fd2933d2e Python: supporting ASGI legacy protocol.
Introducing manual protocol selection for 'universal' apps and frameworks.
2020-11-10 22:27:08 +03:00
Max Romanov
a8a9d80f8d Tests: supporting instant app parameters in load(). 2020-11-10 22:27:08 +03:00
Max Romanov
78599f0d3f Tests: fixing racing condition in ASGI threads test.
ASGI threads read all the requests from the queue before start processing it.
This why test need to wait a little to let the ASGI thread start request
processing and block.  In virtual environment any thread or process may
be delayed and only method to avoid racing is a reasonable sleep increase.
2020-11-06 16:45:03 +03:00
Max Romanov
fc9a012ceb Tests: added Perl threading tests. 2020-11-05 16:11:01 +03:00
Max Romanov
e17e73edda Tests: added Ruby threading tests. 2020-11-05 12:45:26 +03:00
Max Romanov
28f1eb55e7 Tests: added Java threading tests. 2020-11-05 00:06:13 +03:00
Max Romanov
f27953af61 Tests: added Python threading tests. 2020-11-05 00:05:02 +03:00
Andrei Zeliankou
a29d970f10 Tests: disabled detailed output by default. 2020-11-03 01:32:40 +00:00
Andrei Zeliankou
5182d2c398 Tests: force applications to build for JVM 8.
This change is made to avoid situations when an application
is compiled for a version newer than the Java module used.
2020-11-03 01:31:05 +00:00
Max Romanov
4ba9e1d005 Java: upgrading 3rd-party components. 2020-11-02 21:05:04 +03:00
Tiago Natel de Moura
0390cb3a61 Isolation: mounting of procfs by default when using "rootfs". 2020-10-29 20:30:53 +00:00
Tiago Natel de Moura
417f5d911d Tests: added new ruby isolation test without namespaces. 2020-10-29 14:31:37 +00:00
Max Romanov
6a00bab41e Tests: improving get_application_type() and fixing its name.
This patch also enables multiversion tests running for Java.
2020-10-28 00:01:46 +03:00
Andrei Zeliankou
8956e668cc Tests: fixed isolation detection. 2020-10-27 04:09:52 +00:00
Andrei Zeliankou
54837759f3 Tests: fixed unit.log print. 2020-10-19 22:25:29 +01:00
Valentin Bartenev
2821b3347c PHP: compatibility with 8.0.0 RC1.
This closes #474 PR on GitHub.
2020-10-06 18:12:05 +03:00
Andrei Zeliankou
6ec0ff3596 Tests: minor fixes. 2020-10-07 23:18:43 +01:00
Valentin Bartenev
645683f432 Tests: fixed loading selected module version.
Previously, for PHP, Ruby, and Perl the latest version was always loaded
in multi-version tests.
2020-10-07 22:04:54 +03:00