Commit Graph

563 Commits

Author SHA1 Message Date
Max Romanov
86740ab34b Introducing app joint to accurate app release.
For accurate app descriptor release, it is required to count the number of
use counts.  Use count increased when:
- app linked to configuration app queue;
- socket conf stores pointer to app;
- request for start app process posted to router service thread;

Application port has pointer to app, but it does not increase use count
to avoid use count loop.

Timer needs a pointer to nxt_timer_t which is stored in engine timers tree.
nxt_timer_t now resides in nxt_app_joint_t and does not lock the application.

Start process port RPC handlers is also linked to nxt_app_joint_t.

App joint (nxt_app_joint_t) is a 'weak pointer':
- single threaded;
- use countable;
- store pointer to nxt_app_t (which can be NULL);

nxt_app_t has pointer to nxt_app_joint_t and update its pointer to app.
2018-08-10 19:27:13 +03:00
Andrey Zelenkov
6c0c3dcaa7 Tests: simple "Transfer-Encoding" client header test. 2018-08-08 15:36:30 +03:00
Andrey Zelenkov
eee6102a28 Tests: more reconfigure tests. 2018-08-08 15:30:05 +03:00
Andrey Zelenkov
09268676ef Tests: remove unused function.
This function was accidentally added in e0f0cd7d244a.
2018-08-06 19:40:37 +03:00
Max Romanov
b021188e95 Python: decoding unicode strings as Latin1.
According to PEP 3333, header names and values should be decoded as Latin1.
2018-08-06 19:16:45 +03:00
Max Romanov
1bb22d1e92 Unit application library.
Library now used in all language modules.
Old 'nxt_app_*' code removed.

See src/test/nxt_unit_app_test.c for usage sample.
2018-08-06 17:27:33 +03:00
Andrey Zelenkov
b6ce2da65c Tests: expectedFailure removed from test_settings_idle_timeout.
Fix committed in f04b28aa6e02.
2018-07-30 20:07:31 +03:00
Andrey Zelenkov
7f57b6d984 Tests: fixed test_settings_idle_timeout. 2018-07-30 17:01:14 +03:00
Andrey Zelenkov
a458f50d59 Tests: fixed header value char tests.
Use byte strings to avoid problems with encoding.
2018-07-30 16:40:52 +03:00
Andrey Zelenkov
cfe91315eb Tests: HTTP settings. 2018-07-13 20:15:50 +03:00
Andrey Zelenkov
96a4f9f032 Tests: more php.ini options tests. 2018-07-11 19:35:46 +03:00
Andrey Zelenkov
223ba37ab5 Tests: more chars in header values tests. 2018-07-11 19:35:36 +03:00
Andrey Zelenkov
b82954a5af Tests: empty configuration. 2018-07-11 19:35:23 +03:00
Andrey Zelenkov
f2a856aa3b Tests: Go application tests. 2018-06-08 18:32:55 +03:00
Andrey Zelenkov
2b39ed5dfb Tests: added tests for "precision" option in php.ini. 2018-06-07 21:13:55 +03:00
Andrey Zelenkov
857bddeea6 Tests: added keep-alive with reconfiguration test. 2018-05-30 19:29:40 +03:00
Andrey Zelenkov
569a907dbb Tests: configuration of environment variables. 2018-05-29 15:29:01 +03:00
Andrey Zelenkov
3b7238996a Tests: initial PHP application tests. 2018-05-22 20:20:14 +03:00
Andrey Zelenkov
7d224bfc9e Tests: added tests for SERVER_SOFTWARE variable. 2018-05-21 16:41:33 +03:00
Andrey Zelenkov
d9f8479375 Tests: response handling improved. 2018-04-26 17:37:24 +03:00
Andrey Zelenkov
a44d358f29 Tests: added test for callable write() in Python. 2018-04-26 17:37:24 +03:00
Andrey Zelenkov
0658f9bd71 Tests: added access log test with unix socket. 2018-04-23 15:26:52 +03:00
Andrey Zelenkov
b6226d6945 Tests: added delay to wait for requests logging. 2018-04-23 15:26:46 +03:00
Andrey Zelenkov
f264adeae9 Tests: removed alert skips after b6ca49c1da1b. 2018-04-23 15:15:09 +03:00
Andrey Zelenkov
961e8d800f Tests: re-opening access log file. 2018-04-18 16:02:43 +03:00
Andrey Zelenkov
3e2326cff1 Tests: graceful shutdown. 2018-04-18 16:02:37 +03:00
Andrey Zelenkov
62aa3a5dae Tests: access_log tests. 2018-04-11 18:34:11 +03:00
Andrey Zelenkov
f6c3ef7ed3 Tests: added Python test with not iterable object. 2018-04-05 17:55:06 +03:00
Andrey Zelenkov
43ba7aad6c Tests: fixed unwanted comment in a11b80dedc6b. 2018-04-04 15:33:11 +03:00
Andrey Zelenkov
151160c110 Tests: Perl script with syntax error. 2018-04-02 19:20:11 +03:00
Andrey Zelenkov
1583d659ab Tests: change alert skip in test_listeners_empty after RPC fixes. 2018-04-02 18:37:45 +03:00
Andrey Zelenkov
a01a98ce36 Tests: more Python tests. 2018-04-02 17:03:41 +03:00
Andrey Zelenkov
efb71121b9 Tests: added Python test with iterator context. 2018-04-02 17:03:41 +03:00
Andrey Zelenkov
2028f3a04b Tests: use "%Z" directive while parsing Date header. 2018-04-02 15:50:05 +03:00
Andrey Zelenkov
c7e67446a3 Tests: Ruby module. 2018-03-21 18:26:40 +03:00
Andrey Zelenkov
82bb66993e Tests: more Perl tests. 2018-03-19 19:03:31 +03:00
Andrey Zelenkov
f0df93ee3b Tests: HTTP header field and value tests. 2018-03-16 17:45:25 +03:00
Valentin Bartenev
bebc5845f8 Capitalization in the "Server" field. 2018-03-13 20:32:47 +03:00
Andrey Zelenkov
30a32c2f09 Tests: detect alerts and Sanitizer errors. 2018-03-06 16:58:47 +03:00
Andrey Zelenkov
6aa00fa8d0 Tests: more configuration tests. 2018-02-26 20:18:24 +03:00
Andrey Zelenkov
a89747e97c Tests: more perl tests. 2018-02-26 19:53:40 +03:00
Andrey Zelenkov
6d79c559b5 Tests: handle ConnectionRefusedError in TestUnitHTTP.http(). 2018-02-20 20:34:46 +03:00
Andrey Zelenkov
09f2009df5 Tests: reworked python tests with application. 2018-02-20 20:34:41 +03:00
Andrey Zelenkov
ee39da0e00 Tests: removed unused code in unit.py. 2018-02-14 17:14:16 +03:00
Andrey Zelenkov
e2c3fa6304 Tests: perl module. 2018-02-12 19:32:54 +03:00
Valentin Bartenev
9646772a00 HTTP: the Date response header. 2018-02-12 16:58:40 +03:00
Andrey Zelenkov
0d032c1036 Tests: expectedFailure removed from test_python_keepalive.py.
Fix committed in 28a2b93de75f.
2018-02-08 16:29:37 +03:00
Andrey Zelenkov
b4e467e669 Fixed configuration checks for "max" property. 2018-02-06 20:31:48 +03:00
Andrey Zelenkov
5c35d30cc8 Tests: more tests for processes. 2018-02-06 20:31:48 +03:00
Andrey Zelenkov
993f8f2d5c Tests: changed process counting in test_python_procman.py. 2018-02-06 20:31:42 +03:00