summaryrefslogtreecommitdiffhomepage
path: root/test/test_php_isolation.py
diff options
context:
space:
mode:
authorAndrei Zeliankou <zelenkov@nginx.com>2023-06-14 18:20:09 +0100
committerAndrei Zeliankou <zelenkov@nginx.com>2023-06-14 18:20:09 +0100
commitc183bd8749a19477390f8cb77efe5f6d223f0905 (patch)
tree4e821e9cb07be9a86bf2d442acb3ea6740ba5a99 /test/test_php_isolation.py
parentc6d05191a069ac150cc8eb2bece75cf79c0a465a (diff)
downloadunit-c183bd8749a19477390f8cb77efe5f6d223f0905.tar.gz
unit-c183bd8749a19477390f8cb77efe5f6d223f0905.tar.bz2
Tests: get rid of classes in test files.
Class usage came from the unittest framework and it was always redundant after migration to the pytest. This commit removes classes from files containing tests to make them more readable and understandable.
Diffstat (limited to 'test/test_php_isolation.py')
-rw-r--r--test/test_php_isolation.py136
1 files changed, 69 insertions, 67 deletions
diff --git a/test/test_php_isolation.py b/test/test_php_isolation.py
index e8471015..f248da41 100644
--- a/test/test_php_isolation.py
+++ b/test/test_php_isolation.py
@@ -1,83 +1,85 @@
-from unit.applications.lang.php import TestApplicationPHP
+from unit.applications.lang.php import ApplicationPHP
prerequisites = {'modules': {'php': 'any'}, 'features': {'isolation': True}}
+client = ApplicationPHP()
-class TestPHPIsolation(TestApplicationPHP):
- def test_php_isolation_rootfs(self, is_su, require, temp_dir):
- isolation = {'rootfs': temp_dir}
-
- if not is_su:
- require(
- {
- 'features': {
- 'isolation': [
- 'unprivileged_userns_clone',
- 'user',
- 'mnt',
- 'pid',
- ]
- }
- }
- )
-
- isolation['namespaces'] = {
- 'mount': True,
- 'credential': True,
- 'pid': True,
- }
- self.load('phpinfo', isolation=isolation)
+def test_php_isolation_rootfs(is_su, require, temp_dir):
+ isolation = {'rootfs': temp_dir}
- assert 'success' in self.conf(
- '"/app/php/phpinfo"', 'applications/phpinfo/root'
- )
- assert 'success' in self.conf(
- '"/app/php/phpinfo"', 'applications/phpinfo/working_directory'
+ if not is_su:
+ require(
+ {
+ 'features': {
+ 'isolation': [
+ 'unprivileged_userns_clone',
+ 'user',
+ 'mnt',
+ 'pid',
+ ]
+ }
+ }
)
- assert self.get()['status'] == 200, 'empty rootfs'
-
- def test_php_isolation_rootfs_extensions(self, is_su, require, temp_dir):
- isolation = {'rootfs': temp_dir}
-
- if not is_su:
- require(
- {
- 'features': {
- 'isolation': [
- 'unprivileged_userns_clone',
- 'user',
- 'mnt',
- 'pid',
- ]
- }
+ isolation['namespaces'] = {
+ 'mount': True,
+ 'credential': True,
+ 'pid': True,
+ }
+
+ client.load('phpinfo', isolation=isolation)
+
+ assert 'success' in client.conf(
+ '"/app/php/phpinfo"', 'applications/phpinfo/root'
+ )
+ assert 'success' in client.conf(
+ '"/app/php/phpinfo"', 'applications/phpinfo/working_directory'
+ )
+
+ assert client.get()['status'] == 200, 'empty rootfs'
+
+
+def test_php_isolation_rootfs_extensions(is_su, require, temp_dir):
+ isolation = {'rootfs': temp_dir}
+
+ if not is_su:
+ require(
+ {
+ 'features': {
+ 'isolation': [
+ 'unprivileged_userns_clone',
+ 'user',
+ 'mnt',
+ 'pid',
+ ]
}
- )
-
- isolation['namespaces'] = {
- 'mount': True,
- 'credential': True,
- 'pid': True,
}
+ )
- self.load('list-extensions', isolation=isolation)
+ isolation['namespaces'] = {
+ 'mount': True,
+ 'credential': True,
+ 'pid': True,
+ }
- assert 'success' in self.conf(
- '"/app/php/list-extensions"', 'applications/list-extensions/root'
- )
+ client.load('list-extensions', isolation=isolation)
- assert 'success' in self.conf(
- {'file': '/php/list-extensions/php.ini'},
- 'applications/list-extensions/options',
- )
+ assert 'success' in client.conf(
+ '"/app/php/list-extensions"', 'applications/list-extensions/root'
+ )
- assert 'success' in self.conf(
- '"/app/php/list-extensions"',
- 'applications/list-extensions/working_directory',
- )
+ assert 'success' in client.conf(
+ {'file': '/php/list-extensions/php.ini'},
+ 'applications/list-extensions/options',
+ )
+
+ assert 'success' in client.conf(
+ '"/app/php/list-extensions"',
+ 'applications/list-extensions/working_directory',
+ )
- extensions = self.getjson()['body']
+ extensions = client.getjson()['body']
- assert 'json' in extensions, 'json in extensions list'
- assert 'unit' in extensions, 'unit in extensions list'
+ assert 'json' in extensions, 'json in extensions list'
+ assert 'unit' in extensions, 'unit in extensions list'