From 2c182f8df07ceec247925a6822eb8e2bd0d1fdfd Mon Sep 17 00:00:00 2001 From: Adam Miller Date: Feb 07 2017 22:13:02 +0000 Subject: add more checks for existing flr.dkr tests, add flr.dkr.removeimage test Signed-off-by: Adam Miller --- diff --git a/flr/dkr.py b/flr/dkr.py index 306e43f..83ef3f6 100644 --- a/flr/dkr.py +++ b/flr/dkr.py @@ -66,7 +66,7 @@ def remotecopy(src_image, dest_image, client_args={}, registry=None, username=No :param src_image: str, source docker image repo uri :param dest_image: str, source docker image repo uri :param client_args: dict, docker.Client args - :param regsitry: str, registry uri to authenticate against + :param registry: str, registry uri to authenticate against """ dc = client_connect( diff --git a/tests/test_docker.py b/tests/test_docker.py index 72e5799..e239529 100644 --- a/tests/test_docker.py +++ b/tests/test_docker.py @@ -31,9 +31,15 @@ def test_dockerclient_remotecopy(mock_dc): src_img = "foo:1" dest_img = "bar:1" + src_split = flr.dkr.split_repo(src_img) + dest_split = flr.dkr.split_repo(dest_img) + flr.dkr.remotecopy(src_img, dest_img) - mock_dc.assert_called_with() + assert mock.call().pull(src_split[0], tag=src_split[1]) in mock_dc.mock_calls + assert mock.call().tag(src_img, dest_split[0], tag=dest_split[1], force=True) \ + in mock_dc.mock_calls + assert mock.call().push(dest_img) in mock_dc.mock_calls @mock.patch('docker.Client', spec=docker.Client) def test_dockerclient_remotecopy_login(mock_dc): @@ -46,10 +52,30 @@ def test_dockerclient_remotecopy_login(mock_dc): registry = "registry.example.com" username = "fedora" + src_split = flr.dkr.split_repo(src_img) + dest_split = flr.dkr.split_repo(dest_img) + flr.dkr.remotecopy(src_img, dest_img, registry=registry, username=username) + assert mock.call().pull(src_split[0], tag=src_split[1]) in mock_dc.mock_calls + assert mock.call().tag(src_img, dest_split[0], tag=dest_split[1], force=True) \ + in mock_dc.mock_calls + assert mock.call().push(dest_img) in mock_dc.mock_calls + assert \ mock.call().login(registry='registry.example.com', username='fedora') \ - in mock_dc.mock_calls + in mock_dc.mock_calls + +@mock.patch('docker.Client', spec=docker.Client) +def test_dockerclient_removeimage(mock_dc): + """ + test case for flr.dkr.remotecopy without login + """ + + image_name = "foo:1" + + flr.dkr.removeimage(image_name) + + assert mock.call().remove_image(image_name) in mock_dc.mock_calls # vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4