diff options
Diffstat (limited to 'test/v9fs_driver_test.py')
| -rw-r--r-- | test/v9fs_driver_test.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test/v9fs_driver_test.py b/test/v9fs_driver_test.py new file mode 100644 index 00000000..9781c4fe --- /dev/null +++ b/test/v9fs_driver_test.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python3 +"""Unprivileged regression checks for the v9fs helper launcher.""" +import os +import sys +import unittest + +from v9fs import run_helper + + +class HelperLaunchTests(unittest.TestCase): + def test_preserves_session_for_terminal_scoped_sudo_credentials(self): + output = run_helper([sys.executable, '-c', 'import os; print(os.getsid(0))']) + self.assertEqual(int(output), os.getsid(0)) + + def test_failure_preserves_diagnostics(self): + with self.assertRaisesRegex(RuntimeError, r'(?s)failed \(7\).*mount refused'): + run_helper([sys.executable, '-c', + 'import sys; print("mount refused", file=sys.stderr); sys.exit(7)']) + + def test_timeout_is_not_a_passing_probe(self): + with self.assertRaisesRegex(RuntimeError, 'timed out; no compatibility result'): + run_helper([sys.executable, '-c', 'import time; time.sleep(60)'], timeout=.1) + + +if __name__ == '__main__': + unittest.main() |
