summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAndrey Zelenkov <zelenkov@nginx.com>2017-12-06 15:36:05 +0300
committerAndrey Zelenkov <zelenkov@nginx.com>2017-12-06 15:36:05 +0300
commit3b6d3151f1396f71ca34f047ecb55eaff020ee1c (patch)
treefff314856f64fb15484ce9166b80312c8f338344
parent7ae5bef233d744f514427a33e1da531040d3fd6f (diff)
downloadunit-3b6d3151f1396f71ca34f047ecb55eaff020ee1c.tar.gz
unit-3b6d3151f1396f71ca34f047ecb55eaff020ee1c.tar.bz2
Tests: added basic PHP tests.
-rw-r--r--test/test_php_basic.py170
-rw-r--r--test/test_python_basic.py (renamed from test/test_basic.py)6
2 files changed, 173 insertions, 3 deletions
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_basic.py b/test/test_python_basic.py
index ec893325..155407b7 100644
--- a/test/test_basic.py
+++ b/test/test_python_basic.py
@@ -10,7 +10,7 @@ class TestUnitBasic(unit.TestUnitControl):
if module_missed:
raise unittest.SkipTest('Unit has no ' + module_missed + ' module')
- def test_get(self):
+ def test_python_get(self):
resp = self.get()
self.assertEqual(resp, {'listeners': {}, 'applications': {}}, 'empty')
self.assertEqual(self.get('/listeners'), {}, 'empty listeners prefix')
@@ -78,7 +78,7 @@ class TestUnitBasic(unit.TestUnitControl):
self.assertEqual(self.get('/listeners/*:7080/application'), 'app',
'python listeners application')
- def test_put(self):
+ def test_python_put(self):
self.put('/', """
{
"listeners": {
@@ -138,7 +138,7 @@ class TestUnitBasic(unit.TestUnitControl):
self.assertEqual(self.get('/applications/app/path'), '/www',
'put applications path')
- def test_delete(self):
+ def test_python_delete(self):
self.put('/', """
{
"listeners": {