Fix assert_hostname logic in tls_config_from_options

Signed-off-by: Joffrey F <joffrey@docker.com>
This commit is contained in:
Joffrey F 2016-03-28 17:39:20 -07:00
commit 7116aefe43
2 changed files with 48 additions and 7 deletions

View file

@ -103,3 +103,31 @@ class TLSConfigTestCase(unittest.TestCase):
options = {'--tlskey': self.key}
with pytest.raises(docker.errors.TLSParameterError):
tls_config_from_options(options)
def test_assert_hostname_explicit_host(self):
options = {
'--tlscacert': self.ca_cert, '--host': 'tcp://foobar.co.uk:1254'
}
result = tls_config_from_options(options)
assert isinstance(result, docker.tls.TLSConfig)
assert result.assert_hostname == 'foobar.co.uk'
def test_assert_hostname_explicit_host_no_proto(self):
options = {
'--tlscacert': self.ca_cert, '--host': 'foobar.co.uk:1254'
}
result = tls_config_from_options(options)
assert isinstance(result, docker.tls.TLSConfig)
assert result.assert_hostname == 'foobar.co.uk'
def test_assert_hostname_implicit_host(self):
options = {'--tlscacert': self.ca_cert}
result = tls_config_from_options(options)
assert isinstance(result, docker.tls.TLSConfig)
assert result.assert_hostname is None
def test_assert_hostname_explicit_skip(self):
options = {'--tlscacert': self.ca_cert, '--skip-hostname-check': True}
result = tls_config_from_options(options)
assert isinstance(result, docker.tls.TLSConfig)
assert result.assert_hostname is False