From: Alfredo Deza Date: Tue, 12 Feb 2019 15:08:41 +0000 (-0500) Subject: tests: add docker backend X-Git-Tag: 1.0.0~7 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=95d7574108bd4c2f3760ffd4067f952a2e807125;p=remoto.git tests: add docker backend Signed-off-by: Alfredo Deza --- diff --git a/remoto/tests/backends/test_docker.py b/remoto/tests/backends/test_docker.py new file mode 100644 index 0000000..fa31a24 --- /dev/null +++ b/remoto/tests/backends/test_docker.py @@ -0,0 +1,55 @@ +from pytest import raises +from remoto.backends import docker + + +class TestDockerConnection(object): + + def test_missing_container_identifier(self): + with raises(TypeError): + docker.DockerConnection(hostname='node1') + + def test_defaults_to_localhost_name(self): + conn = docker.DockerConnection(container_name='container-1') + assert conn.hostname == 'localhost' + + def test_defaults_to_localhost_id(self): + conn = docker.DockerConnection(container_id='asdf-lkjh') + assert conn.hostname == 'localhost' + + +class TestCommandTemplate(object): + + def test_with_user(self): + conn = docker.DockerConnection(container_id='asdf-lkjh', user='root') + tmpl = conn.command_template() + assert tmpl == [ + 'docker', 'exec', '-i', + '-u', 'root', + 'asdf-lkjh', '/bin/sh', '-c'] + + def test_no_user(self): + conn = docker.DockerConnection(container_id='asdf-lkjh') + tmpl = conn.command_template() + assert tmpl == [ + 'docker', 'exec', '-i', + 'asdf-lkjh', '/bin/sh', '-c' + ] + + +class TestCommand(object): + + def test_user_conn_appends(self): + conn = docker.DockerConnection(container_id='asdf-lkjh', user='root') + result = conn.cmd(['ceph', '--version']) + assert result == [ + 'docker', 'exec', '-i', '-u', 'root', + 'asdf-lkjh', '/bin/sh', '-c', 'ceph --version' + ] + + def test_default_appends(self): + conn = docker.DockerConnection(container_id='asdf-lkjh') + result = conn.cmd(['ceph', 'health']) + assert result == [ + 'docker', 'exec', '-i', + 'asdf-lkjh', '/bin/sh', '-c', 'ceph health' + ]