def test_parse_exposed_ports_yaml_dict(self): exposed_ports = yaml.load(""" exposed_ports: 443: 443 8080: 80 1111: [12, 34, 56]""")["exposed_ports"] bindings = DBL.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings assert {443, 8080, 1111} == set(DBL.host_ports(exposed_ports)) assert {443, 80, 12, 34, 56} == set(DBL.container_ports(exposed_ports))
def test_parse_exposed_ports_yaml_dict(self): exposed_ports = yaml.load(""" exposed_ports: 443: 443 8080: 80 1111: [12, 34, 56]""")["exposed_ports"] bindings = DBL.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings assert {443, 8080, 1111} == set(DBL.host_ports(exposed_ports)) assert {443, 80, 12, 34, 56} == set(DBL.container_ports(exposed_ports))
def test_parse_exposed_ports_yaml_dict_of_list_of_one_element_dicts(self): exposed_ports = yaml.load(""" exposed_ports: # host_port: container_port(s) - 443 - 8080: 80 - 1111: [12, 34, 56]""")["exposed_ports"] bindings = DBL.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings assert {443, 8080, 1111} == set(DBL.host_ports(exposed_ports)) assert {443, 80, 12, 34, 56} == set(DBL.container_ports(exposed_ports))
def test_parse_exposed_ports_yaml_dict_of_list_of_one_element_dicts(self): exposed_ports = yaml.load(""" exposed_ports: # host_port: container_port(s) - 443 - 8080: 80 - 1111: [12, 34, 56]""")["exposed_ports"] bindings = DBL.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings assert {443, 8080, 1111} == set(DBL.host_ports(exposed_ports)) assert {443, 80, 12, 34, 56} == set(DBL.container_ports(exposed_ports))
def test_filter_stream_header(self): assert ( b"""decorator 4.0.11 is already the active version in easy-install.pth""", 1 ) == DBL.filter_stream_header( b"""decorator 4.0.11 is already th\x01\x00\x00\x00\x00\x00 \x00e active version in easy-install.pth""" ) assert ( b"Constructing docker client object with {u'version': '1.17', 'timeout': 300}", 0 ) == DBL.filter_stream_header( b"Constructing docker client object with {u'version': '1.17', 'timeout': 300}" )
def _make_environment(self, env_var_list, env_config_yaml, os_environ=os.environ): try: prev_environ, os.environ = os.environ, os_environ env_config = yaml.load(env_config_yaml)["environment"] return DBL.make_environment(env_var_list, env_config) finally: os.environ = prev_environ
def test_parse_docker_login(self): args = ["docker", "login", "-u", "ahab", "-p", "CallMeIshmael", "-e", "none", "https://whitewhale.com/mobydick"] namespace, registry = DBL.parse_docker_login(args) assert "ahab" == namespace.username assert "CallMeIshmael" == namespace.password assert "none" == namespace.email assert "https://whitewhale.com/mobydick" == registry
def test_parse_docker_login(self): args = [ "docker", "login", "-u", "ahab", "-p", "CallMeIshmael", "-e", "none", "https://whitewhale.com/mobydick" ] namespace, registry = DBL.parse_docker_login(args) assert "ahab" == namespace.username assert "CallMeIshmael" == namespace.password assert "none" == namespace.email assert "https://whitewhale.com/mobydick" == registry
def _make_environment(self, env_var_list, env_config_yaml, os_environ=os.environ): try: prev_environ, os.environ = os.environ, os_environ env_config = yaml.load(env_config_yaml)["environment"] return DBL.make_environment(env_var_list, env_config) finally: os.environ = prev_environ
def test_host_ports(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] host_ports = DockerBuildLayer.host_ports(exposed_ports) assert [443, 8080, 1111] == host_ports
def test_parse_exposed_ports_mixed_list(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] bindings = DBL.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings assert {443, 8080, 1111} == set(DBL.host_ports(exposed_ports)) assert {443, 80, 12, 34, 56} == set(DBL.container_ports(exposed_ports))
def test_container_ports(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] container_ports = DockerBuildLayer.container_ports(exposed_ports) assert [443, 80, 12, 34, 56] == container_ports
def test_port_bindings(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] bindings = DockerBuildLayer.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings
def test_parse_exposed_ports_mixed_list(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] bindings = DBL.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings assert {443, 8080, 1111} == set(DBL.host_ports(exposed_ports)) assert {443, 80, 12, 34, 56} == set(DBL.container_ports(exposed_ports))
def test_container_ports(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] container_ports = DockerBuildLayer.container_ports(exposed_ports) assert [443, 80, 12, 34, 56] == container_ports
def test_port_bindings(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] bindings = DockerBuildLayer.port_bindings(exposed_ports) assert {443: 443, 80: 8080, 12: 1111, 34: 1111, 56: 1111} == bindings
def test_host_ports(self): exposed_ports = [443, {'8080': 80}, {1111: [12, '34', 56]}] host_ports = DockerBuildLayer.host_ports(exposed_ports) assert [443, 8080, 1111] == host_ports