10585: Merge branch 'master' into 10587-python-cli-version
[arvados.git] / sdk / python / tests / test_arv_keepdocker.py
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3
4 import io
5 import os
6 import sys
7 import tempfile
8 import unittest
9
10 import arvados.commands.keepdocker as arv_keepdocker
11 import arvados_testutil as tutil
12
13
14 class ArvKeepdockerTestCase(unittest.TestCase):
15     def run_arv_keepdocker(self, args):
16         sys.argv = ['arv-keepdocker'] + args
17         return arv_keepdocker.main()
18
19     def test_unsupported_arg(self):
20         with self.assertRaises(SystemExit):
21             self.run_arv_keepdocker(['-x=unknown'])
22
23     def test_version_argument(self):
24         err = io.BytesIO()
25         out = io.BytesIO()
26         with tutil.redirected_streams(stdout=out, stderr=err):
27             with self.assertRaises(SystemExit):
28                 self.run_arv_keepdocker(['--version'])
29         self.assertEqual(out.getvalue(), '')
30         self.assertRegexpMatches(err.getvalue(), "[0-9]+\.[0-9]+\.[0-9]+")