def _validate_port_map_list(options_list, id_provider, force_options): allowed_options = [ "id", "port", "internal-port", "range", ] validators = [ validate.value_id("id", "port-map id", id_provider), validate.depends_on_option("internal-port", "port", "port-map", "port-map"), validate.is_required_some_of(["port", "range"], "port-map"), validate.mutually_exclusive(["port", "range"], "port-map"), validate.value_port_number("port"), validate.value_port_number("internal-port"), validate.value_port_range( "range", code_to_allow_extra_values=report_codes.FORCE_OPTIONS, allow_extra_values=force_options), ] report_list = [] for options in options_list: report_list.extend( validate.run_collection_of_option_validators(options, validators) + validate.names_in(allowed_options, options.keys(), "port-map", report_codes.FORCE_OPTIONS, force_options)) return report_list
def test_report_bad_end(self): assert_report_item_list_equal( validate.value_port_range("key")({ "key": "100-65536" }), [ (severities.ERROR, report_codes.INVALID_OPTION_VALUE, { "option_name": "key", "option_value": "100-65536", "allowed_values": "port-port", }, None), ])
def test_report_bad_end(self): assert_report_item_list_equal( validate.value_port_range("key")({"key": "100-65536"}), [ ( severities.ERROR, report_codes.INVALID_OPTION_VALUE, { "option_name": "key", "option_value": "100-65536", "allowed_values": "port-port", }, None ), ] )
def test_empty_report_on_valid_option(self): assert_report_item_list_equal( validate.value_port_range("key")({ "key": "100-200" }), [])
def test_empty_report_on_valid_option(self): assert_report_item_list_equal( validate.value_port_range("key")({"key": "100-200"}), [] )