diff options
Diffstat (limited to 'test/test_ruby_isolation.py')
-rw-r--r-- | test/test_ruby_isolation.py | 36 |
1 files changed, 16 insertions, 20 deletions
diff --git a/test/test_ruby_isolation.py b/test/test_ruby_isolation.py index 3ec06d86..82a12dff 100644 --- a/test/test_ruby_isolation.py +++ b/test/test_ruby_isolation.py @@ -1,30 +1,26 @@ -import pytest from unit.applications.lang.ruby import TestApplicationRuby -from unit.option import option +prerequisites = {'modules': {'ruby': 'any'}, 'features': {'isolation': True}} -class TestRubyIsolation(TestApplicationRuby): - prerequisites = {'modules': {'ruby': 'any'}, 'features': ['isolation']} - - def test_ruby_isolation_rootfs(self, is_su, temp_dir): - isolation_features = option.available['features']['isolation'].keys() - - if not is_su: - if not 'unprivileged_userns_clone' in isolation_features: - pytest.skip('requires unprivileged userns or root') - - if 'user' not in isolation_features: - pytest.skip('user namespace is not supported') - - if 'mnt' not in isolation_features: - pytest.skip('mnt namespace is not supported') - - if 'pid' not in isolation_features: - pytest.skip('pid namespace is not supported') +class TestRubyIsolation(TestApplicationRuby): + def test_ruby_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, |