def test_parse_project_yaml_raises_on_missing_project_layers(self): project_info = { 'app_name': 'someapp' } layers_info = {} with pytest.raises(FlyingCloudError) as exc_info: parse_project_yaml(project_info, layers_info) assert 'layers' in str(exc_info.value)
def test_parse_project_yaml_raises_on_missing_layer_help(self): project_info = { 'app_name': 'flaskexample', 'layers': ['app'], } layers_info = {'app': {'info': {}, 'path': '/'}} with pytest.raises(FlyingCloudError) as exc_info: parse_project_yaml(project_info, layers_info) assert 'missing a Help' in str(exc_info.value)
def test_parse_project_yaml(self): project_info = { 'app_name': 'flaskexample', 'layers': ['app'], 'registry' : { 'host': 'quay.io', 'organization': 'cookbrite', 'registry_docker_version': "1.17", 'login_required': False, 'pull_layer': False, 'push_layer': False, 'squash_layer': False, } } layers_info = {'app': { 'info': { 'help': 'Build Flask Example app', 'parent': 'opencv', 'exposed_ports': [80] }, 'path': '/' } } layers = parse_project_yaml(project_info, layers_info) assert layers is not None assert len(layers) == 1 the_layer = layers[list(layers.keys())[0]] assert type(the_layer) == DockerBuildLayer assert the_layer.registry_config['host'] == 'quay.io' assert the_layer.exposed_ports == [80]
def test_parse_project_yaml(self): project_info = { 'app_name': 'flaskexample', 'layers': ['app'], 'registry' : { 'host': 'quay.io', 'organization': 'cookbrite', 'registry_docker_version': "1.17", 'login_required': False, 'pull_layer': False, 'push_layer': False, 'squash_layer': False, } } layers_info = {'app': { 'info': { 'help': 'Build Flask Example app', 'parent': 'opencv', 'exposed_ports': [80] }, 'path': '/' } } layers = parse_project_yaml(project_info, layers_info) assert layers is not None assert len(layers) == 1 assert type(layers[0]) == DockerBuildLayer assert layers[0].registry_config['host'] == 'quay.io' assert layers[0].exposed_ports == [80]
def test_parse_project_yaml_minimal(self): project_info = { 'app_name': 'flaskexample', 'layers': ['app'], } layers_info = { 'app': { 'info': { 'help': 'Build Flask Example app', }, 'path': '/' } } layers = parse_project_yaml(project_info, layers_info) assert layers is not None assert len(layers) == 1 assert type(layers[list(layers.keys())[0]]) == DockerBuildLayer
def test_parse_project_yaml_minimal(self): project_info = { 'app_name': 'flaskexample', 'layers': ['app'], } layers_info = { 'app': { 'info': { 'help': 'Build Flask Example app', }, 'path': '/' } } layers = parse_project_yaml(project_info, layers_info) assert layers is not None assert len(layers) == 1 assert type(layers[0]) == DockerBuildLayer