blob: 0039ff877913e3d41eaa149665c74bc91d1e4ee9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
import os
import unittest
from unit.applications.lang.go import TestApplicationGo
class TestGoIsolationRootfs(TestApplicationGo):
prerequisites = {'modules': {'go': 'all'}}
def test_go_isolation_rootfs_chroot(self):
if not self.is_su:
print("requires root")
raise unittest.SkipTest()
if os.uname().sysname == 'Darwin':
print('chroot tests not supported on OSX')
raise unittest.SkipTest()
isolation = {
'rootfs': self.testdir,
}
self.load('ns_inspect', isolation=isolation)
obj = self.getjson(url='/?file=/go/app')['body']
self.assertEqual(obj['FileExists'], True, 'app relative to rootfs')
obj = self.getjson(url='/?file=/bin/sh')['body']
self.assertEqual(obj['FileExists'], False, 'file should not exists')
if __name__ == '__main__':
TestGoIsolationRootfs.main()
|