From 3b6d3151f1396f71ca34f047ecb55eaff020ee1c Mon Sep 17 00:00:00 2001 From: Andrey Zelenkov Date: Wed, 6 Dec 2017 15:36:05 +0300 Subject: Tests: added basic PHP tests. --- test/test_basic.py | 170 ---------------------------------------------- test/test_php_basic.py | 170 ++++++++++++++++++++++++++++++++++++++++++++++ test/test_python_basic.py | 170 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 340 insertions(+), 170 deletions(-) delete mode 100644 test/test_basic.py create mode 100644 test/test_php_basic.py create mode 100644 test/test_python_basic.py (limited to 'test') diff --git a/test/test_basic.py b/test/test_basic.py deleted file mode 100644 index ec893325..00000000 --- a/test/test_basic.py +++ /dev/null @@ -1,170 +0,0 @@ -import unit -import unittest - -class TestUnitBasic(unit.TestUnitControl): - - @classmethod - def setUpClass(cls): - u = unit.TestUnit() - module_missed = u.check_modules('python') - if module_missed: - raise unittest.SkipTest('Unit has no ' + module_missed + ' module') - - def test_get(self): - resp = self.get() - self.assertEqual(resp, {'listeners': {}, 'applications': {}}, 'empty') - self.assertEqual(self.get('/listeners'), {}, 'empty listeners prefix') - self.assertEqual(self.get('/applications'), {}, - 'empty applications prefix') - - self.put('/applications', """ - { - "app": { - "type": "python", - "workers": 1, - "path": "/app", - "module": "wsgi" - } - } - """) - - resp = self.get() - - self.assertEqual(resp['listeners'], {}, 'python empty listeners') - self.assertEqual(resp['applications'], - { - "app": { - "type": "python", - "workers": 1, - "path": "/app", - "module": "wsgi" - } - }, - 'python applications') - - self.assertEqual(self.get('/applications'), - { - "app": { - "type": "python", - "workers": 1, - "path": "/app", - "module":"wsgi" - } - }, - 'python applications prefix') - - self.assertEqual(self.get('/applications/app'), - { - "type": "python", - "workers": 1, - "path": "/app", - "module": "wsgi" - }, - 'python applications prefix 2') - - self.assertEqual(self.get('/applications/app/type'), 'python', - 'python applications type') - self.assertEqual(self.get('/applications/app/workers'), 1, - 'python applications workers') - - self.put('/listeners', '{"*:7080":{"application":"app"}}') - - self.assertEqual(self.get()['listeners'], - {"*:7080":{"application":"app"}}, 'python listeners') - self.assertEqual(self.get('/listeners'), - {"*:7080":{"application":"app"}}, 'python listeners prefix') - self.assertEqual(self.get('/listeners/*:7080'), - {"application":"app"}, 'python listeners prefix 2') - self.assertEqual(self.get('/listeners/*:7080/application'), 'app', - 'python listeners application') - - def test_put(self): - self.put('/', """ - { - "listeners": { - "*:7080": { - "application": "app" - } - }, - "applications": { - "app": { - "type": "python", - "workers": 1, - "path": "/app", - "module": "wsgi" - } - } - } - """) - - resp = self.get() - - self.assertEqual(resp['listeners'], {"*:7080":{"application":"app"}}, - 'put listeners') - - self.assertEqual(resp['applications'], - { - "app": { - "type": "python", - "workers": 1, - "path": "/app", - "module": "wsgi" - } - }, - 'put applications') - - self.put('/listeners', '{"*:7081":{"application":"app"}}') - self.assertEqual(self.get('/listeners'), - {"*:7081": {"application":"app"}}, 'put listeners prefix') - - self.put('/listeners/*:7082', '{"application":"app"}') - - self.assertEqual(self.get('/listeners'), - { - "*:7081": { - "application": "app" - }, - "*:7082": { - "application": "app" - } - }, - 'put listeners prefix 3') - - self.put('/applications/app/workers', '30') - self.assertEqual(self.get('/applications/app/workers'), 30, - 'put applications workers') - - self.put('/applications/app/path', '"/www"') - self.assertEqual(self.get('/applications/app/path'), '/www', - 'put applications path') - - def test_delete(self): - self.put('/', """ - { - "listeners": { - "*:7080": { - "application": "app" - } - }, - "applications": { - "app": { - "type": "python", - "workers": 1, - "path": "/app", - "module": "wsgi" - } - } - } - """) - - self.assertIn('error', self.delete('/applications/app'), - 'delete app before listener') - self.assertIn('success', self.delete('/listeners/*:7080'), - 'delete listener') - self.assertIn('success', self.delete('/applications/app'), - 'delete app after listener') - self.assertIn('error', self.delete('/applications/app'), - 'delete app again') - -if __name__ == '__main__': - unittest.main() diff --git a/test/test_php_basic.py b/test/test_php_basic.py new file mode 100644 index 00000000..b2051b01 --- /dev/null +++ b/test/test_php_basic.py @@ -0,0 +1,170 @@ +import unit +import unittest + +class TestUnitBasic(unit.TestUnitControl): + + @classmethod + def setUpClass(cls): + u = unit.TestUnit() + module_missed = u.check_modules('php') + if module_missed: + raise unittest.SkipTest('Unit has no ' + module_missed + ' module') + + def test_php_get(self): + resp = self.get() + self.assertEqual(resp, {'listeners': {}, 'applications': {}}, 'empty') + self.assertEqual(self.get('/listeners'), {}, 'empty listeners prefix') + self.assertEqual(self.get('/applications'), {}, + 'empty applications prefix') + + self.put('/applications', """ + { + "app": { + "type": "php", + "workers": 1, + "root": "/app", + "index": "index.php" + } + } + """) + + resp = self.get() + + self.assertEqual(resp['listeners'], {}, 'php empty listeners') + self.assertEqual(resp['applications'], + { + "app": { + "type": "php", + "workers": 1, + "root": "/app", + "index": "index.php" + } + }, + 'php applications') + + self.assertEqual(self.get('/applications'), + { + "app": { + "type": "php", + "workers": 1, + "root": "/app", + "index": "index.php" + } + }, + 'php applications prefix') + + self.assertEqual(self.get('/applications/app'), + { + "type": "php", + "workers": 1, + "root": "/app", + "index": "index.php" + }, + 'php applications prefix 2') + + self.assertEqual(self.get('/applications/app/type'), 'php', + 'php applications type') + self.assertEqual(self.get('/applications/app/workers'), 1, + 'php applications workers') + + self.put('/listeners', '{"*:7080":{"application":"app"}}') + + self.assertEqual(self.get()['listeners'], + {"*:7080":{"application":"app"}}, 'php listeners') + self.assertEqual(self.get('/listeners'), + {"*:7080":{"application":"app"}}, 'php listeners prefix') + self.assertEqual(self.get('/listeners/*:7080'), + {"application":"app"}, 'php listeners prefix 2') + self.assertEqual(self.get('/listeners/*:7080/application'), 'app', + 'php listeners application') + + def test_php_put(self): + self.put('/', """ + { + "listeners": { + "*:7080": { + "application": "app" + } + }, + "applications": { + "app": { + "type": "php", + "workers": 1, + "root": "/app", + "index": "index.php" + } + } + } + """) + + resp = self.get() + + self.assertEqual(resp['listeners'], {"*:7080":{"application":"app"}}, + 'put listeners') + + self.assertEqual(resp['applications'], + { + "app": { + "type": "php", + "workers": 1, + "root": "/app", + "index": "index.php" + } + }, + 'put applications') + + self.put('/listeners', '{"*:7081":{"application":"app"}}') + self.assertEqual(self.get('/listeners'), + {"*:7081": {"application":"app"}}, 'put listeners prefix') + + self.put('/listeners/*:7082', '{"application":"app"}') + + self.assertEqual(self.get('/listeners'), + { + "*:7081": { + "application": "app" + }, + "*:7082": { + "application": "app" + } + }, + 'put listeners prefix 3') + + self.put('/applications/app/workers', '30') + self.assertEqual(self.get('/applications/app/workers'), 30, + 'put applications workers') + + self.put('/applications/app/root', '"/www"') + self.assertEqual(self.get('/applications/app/root'), '/www', + 'put applications root') + + def test_php_delete(self): + self.put('/', """ + { + "listeners": { + "*:7080": { + "application": "app" + } + }, + "applications": { + "app": { + "type": "php", + "workers": 1, + "root": "/app", + "index": "index.php" + } + } + } + """) + + self.assertIn('error', self.delete('/applications/app'), + 'delete app before listener') + self.assertIn('success', self.delete('/listeners/*:7080'), + 'delete listener') + self.assertIn('success', self.delete('/applications/app'), + 'delete app after listener') + self.assertIn('error', self.delete('/applications/app'), + 'delete app again') + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_python_basic.py b/test/test_python_basic.py new file mode 100644 index 00000000..155407b7 --- /dev/null +++ b/test/test_python_basic.py @@ -0,0 +1,170 @@ +import unit +import unittest + +class TestUnitBasic(unit.TestUnitControl): + + @classmethod + def setUpClass(cls): + u = unit.TestUnit() + module_missed = u.check_modules('python') + if module_missed: + raise unittest.SkipTest('Unit has no ' + module_missed + ' module') + + def test_python_get(self): + resp = self.get() + self.assertEqual(resp, {'listeners': {}, 'applications': {}}, 'empty') + self.assertEqual(self.get('/listeners'), {}, 'empty listeners prefix') + self.assertEqual(self.get('/applications'), {}, + 'empty applications prefix') + + self.put('/applications', """ + { + "app": { + "type": "python", + "workers": 1, + "path": "/app", + "module": "wsgi" + } + } + """) + + resp = self.get() + + self.assertEqual(resp['listeners'], {}, 'python empty listeners') + self.assertEqual(resp['applications'], + { + "app": { + "type": "python", + "workers": 1, + "path": "/app", + "module": "wsgi" + } + }, + 'python applications') + + self.assertEqual(self.get('/applications'), + { + "app": { + "type": "python", + "workers": 1, + "path": "/app", + "module":"wsgi" + } + }, + 'python applications prefix') + + self.assertEqual(self.get('/applications/app'), + { + "type": "python", + "workers": 1, + "path": "/app", + "module": "wsgi" + }, + 'python applications prefix 2') + + self.assertEqual(self.get('/applications/app/type'), 'python', + 'python applications type') + self.assertEqual(self.get('/applications/app/workers'), 1, + 'python applications workers') + + self.put('/listeners', '{"*:7080":{"application":"app"}}') + + self.assertEqual(self.get()['listeners'], + {"*:7080":{"application":"app"}}, 'python listeners') + self.assertEqual(self.get('/listeners'), + {"*:7080":{"application":"app"}}, 'python listeners prefix') + self.assertEqual(self.get('/listeners/*:7080'), + {"application":"app"}, 'python listeners prefix 2') + self.assertEqual(self.get('/listeners/*:7080/application'), 'app', + 'python listeners application') + + def test_python_put(self): + self.put('/', """ + { + "listeners": { + "*:7080": { + "application": "app" + } + }, + "applications": { + "app": { + "type": "python", + "workers": 1, + "path": "/app", + "module": "wsgi" + } + } + } + """) + + resp = self.get() + + self.assertEqual(resp['listeners'], {"*:7080":{"application":"app"}}, + 'put listeners') + + self.assertEqual(resp['applications'], + { + "app": { + "type": "python", + "workers": 1, + "path": "/app", + "module": "wsgi" + } + }, + 'put applications') + + self.put('/listeners', '{"*:7081":{"application":"app"}}') + self.assertEqual(self.get('/listeners'), + {"*:7081": {"application":"app"}}, 'put listeners prefix') + + self.put('/listeners/*:7082', '{"application":"app"}') + + self.assertEqual(self.get('/listeners'), + { + "*:7081": { + "application": "app" + }, + "*:7082": { + "application": "app" + } + }, + 'put listeners prefix 3') + + self.put('/applications/app/workers', '30') + self.assertEqual(self.get('/applications/app/workers'), 30, + 'put applications workers') + + self.put('/applications/app/path', '"/www"') + self.assertEqual(self.get('/applications/app/path'), '/www', + 'put applications path') + + def test_python_delete(self): + self.put('/', """ + { + "listeners": { + "*:7080": { + "application": "app" + } + }, + "applications": { + "app": { + "type": "python", + "workers": 1, + "path": "/app", + "module": "wsgi" + } + } + } + """) + + self.assertIn('error', self.delete('/applications/app'), + 'delete app before listener') + self.assertIn('success', self.delete('/listeners/*:7080'), + 'delete listener') + self.assertIn('success', self.delete('/applications/app'), + 'delete app after listener') + self.assertIn('error', self.delete('/applications/app'), + 'delete app again') + +if __name__ == '__main__': + unittest.main() -- cgit