diff options
author | Jhon Honce <jhonce@redhat.com> | 2018-05-14 18:01:08 -0700 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2018-05-16 14:01:10 +0000 |
commit | 1aaf8df5be32d755a3f72f9259c66c70fbf850d8 (patch) | |
tree | 6e573fc7ae988e36d6d94973cec238aee72feaad /contrib/python/test/test_system.py | |
parent | c7bc7580a6a9faf6a3159d6c17ff1dfb3710e318 (diff) | |
download | podman-1aaf8df5be32d755a3f72f9259c66c70fbf850d8.tar.gz podman-1aaf8df5be32d755a3f72f9259c66c70fbf850d8.tar.bz2 podman-1aaf8df5be32d755a3f72f9259c66c70fbf850d8.zip |
Refactor libpod python varlink bindings
- More pythonic
- Leverage context managers to help with socket leaks
- Add system unittest's
- Add image unittest's
- Add container unittest's
- Add models for system, containers and images, and their collections
- Add helper functions for datetime parsing/formatting
- GetInfo() implemented
- Add support for setuptools
- Update documentation
- Support for Python 3.4-3.6
Signed-off-by: Jhon Honce <jhonce@redhat.com>
Closes: #748
Approved by: baude
Diffstat (limited to 'contrib/python/test/test_system.py')
-rw-r--r-- | contrib/python/test/test_system.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/contrib/python/test/test_system.py b/contrib/python/test/test_system.py new file mode 100644 index 000000000..c0d30acd7 --- /dev/null +++ b/contrib/python/test/test_system.py @@ -0,0 +1,49 @@ +import os +import unittest + +import varlink + +import podman + + +class TestSystem(unittest.TestCase): + def setUp(self): + self.host = os.environ['PODMAN_HOST'] + + def tearDown(self): + pass + + def test_bad_address(self): + with self.assertRaisesRegex(varlink.client.ConnectionError, + "Invalid address 'bad address'"): + podman.Client('bad address') + + def test_ping(self): + with podman.Client(self.host) as pclient: + self.assertTrue(pclient.system.ping()) + + def test_versions(self): + with podman.Client(self.host) as pclient: + # Values change with each build so we cannot test too much + self.assertListEqual( + sorted([ + 'built', 'client_version', 'git_commit', 'go_version', + 'os_arch', 'version' + ]), sorted(list(pclient.system.versions._fields))) + pclient.system.versions + self.assertIsNot(podman.__version__, '0.0.0') + + def test_info(self): + with podman.Client(self.host) as pclient: + actual = pclient.system.info() + # Values change too much to do exhaustive testing + self.assertIsNotNone(actual.podman['go_version']) + self.assertListEqual( + sorted([ + 'host', 'insecure_registries', 'podman', 'registries', + 'store' + ]), sorted(list(actual._fields))) + + +if __name__ == '__main__': + unittest.main() |