summaryrefslogtreecommitdiffhomepage
path: root/test/test_python_targets.py
diff options
context:
space:
mode:
authorKonstantin Pavlov <thresh@nginx.com>2023-08-31 09:41:46 -0700
committerKonstantin Pavlov <thresh@nginx.com>2023-08-31 09:41:46 -0700
commitc45c8919c7232eb20023484f6d1fc9f1f50395d8 (patch)
treecc12eb307c1611494948645e4b487fa06495c3d2 /test/test_python_targets.py
parent88c90e1c351ab8c5bd487a5cd4b735014b08e271 (diff)
parent9b22b6957bc87b3df002d0bc691fdae6a20abdac (diff)
downloadunit-1.31.0-1.tar.gz
unit-1.31.0-1.tar.bz2
Merged with the default branch.1.31.0-1
Diffstat (limited to '')
-rw-r--r--test/test_python_targets.py178
1 files changed, 90 insertions, 88 deletions
diff --git a/test/test_python_targets.py b/test/test_python_targets.py
index f55609ba..46e77c19 100644
--- a/test/test_python_targets.py
+++ b/test/test_python_targets.py
@@ -1,103 +1,105 @@
-from unit.applications.lang.python import TestApplicationPython
+from unit.applications.lang.python import ApplicationPython
from unit.option import option
+prerequisites = {'modules': {'python': 'all'}}
-class TestPythonTargets(TestApplicationPython):
- prerequisites = {'modules': {'python': 'all'}}
+client = ApplicationPython()
- def test_python_targets(self):
- python_dir = f'{option.test_dir}/python'
- assert 'success' in self.conf(
- {
- "listeners": {"*:7080": {"pass": "routes"}},
- "routes": [
- {
- "match": {"uri": "/1"},
- "action": {"pass": "applications/targets/1"},
- },
- {
- "match": {"uri": "/2"},
- "action": {"pass": "applications/targets/2"},
- },
- ],
- "applications": {
+def test_python_targets():
+ python_dir = f'{option.test_dir}/python'
+
+ assert 'success' in client.conf(
+ {
+ "listeners": {"*:7080": {"pass": "routes"}},
+ "routes": [
+ {
+ "match": {"uri": "/1"},
+ "action": {"pass": "applications/targets/1"},
+ },
+ {
+ "match": {"uri": "/2"},
+ "action": {"pass": "applications/targets/2"},
+ },
+ ],
+ "applications": {
+ "targets": {
+ "type": client.get_application_type(),
+ "working_directory": f'{python_dir}/targets/',
+ "path": f'{python_dir}/targets/',
"targets": {
- "type": self.get_application_type(),
- "working_directory": f'{python_dir}/targets/',
- "path": f'{python_dir}/targets/',
- "targets": {
- "1": {
- "module": "wsgi",
- "callable": "wsgi_target_a",
- },
- "2": {
- "module": "wsgi",
- "callable": "wsgi_target_b",
- },
+ "1": {
+ "module": "wsgi",
+ "callable": "wsgi_target_a",
},
- }
- },
- }
- )
+ "2": {
+ "module": "wsgi",
+ "callable": "wsgi_target_b",
+ },
+ },
+ }
+ },
+ }
+ )
- resp = self.get(url='/1')
- assert resp['status'] == 200
- assert resp['body'] == '1'
+ resp = client.get(url='/1')
+ assert resp['status'] == 200
+ assert resp['body'] == '1'
- resp = self.get(url='/2')
- assert resp['status'] == 200
- assert resp['body'] == '2'
+ resp = client.get(url='/2')
+ assert resp['status'] == 200
+ assert resp['body'] == '2'
- def test_python_targets_prefix(self):
- python_dir = f'{option.test_dir}/python'
- assert 'success' in self.conf(
- {
- "listeners": {"*:7080": {"pass": "routes"}},
- "routes": [
- {
- "match": {"uri": ["/app*"]},
- "action": {"pass": "applications/targets/app"},
- },
- {
- "match": {"uri": "*"},
- "action": {"pass": "applications/targets/catchall"},
- },
- ],
- "applications": {
+def test_python_targets_prefix():
+ python_dir = f'{option.test_dir}/python'
+
+ assert 'success' in client.conf(
+ {
+ "listeners": {"*:7080": {"pass": "routes"}},
+ "routes": [
+ {
+ "match": {"uri": ["/app*"]},
+ "action": {"pass": "applications/targets/app"},
+ },
+ {
+ "match": {"uri": "*"},
+ "action": {"pass": "applications/targets/catchall"},
+ },
+ ],
+ "applications": {
+ "targets": {
+ "type": "python",
+ "working_directory": f'{python_dir}/targets/',
+ "path": f'{python_dir}/targets/',
+ "protocol": "wsgi",
"targets": {
- "type": "python",
- "working_directory": f'{python_dir}/targets/',
- "path": f'{python_dir}/targets/',
- "protocol": "wsgi",
- "targets": {
- "app": {
- "module": "wsgi",
- "callable": "wsgi_target_prefix",
- "prefix": "/app/",
- },
- "catchall": {
- "module": "wsgi",
- "callable": "wsgi_target_prefix",
- "prefix": "/api",
- },
+ "app": {
+ "module": "wsgi",
+ "callable": "wsgi_target_prefix",
+ "prefix": "/app/",
},
- }
- },
- }
- )
+ "catchall": {
+ "module": "wsgi",
+ "callable": "wsgi_target_prefix",
+ "prefix": "/api",
+ },
+ },
+ }
+ },
+ }
+ )
- def check_prefix(url, body):
- resp = self.get(url=url)
- assert resp['status'] == 200
- assert resp['body'] == body
+ def check_prefix(url, body):
+ resp = client.get(url=url)
+ assert resp['status'] == 200
+ assert resp['body'] == body
- check_prefix('/app', '/app ')
- check_prefix('/app/', '/app /')
- check_prefix('/app/rest/user/', '/app /rest/user/')
- check_prefix('/catchall', 'No Script Name /catchall')
- check_prefix('/api', '/api ')
- check_prefix('/api/', '/api /')
- check_prefix('/apis', 'No Script Name /apis')
- check_prefix('/api/users/', '/api /users/')
+ check_prefix('/app', '/app ')
+ check_prefix('/app/', '/app /')
+ check_prefix('/app/rest/user/', '/app /rest/user/')
+ check_prefix('/catchall', 'No Script Name /catchall')
+ check_prefix('/api', '/api ')
+ check_prefix('/api/', '/api /')
+ check_prefix('/apis', 'No Script Name /apis')
+ check_prefix('/api/users/', '/api /users/')