mirror of https://github.com/docker/docker-py.git
52 lines
1.6 KiB
Python
52 lines
1.6 KiB
Python
import unittest
|
|
|
|
import pytest
|
|
|
|
import docker
|
|
from docker.constants import DEFAULT_NPIPE, DEFAULT_UNIX_SOCKET, IS_WINDOWS_PLATFORM
|
|
from docker.context import Context, ContextAPI
|
|
|
|
|
|
class BaseContextTest(unittest.TestCase):
|
|
@pytest.mark.skipif(
|
|
IS_WINDOWS_PLATFORM, reason='Linux specific path check'
|
|
)
|
|
def test_url_compatibility_on_linux(self):
|
|
c = Context("test")
|
|
assert c.Host == DEFAULT_UNIX_SOCKET[5:]
|
|
|
|
@pytest.mark.skipif(
|
|
not IS_WINDOWS_PLATFORM, reason='Windows specific path check'
|
|
)
|
|
def test_url_compatibility_on_windows(self):
|
|
c = Context("test")
|
|
assert c.Host == DEFAULT_NPIPE
|
|
|
|
def test_fail_on_default_context_create(self):
|
|
with pytest.raises(docker.errors.ContextException):
|
|
ContextAPI.create_context("default")
|
|
|
|
def test_default_in_context_list(self):
|
|
found = False
|
|
ctx = ContextAPI.contexts()
|
|
for c in ctx:
|
|
if c.Name == "default":
|
|
found = True
|
|
assert found is True
|
|
|
|
def test_get_current_context(self):
|
|
assert ContextAPI.get_current_context().Name == "default"
|
|
|
|
def test_https_host(self):
|
|
c = Context("test", host="tcp://testdomain:8080", tls=True)
|
|
assert c.Host == "https://testdomain:8080"
|
|
|
|
def test_context_inspect_without_params(self):
|
|
ctx = ContextAPI.inspect_context()
|
|
assert ctx["Name"] == "default"
|
|
assert ctx["Metadata"]["StackOrchestrator"] == "swarm"
|
|
assert ctx["Endpoints"]["docker"]["Host"] in (
|
|
DEFAULT_NPIPE,
|
|
DEFAULT_UNIX_SOCKET[5:],
|
|
)
|