def test_openshift_version_not_supported(): check = PackageVersion(None, task_vars_for("1.2.3", 'origin')) check.get_major_minor_version = lambda: (3, 4, 1) # won't be in the dict with pytest.raises(OpenShiftCheckException) as excinfo: check.get_required_ovs_version() assert "no recommended version of Open vSwitch" in str(excinfo.value)
def test_package_version(): task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_release='3.5', openshift_deployment_type='origin', ) return_value = object() def execute_module(module_name=None, module_args=None, tmp=None, task_vars=None): assert module_name == 'aos_version' assert 'requested_openshift_release' in module_args assert 'openshift_deployment_type' in module_args assert 'rpm_prefix' in module_args assert module_args['requested_openshift_release'] == task_vars[ 'openshift_release'] assert module_args['openshift_deployment_type'] == task_vars[ 'openshift_deployment_type'] assert module_args['rpm_prefix'] == task_vars['openshift']['common'][ 'service_type'] return return_value check = PackageVersion(execute_module=execute_module) result = check.run(tmp=None, task_vars=task_vars) assert result is return_value
def test_package_version(openshift_release): task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_release=openshift_release, openshift_image_tag='v' + openshift_release, openshift_deployment_type='origin', ) return_value = object() def execute_module(module_name=None, module_args=None, tmp=None, task_vars=None): assert module_name == 'aos_version' assert "package_list" in module_args for pkg in module_args["package_list"]: if "-master" in pkg["name"] or "-node" in pkg["name"]: assert pkg["version"] == task_vars["openshift_release"] return return_value check = PackageVersion(execute_module=execute_module) result = check.run(tmp=None, task_vars=task_vars) assert result is return_value
def test_ovs_package_version(deployment_type, openshift_release, expected_ovs_version): task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_release=openshift_release, openshift_image_tag='v' + openshift_release, openshift_deployment_type=deployment_type, ) return_value = object() def execute_module(module_name=None, module_args=None, tmp=None, task_vars=None): assert module_name == 'aos_version' assert "package_list" in module_args for pkg in module_args["package_list"]: if pkg["name"] == "openvswitch": assert pkg["version"] == expected_ovs_version return return_value check = PackageVersion(execute_module=execute_module) result = check.run(tmp=None, task_vars=task_vars) assert result is return_value
def test_invalid_openshift_release_format(): task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_image_tag='v0', openshift_deployment_type='origin', ) check = PackageVersion(lambda *_: {}, task_vars) with pytest.raises(OpenShiftCheckException) as excinfo: check.run() assert "invalid version" in str(excinfo.value)
def test_invalid_openshift_release_format(): def execute_module(module_name=None, module_args=None, tmp=None, task_vars=None): return {} task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_image_tag='v0', openshift_deployment_type='origin', ) check = PackageVersion(execute_module=execute_module) with pytest.raises(OpenShiftCheckException) as excinfo: check.run(tmp=None, task_vars=task_vars) assert "invalid version" in str(excinfo.value)
def test_package_version_skip_when_not_master_nor_node( group_names, openshift_is_containerized, is_active): task_vars = dict( group_names=group_names, openshift_is_containerized=openshift_is_containerized, ) assert PackageVersion(None, task_vars).is_active() == is_active
def test_docker_package_version(deployment_type, openshift_release, expected_docker_version): return_value = {"foo": object()} def execute_module(module_name=None, module_args=None, *_): assert module_name == 'aos_version' assert "package_list" in module_args for pkg in module_args["package_list"]: if pkg["name"] == "docker": assert pkg["version"] == expected_docker_version return return_value check = PackageVersion(execute_module, task_vars_for(openshift_release, deployment_type)) result = check.run() assert result == return_value
def test_package_version(openshift_release): return_value = {"foo": object()} def execute_module(module_name=None, module_args=None, tmp=None, task_vars=None, *_): assert module_name == 'aos_version' assert "package_list" in module_args for pkg in module_args["package_list"]: if "-master" in pkg["name"] or "-node" in pkg["name"]: assert pkg["version"] == task_vars["openshift_release"] return return_value check = PackageVersion(execute_module, task_vars_for(openshift_release, 'origin')) result = check.run() assert result == return_value
def test_openshift_version_not_supported(openshift_release, extra_words): def execute_module(*_): return {} task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_release=openshift_release, openshift_image_tag='v' + openshift_release, openshift_deployment_type='origin', ) check = PackageVersion(execute_module, task_vars) with pytest.raises(OpenShiftCheckException) as excinfo: check.run() for word in extra_words: assert word in str(excinfo.value)
def test_package_version_skip_when_not_master_nor_node(group_names, is_containerized, is_active): task_vars = dict( group_names=group_names, openshift=dict(common=dict(is_containerized=is_containerized)), ) assert PackageVersion.is_active(task_vars=task_vars) == is_active
def test_openshift_version_not_supported(openshift_release, extra_words): def execute_module(module_name=None, module_args=None, tmp=None, task_vars=None): return {} task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_release=openshift_release, openshift_image_tag='v' + openshift_release, openshift_deployment_type='origin', ) check = PackageVersion(execute_module=execute_module) with pytest.raises(OpenShiftCheckException) as excinfo: check.run(tmp=None, task_vars=task_vars) for word in extra_words: assert word in str(excinfo.value)
def test_package_version(): task_vars = dict( openshift=dict(common=dict(service_type='origin')), openshift_release='v3.5', ) return_value = object() def execute_module(module_name=None, module_args=None, tmp=None, task_vars=None): assert module_name == 'aos_version' assert 'prefix' in module_args assert 'version' in module_args assert module_args['prefix'] == task_vars['openshift']['common']['service_type'] assert module_args['version'] == task_vars['openshift_release'] return return_value check = PackageVersion(execute_module=execute_module) result = check.run(tmp=None, task_vars=task_vars) assert result is return_value
def test_package_version_skip_when_not_master_nor_node(group_names, is_active): task_vars = dict(group_names=group_names, ) assert PackageVersion(None, task_vars).is_active() == is_active