コード例 #1
0
 def test_container_status(self, run_mock):
     test_output = "Up 2 minutes - localstack_main"
     run_mock.return_value = test_output
     docker_client = CmdDockerClient()
     status = docker_client.get_container_status("localstack_main")
     self.assertEqual(DockerContainerStatus.UP, status)
     run_mock.return_value = "Exited (0) 1 minute ago - localstack_main"
     status = docker_client.get_container_status("localstack_main")
     self.assertEqual(DockerContainerStatus.DOWN, status)
     run_mock.return_value = "STATUS    NAME"
     status = docker_client.get_container_status("localstack_main")
     self.assertEqual(DockerContainerStatus.NON_EXISTENT, status)
コード例 #2
0
 def test_list_containers(self, run_mock):
     test_container = {
         "id": "00000000a1",
         "image": "localstack/localstack",
         "name": "localstack_main",
         "labels": "authors=LocalStack Contributors",
         "status": "running",
     }
     run_mock.return_value = json.dumps(test_container)
     docker_client = CmdDockerClient()
     container_list = docker_client.list_containers()
     call_arguments = run_mock.call_args[0][0]
     LOG.info("Intercepted call arguments: %s", call_arguments)
     self.assertEqual(test_container, container_list[0])
     self.assertTrue(list_in(self._docker_cmd() + ["ps"], call_arguments))
     self.assertIn("-a", call_arguments)
     self.assertIn("--format", call_arguments)
コード例 #3
0
def _check_skip():
    if not is_env_not_false("SKIP_DOCKER_TESTS"):
        pytest.skip("SKIP_DOCKER_TESTS is set")

    if not CmdDockerClient().has_docker():
        pytest.skip("Docker is not available")
コード例 #4
0
import pytest

from localstack.config import is_env_not_false
from localstack.utils.docker import DOCKER_CLIENT, CmdDockerClient, SdkDockerClient


def _check_skip():
    if not is_env_not_false("SKIP_DOCKER_TESTS"):
        pytest.skip("SKIP_DOCKER_TESTS is set")

    if not DOCKER_CLIENT.has_docker():
        pytest.skip("Docker is not available")


@pytest.fixture(params=[CmdDockerClient(), SdkDockerClient()])
def docker_client(request):
    _check_skip(
    )  # this is a hack to get a global skip for all tests that require the docker client
    yield request.param
コード例 #5
0
def docker_client():
    _check_skip(
    )  # this is a hack to get a global skip for all tests that require the docker client
    client = CmdDockerClient()
    yield client