Kaydet (Commit) 50a60717 authored tarafından Joffrey F's avatar Joffrey F

split_port should not break when passed a non-string argument

Signed-off-by: 's avatarJoffrey F <joffrey@docker.com>
üst 706e2cad
...@@ -54,6 +54,7 @@ def port_range(start, end, proto, randomly_available_port=False): ...@@ -54,6 +54,7 @@ def port_range(start, end, proto, randomly_available_port=False):
def split_port(port): def split_port(port):
port = str(port)
match = PORT_SPEC.match(port) match = PORT_SPEC.match(port)
if match is None: if match is None:
_raise_invalid_port(port) _raise_invalid_port(port)
......
...@@ -587,6 +587,9 @@ class PortsTest(unittest.TestCase): ...@@ -587,6 +587,9 @@ class PortsTest(unittest.TestCase):
def test_split_port_empty_string(self): def test_split_port_empty_string(self):
self.assertRaises(ValueError, lambda: split_port("")) self.assertRaises(ValueError, lambda: split_port(""))
def test_split_port_non_string(self):
assert split_port(1243) == (['1243'], None)
def test_build_port_bindings_with_one_port(self): def test_build_port_bindings_with_one_port(self):
port_bindings = build_port_bindings(["127.0.0.1:1000:1000"]) port_bindings = build_port_bindings(["127.0.0.1:1000:1000"])
self.assertEqual(port_bindings["1000"], [("127.0.0.1", "1000")]) self.assertEqual(port_bindings["1000"], [("127.0.0.1", "1000")])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment