Exemplo n.º 1
0
 def test_valid_io(self):
     with open(self.good_path, 'w') as f:
         a = JailedProcess(_good_io, args=[f])
         ret = a.run()
         self.assertEqual(ret, 0)
     self.assertTrue(isfile(self.good_path))
     
     with open(self.good_path, 'r') as f:
         data = f.read()
     
     self.assertEqual(data, magic_text)
Exemplo n.º 2
0
 def test_invalid_io(self):
     a = JailedProcess(_bad_io, args=[self.bad_path])
     ret = a.run()
     self.assertEqual(ret, 9)
Exemplo n.º 3
0
 def test_invalid_import(self):
     a = JailedProcess(_do_import)
     ret = a.run()
     self.assertEqual(ret, 9)
Exemplo n.º 4
0
 def test_valid_simple(self):
     a = JailedProcess(_good_simple)
     ret = a.run()
     self.assertEqual(ret, 0)
Exemplo n.º 5
0
        
        with open(self.good_path, 'r') as f:
            data = f.read()
        
        self.assertEqual(data, magic_text)
    
    def test_invalid_import(self):
        a = JailedProcess(_do_import)
        ret = a.run()
        self.assertEqual(ret, 9)
        
    def test_invalid_io(self):
        a = JailedProcess(_bad_io, args=[self.bad_path])
        ret = a.run()
        self.assertEqual(ret, 9)
    
    def tearDown(self):
        rmtree(self.path)


if __name__ == '__main__':
    base = split(sys.argv[0])[0]
    path = normpath(join(base, "../src/"))
    sys.path.insert(0, path)
    from prctljail import JailedProcess
    if JailedProcess.isAvailable():
        unittest.main()
    else:
        sys.stderr.write("Sorry, this feature isn't available on your\
 platform")