コード例 #1
0
ファイル: get_context.py プロジェクト: rodsenra/brainiak_api
def assemble_list_json(query_params, query_result_dict):
    context = MemorizeContext()
    expand_uri = bool(int(query_params.get('expand_uri', '0')))
    items_list = compress_keys_and_values(
        query_result_dict,
        keymap={"class": "@id", "label": "title"},
        context=context,
        expand_uri=expand_uri)
    items_list = compress_duplicated_ids(items_list)
    decorate_with_resource_id(items_list)
    decorate_with_class_prefix(items_list)

    context_section = context.context
    context_section.update({"@language": query_params.get("lang")})

    json_dict = {
        '_base_url': remove_last_slash(query_params.base_url),
        'items': items_list,
        '@context': context_section,
        '@id': query_params['graph_uri']
    }

    def calculate_total_items():
        count_query_result_dict = query_count_classes(query_params)
        total_items = int(get_one_value(count_query_result_dict, "total_items"))
        return total_items
    decorate_dict_with_pagination(json_dict, query_params, calculate_total_items)

    return json_dict
コード例 #2
0
 def test_decorate_with_class_prefix_full_url(self):
     list_of_dicts = [{"@id": "http://xubiru/AnyClass"}]
     decorate_with_class_prefix(list_of_dicts)
     expected = [{
         "@id": "http://xubiru/AnyClass",
         "class_prefix": "http://xubiru/"
     }]
     self.assertEqual(list_of_dicts, expected)
コード例 #3
0
 def test_decorate_with_class_prefix(self):
     list_of_dicts = [
         {"@id": "dbpedia:AnyClass"}
     ]
     decorate_with_class_prefix(list_of_dicts, 0)
     expected = [
         {
             "@id": "dbpedia:AnyClass",
             "class_prefix": "dbpedia"}
     ]
     self.assertEqual(list_of_dicts, expected)
コード例 #4
0
 def test_decorate_with_class_prefix_full_url(self):
     list_of_dicts = [
         {"@id": "http://xubiru/AnyClass"}
     ]
     decorate_with_class_prefix(list_of_dicts, 1)
     expected = [
         {
             "@id": "http://xubiru/AnyClass",
             "class_prefix": "http://xubiru/"}
     ]
     self.assertEqual(list_of_dicts, expected)
コード例 #5
0
 def test_decorate_with_class_prefix(self):
     list_of_dicts = [{"@id": "dbpedia:AnyClass"}]
     decorate_with_class_prefix(list_of_dicts)
     expected = [{"@id": "dbpedia:AnyClass", "class_prefix": "dbpedia"}]
     self.assertEqual(list_of_dicts, expected)