def _node_items_to_check(context, items, node): expected_items = split_comma_separated_list(items) assert expected_items is not None data = context.s3_data returned_items = check_and_get_attribute(data, node) assert returned_items is not None return returned_items, expected_items
def check_components(context, num=0, components='', ecosystem=''): """Check that the specified number of components can be found.""" components = split_comma_separated_list(components) json_data = context.response.json() search_results = json_data['result'] assert len(search_results) == num for search_result in search_results: assert search_result['ecosystem'] == ecosystem assert search_result['name'] in components
def check_all_analyzed_dependencies(context, packages): """Check all analyzed dependencies in the stack analysis.""" json_data = get_json_data(context) packages = split_comma_separated_list(packages) path = "result/0/user_stack_info/analyzed_dependencies" analyzed_dependencies = get_value_using_path(json_data, path) assert analyzed_dependencies is not None dependencies = get_attribute_values(analyzed_dependencies, "name") for package in packages: if package not in dependencies: raise Exception( 'Package {package} not found'.format(package=package))
def check_unexpected_properties_in_results(context, properties): """Check if only given optional properties can be found in all packages returned by Gremlin.""" data, meta = get_results_from_gremlin(context) expected_properties = split_comma_separated_list(properties) for package in data: check_attribute_presence(package, "properties") properties = package["properties"].keys() assert properties is not None for prop in properties: # check that the property is contained in a list of expected properties if prop not in expected_properties: raise Exception("Unexpected property has been found: {prop}".format( prop=prop))
def check_unexpected_properties_in_results(context, properties): """Check if only given optional properties can be found in all packages returned by Gremlin.""" data, meta = get_results_from_gremlin(context) expected_properties = split_comma_separated_list(properties) for package in data: check_attribute_presence(package, "properties") properties = package["properties"].keys() assert properties is not None for prop in properties: # check that the property is contained in a list of expected properties if prop not in expected_properties: raise Exception("Unexpected property has been found: {prop}".format( prop=prop))
def check_properties_in_results(context, properties): """Check if all given properties can be found in all packages returned by Gremlin.""" data, meta = get_results_from_gremlin(context) expected_properties = split_comma_separated_list(properties) # we need to check if all expected properties are really returned by the Gremlin for package in data: check_attribute_presence(package, "properties") properties = package["properties"].keys() assert properties is not None for expected_property in expected_properties: if expected_property not in properties: raise Exception("Required property could not be found: {prop}".format( prop=expected_property))
def check_properties_in_results(context, properties): """Check if all given properties can be found in all packages returned by Gremlin.""" data, meta = get_results_from_gremlin(context) expected_properties = split_comma_separated_list(properties) # we need to check if all expected properties are really returned by the Gremlin for package in data: check_attribute_presence(package, "properties") properties = package["properties"].keys() assert properties is not None for expected_property in expected_properties: if expected_property not in properties: # print examined data so users would know what happened formatted_data = pprint.pformat(package) message = "Required property could not be found: {prop}\n" \ "Tested Gremlin results:\n{r}" raise Exception(message.format(prop=expected_property, r=formatted_data))
def check_properties_in_results(context, properties): """Check if all given properties can be found in all packages returned by Gremlin.""" data, meta = get_results_from_gremlin(context) expected_properties = split_comma_separated_list(properties) # we need to check if all expected properties are really returned by the Gremlin for package in data: check_attribute_presence(package, "properties") properties = package["properties"].keys() assert properties is not None for expected_property in expected_properties: if expected_property not in properties: # print examined data so users would know what happened formatted_data = pprint.pformat(package) message = "Required property could not be found: {prop}\n" \ "Tested Gremlin results:\n{r}" raise Exception( message.format(prop=expected_property, r=formatted_data))