2023-06-14 17:20:09 +00:00
|
|
|
from unit.control import Control
|
2018-01-17 12:52:01 +00:00
|
|
|
|
2023-06-12 13:16:59 +00:00
|
|
|
prerequisites = {'modules': {'php': 'any'}}
|
2018-01-17 12:52:01 +00:00
|
|
|
|
2023-06-14 17:20:09 +00:00
|
|
|
client = Control()
|
2018-01-17 12:52:01 +00:00
|
|
|
|
2023-06-14 17:20:09 +00:00
|
|
|
conf_app = {
|
|
|
|
"app": {
|
|
|
|
"type": "php",
|
|
|
|
"processes": {"spare": 0},
|
|
|
|
"root": "/app",
|
|
|
|
"index": "index.php",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
conf_basic = {
|
2023-11-08 18:37:02 +00:00
|
|
|
"listeners": {"*:8080": {"pass": "applications/app"}},
|
2023-06-14 17:20:09 +00:00
|
|
|
"applications": conf_app,
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
def test_php_get_applications():
|
|
|
|
assert 'success' in client.conf(conf_app, 'applications')
|
|
|
|
|
|
|
|
conf = client.conf_get()
|
|
|
|
|
|
|
|
assert conf['listeners'] == {}, 'listeners'
|
|
|
|
assert conf['applications'] == {
|
2018-01-30 13:16:52 +00:00
|
|
|
"app": {
|
|
|
|
"type": "php",
|
2019-03-26 20:38:30 +00:00
|
|
|
"processes": {"spare": 0},
|
2018-01-30 13:16:52 +00:00
|
|
|
"root": "/app",
|
2019-03-26 20:38:30 +00:00
|
|
|
"index": "index.php",
|
2018-01-24 12:43:04 +00:00
|
|
|
}
|
2023-06-14 17:20:09 +00:00
|
|
|
}, 'applications'
|
2018-01-24 12:43:04 +00:00
|
|
|
|
2023-06-14 17:20:09 +00:00
|
|
|
assert client.conf_get('applications') == {
|
|
|
|
"app": {
|
2020-09-16 20:31:15 +00:00
|
|
|
"type": "php",
|
|
|
|
"processes": {"spare": 0},
|
|
|
|
"root": "/app",
|
|
|
|
"index": "index.php",
|
2023-06-14 17:20:09 +00:00
|
|
|
}
|
|
|
|
}, 'applications prefix'
|
|
|
|
|
|
|
|
assert client.conf_get('applications/app') == {
|
|
|
|
"type": "php",
|
|
|
|
"processes": {"spare": 0},
|
|
|
|
"root": "/app",
|
|
|
|
"index": "index.php",
|
|
|
|
}, 'applications prefix 2'
|
|
|
|
|
|
|
|
assert client.conf_get('applications/app/type') == 'php', 'type'
|
|
|
|
assert (
|
|
|
|
client.conf_get('applications/app/processes/spare') == 0
|
|
|
|
), 'spare processes'
|
|
|
|
|
|
|
|
|
|
|
|
def test_php_get_listeners():
|
|
|
|
assert 'success' in client.conf(conf_basic)
|
|
|
|
|
|
|
|
assert client.conf_get()['listeners'] == {
|
2023-11-08 18:37:02 +00:00
|
|
|
"*:8080": {"pass": "applications/app"}
|
2023-06-14 17:20:09 +00:00
|
|
|
}, 'listeners'
|
|
|
|
|
|
|
|
assert client.conf_get('listeners') == {
|
2023-11-08 18:37:02 +00:00
|
|
|
"*:8080": {"pass": "applications/app"}
|
2023-06-14 17:20:09 +00:00
|
|
|
}, 'listeners prefix'
|
|
|
|
|
2023-11-08 18:37:02 +00:00
|
|
|
assert client.conf_get('listeners/*:8080') == {
|
2023-06-14 17:20:09 +00:00
|
|
|
"pass": "applications/app"
|
|
|
|
}, 'listeners prefix 2'
|
|
|
|
|
|
|
|
|
|
|
|
def test_php_change_listener():
|
|
|
|
assert 'success' in client.conf(conf_basic)
|
|
|
|
assert 'success' in client.conf(
|
2023-11-08 18:37:02 +00:00
|
|
|
{"*:8081": {"pass": "applications/app"}}, 'listeners'
|
2023-06-14 17:20:09 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
assert client.conf_get('listeners') == {
|
2023-11-08 18:37:02 +00:00
|
|
|
"*:8081": {"pass": "applications/app"}
|
2023-06-14 17:20:09 +00:00
|
|
|
}, 'change listener'
|
|
|
|
|
|
|
|
|
|
|
|
def test_php_add_listener():
|
|
|
|
assert 'success' in client.conf(conf_basic)
|
|
|
|
assert 'success' in client.conf(
|
2023-11-08 18:37:02 +00:00
|
|
|
{"pass": "applications/app"}, 'listeners/*:8082'
|
2023-06-14 17:20:09 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
assert client.conf_get('listeners') == {
|
2023-11-08 18:37:02 +00:00
|
|
|
"*:8080": {"pass": "applications/app"},
|
|
|
|
"*:8082": {"pass": "applications/app"},
|
2023-06-14 17:20:09 +00:00
|
|
|
}, 'add listener'
|
|
|
|
|
|
|
|
|
|
|
|
def test_php_change_application():
|
|
|
|
assert 'success' in client.conf(conf_basic)
|
|
|
|
|
|
|
|
assert 'success' in client.conf('30', 'applications/app/processes/max')
|
|
|
|
assert (
|
|
|
|
client.conf_get('applications/app/processes/max') == 30
|
|
|
|
), 'change application max'
|
|
|
|
|
|
|
|
assert 'success' in client.conf('"/www"', 'applications/app/root')
|
|
|
|
assert (
|
|
|
|
client.conf_get('applications/app/root') == '/www'
|
|
|
|
), 'change application root'
|
|
|
|
|
|
|
|
|
|
|
|
def test_php_delete():
|
|
|
|
assert 'success' in client.conf(conf_basic)
|
|
|
|
|
|
|
|
assert 'error' in client.conf_delete('applications/app')
|
2023-11-08 18:37:02 +00:00
|
|
|
assert 'success' in client.conf_delete('listeners/*:8080')
|
2023-06-14 17:20:09 +00:00
|
|
|
assert 'success' in client.conf_delete('applications/app')
|
|
|
|
assert 'error' in client.conf_delete('applications/app')
|
|
|
|
|
|
|
|
|
|
|
|
def test_php_delete_blocks():
|
|
|
|
assert 'success' in client.conf(conf_basic)
|
|
|
|
|
|
|
|
assert 'success' in client.conf_delete('listeners')
|
|
|
|
assert 'success' in client.conf_delete('applications')
|
|
|
|
|
|
|
|
assert 'success' in client.conf(conf_app, 'applications')
|
|
|
|
assert 'success' in client.conf(
|
2023-11-08 18:37:02 +00:00
|
|
|
{"*:8081": {"pass": "applications/app"}}, 'listeners'
|
2023-06-14 17:20:09 +00:00
|
|
|
), 'applications restore'
|