summaryrefslogtreecommitdiffhomepage
path: root/test/test_python_procman.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_python_procman.py')
-rw-r--r--test/test_python_procman.py189
1 files changed, 112 insertions, 77 deletions
diff --git a/test/test_python_procman.py b/test/test_python_procman.py
index 2efe59c0..f4f53678 100644
--- a/test/test_python_procman.py
+++ b/test/test_python_procman.py
@@ -4,8 +4,8 @@ import subprocess
import unittest
import unit
-class TestUnitPythonProcman(unit.TestUnitApplicationPython):
+class TestUnitPythonProcman(unit.TestUnitApplicationPython):
def setUpClass():
unit.TestUnit().check_modules('python')
@@ -29,55 +29,88 @@ class TestUnitPythonProcman(unit.TestUnitApplicationPython):
def test_python_processes_access(self):
self.conf('1', 'applications/' + self.app_name + '/processes')
- self.assertIn('error', self.conf_get('/applications/' + self.app_name +
- '/processes/max'), 'max no access')
- self.assertIn('error', self.conf_get('/applications/' + self.app_name +
- '/processes/spare'), 'spare no access')
- self.assertIn('error', self.conf_get('/applications/' + self.app_name +
- '/processes/idle_timeout'), 'idle_timeout no access')
+ self.assertIn(
+ 'error',
+ self.conf_get('/applications/' + self.app_name + '/processes/max'),
+ 'max no access',
+ )
+ self.assertIn(
+ 'error',
+ self.conf_get(
+ '/applications/' + self.app_name + '/processes/spare'
+ ),
+ 'spare no access',
+ )
+ self.assertIn(
+ 'error',
+ self.conf_get(
+ '/applications/' + self.app_name + '/processes/idle_timeout'
+ ),
+ 'idle_timeout no access',
+ )
def test_python_processes_spare_negative(self):
- self.assertIn('error', self.conf({
- "spare": -1
- }, 'applications/' + self.app_name + '/processes'), 'negative spare')
+ self.assertIn(
+ 'error',
+ self.conf(
+ {"spare": -1}, 'applications/' + self.app_name + '/processes'
+ ),
+ 'negative spare',
+ )
def test_python_processes_max_negative(self):
- self.assertIn('error', self.conf({
- "max": -1
- }, 'applications/' + self.app_name + '/processes'), 'negative max')
+ self.assertIn(
+ 'error',
+ self.conf(
+ {"max": -1}, 'applications/' + self.app_name + '/processes'
+ ),
+ 'negative max',
+ )
def test_python_processes_idle_timeout_negative(self):
- self.assertIn('error', self.conf({
- "idle_timeout": -1
- }, 'applications/' + self.app_name + '/processes'),
- 'negative idle_timeout')
+ self.assertIn(
+ 'error',
+ self.conf(
+ {"idle_timeout": -1},
+ 'applications/' + self.app_name + '/processes',
+ ),
+ 'negative idle_timeout',
+ )
def test_python_processes_spare_gt_max_default(self):
- self.assertIn('error', self.conf({"spare": 2},
- 'applications/' + self.app_name + '/processes'),
- 'spare greater than max default')
+ self.assertIn(
+ 'error',
+ self.conf(
+ {"spare": 2}, 'applications/' + self.app_name + '/processes'
+ ),
+ 'spare greater than max default',
+ )
def test_python_processes_spare_gt_max(self):
- self.assertIn('error', self.conf({
- "spare": 2,
- "max": 1,
- "idle_timeout": 1
- }, '/applications/' + self.app_name + '/processes'),
- 'spare greater than max')
+ self.assertIn(
+ 'error',
+ self.conf(
+ {"spare": 2, "max": 1, "idle_timeout": 1},
+ '/applications/' + self.app_name + '/processes',
+ ),
+ 'spare greater than max',
+ )
def test_python_processes_max_zero(self):
- self.assertIn('error', self.conf({
- "spare": 0,
- "max": 0,
- "idle_timeout": 1
- }, 'applications/' + self.app_name + '/processes'), 'max 0')
+ self.assertIn(
+ 'error',
+ self.conf(
+ {"spare": 0, "max": 0, "idle_timeout": 1},
+ 'applications/' + self.app_name + '/processes',
+ ),
+ 'max 0',
+ )
def test_python_processes_idle_timeout_zero(self):
- self.conf({
- "spare": 0,
- "max": 2,
- "idle_timeout": 0
- }, 'applications/' + self.app_name + '/processes')
+ self.conf(
+ {"spare": 0, "max": 2, "idle_timeout": 0},
+ 'applications/' + self.app_name + '/processes',
+ )
self.get()
self.assertEqual(len(self.pids_for_process()), 0, 'idle timeout 0')
@@ -114,11 +147,10 @@ class TestUnitPythonProcman(unit.TestUnitApplicationPython):
self.assertTrue(pids.issubset(pids_new), 'prefork same processes')
def test_python_ondemand(self):
- self.conf({
- "spare": 0,
- "max": 8,
- "idle_timeout": 1
- }, 'applications/' + self.app_name + '/processes')
+ self.conf(
+ {"spare": 0, "max": 8, "idle_timeout": 1},
+ 'applications/' + self.app_name + '/processes',
+ )
self.assertEqual(len(self.pids_for_process()), 0, 'on-demand 0')
@@ -131,16 +163,17 @@ class TestUnitPythonProcman(unit.TestUnitApplicationPython):
time.sleep(1)
- self.assertEqual(len(self.pids_for_process()), 0, 'on-demand stop idle')
+ self.assertEqual(
+ len(self.pids_for_process()), 0, 'on-demand stop idle'
+ )
self.stop_all()
def test_python_scale_updown(self):
- self.conf({
- "spare": 2,
- "max": 8,
- "idle_timeout": 1
- }, 'applications/' + self.app_name + '/processes')
+ self.conf(
+ {"spare": 2, "max": 8, "idle_timeout": 1},
+ 'applications/' + self.app_name + '/processes',
+ )
pids = self.pids_for_process()
self.assertEqual(len(pids), 2, 'updown 2')
@@ -151,7 +184,9 @@ class TestUnitPythonProcman(unit.TestUnitApplicationPython):
self.assertTrue(pids.issubset(pids_new), 'updown 3 only 1 new')
self.get()
- self.assertSetEqual(self.pids_for_process(), pids_new, 'updown still 3')
+ self.assertSetEqual(
+ self.pids_for_process(), pids_new, 'updown still 3'
+ )
time.sleep(1)
@@ -166,11 +201,10 @@ class TestUnitPythonProcman(unit.TestUnitApplicationPython):
self.stop_all()
def test_python_reconfigure(self):
- self.conf({
- "spare": 2,
- "max": 6,
- "idle_timeout": 1
- }, 'applications/' + self.app_name + '/processes')
+ self.conf(
+ {"spare": 2, "max": 6, "idle_timeout": 1},
+ 'applications/' + self.app_name + '/processes',
+ )
pids = self.pids_for_process()
self.assertEqual(len(pids), 2, 'reconf 2')
@@ -191,11 +225,10 @@ class TestUnitPythonProcman(unit.TestUnitApplicationPython):
self.stop_all()
def test_python_idle_timeout(self):
- self.conf({
- "spare": 0,
- "max": 6,
- "idle_timeout": 2
- }, 'applications/' + self.app_name + '/processes')
+ self.conf(
+ {"spare": 0, "max": 6, "idle_timeout": 2},
+ 'applications/' + self.app_name + '/processes',
+ )
self.get()
pids = self.pids_for_process()
@@ -209,40 +242,42 @@ class TestUnitPythonProcman(unit.TestUnitApplicationPython):
pids_new = self.pids_for_process()
self.assertEqual(len(pids_new), 1, 'idle timeout still 1')
- self.assertSetEqual(self.pids_for_process(), pids,
- 'idle timeout still 1 same pid')
+ self.assertSetEqual(
+ self.pids_for_process(), pids, 'idle timeout still 1 same pid'
+ )
time.sleep(1)
self.assertEqual(len(self.pids_for_process()), 0, 'idle timed out')
def test_python_processes_connection_keepalive(self):
- self.conf({
- "spare": 0,
- "max": 6,
- "idle_timeout": 2
- }, 'applications/' + self.app_name + '/processes')
-
- (resp, sock) = self.get(headers={
- 'Host': 'localhost',
- 'Connection': 'keep-alive'
- }, start=True, read_timeout=1)
- self.assertEqual(len(self.pids_for_process()), 1,
- 'keepalive connection 1')
+ self.conf(
+ {"spare": 0, "max": 6, "idle_timeout": 2},
+ 'applications/' + self.app_name + '/processes',
+ )
+
+ (resp, sock) = self.get(
+ headers={'Host': 'localhost', 'Connection': 'keep-alive'},
+ start=True,
+ read_timeout=1,
+ )
+ self.assertEqual(
+ len(self.pids_for_process()), 1, 'keepalive connection 1'
+ )
time.sleep(2)
- self.assertEqual(len(self.pids_for_process()), 0, 'keepalive connection 0')
+ self.assertEqual(
+ len(self.pids_for_process()), 0, 'keepalive connection 0'
+ )
sock.close()
def stop_all(self):
- self.conf({
- "listeners": {},
- "applications": {}
- })
+ self.conf({"listeners": {}, "applications": {}})
self.assertEqual(len(self.pids_for_process()), 0, 'stop all')
+
if __name__ == '__main__':
TestUnitPythonProcman.main()