summaryrefslogtreecommitdiffhomepage
path: root/test/test_java_application.py
diff options
context:
space:
mode:
authorMax Romanov <max.romanov@nginx.com>2020-11-05 00:06:13 +0300
committerMax Romanov <max.romanov@nginx.com>2020-11-05 00:06:13 +0300
commit28f1eb55e7c5d60ab4f705eb27e67d31f3fc4ad0 (patch)
treed170d2915a030a9d51098d9d433f75d6ddc0a624 /test/test_java_application.py
parent29db46c52ba0f05706d83ed75d88e4b57bac36e5 (diff)
downloadunit-28f1eb55e7c5d60ab4f705eb27e67d31f3fc4ad0.tar.gz
unit-28f1eb55e7c5d60ab4f705eb27e67d31f3fc4ad0.tar.bz2
Tests: added Java threading tests.
Diffstat (limited to 'test/test_java_application.py')
-rw-r--r--test/test_java_application.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/test/test_java_application.py b/test/test_java_application.py
index efafa6a1..41345e87 100644
--- a/test/test_java_application.py
+++ b/test/test_java_application.py
@@ -1012,3 +1012,44 @@ class TestJavaApplication(TestApplicationJava):
)
is not None
), 'file created'
+
+ def test_java_application_threads(self):
+ self.load('threads')
+
+ assert 'success' in self.conf(
+ '4', 'applications/threads/threads'
+ ), 'configure 4 threads'
+
+ socks = []
+
+ for i in range(4):
+ (_, sock) = self.get(
+ headers={
+ 'Host': 'localhost',
+ 'X-Delay': '2',
+ 'Connection': 'close',
+ },
+ no_recv=True,
+ start=True,
+ )
+
+ socks.append(sock)
+
+ time.sleep(0.25) # required to avoid greedy request reading
+
+ threads = set()
+
+ for sock in socks:
+ resp = self.recvall(sock).decode('utf-8')
+
+ self.log_in(resp)
+
+ resp = self._resp_to_dict(resp)
+
+ assert resp['status'] == 200, 'status'
+
+ threads.add(resp['headers']['X-Thread'])
+
+ sock.close()
+
+ assert len(socks) == len(threads), 'threads differs'