def test_create_new_collection(self): (coll_doc, collection_object) = collection.create_new_collection( cid=None, title="mah collection", aliases=self.aliases, ip_address=None, refset_metadata=None, myredis=self.r, mydao=self.d) assert_equals(coll_doc["title"], "mah collection") expected = ['doi:10.124', 'doi:10.125', 'doi:10.123'] assert_equals(coll_doc["alias_tiids"].keys(), expected) assert_equals(collection_object.title, "mah collection") expected = [(u'doi', u'10.124'), (u'doi', u'10.125'), (u'doi', u'10.123')] assert_equals([ added_item.alias_tuple for added_item in collection_object.added_items ], expected) assert_equals(len(collection_object.tiids), 3) found_collection_object = collection.Collection.query.filter_by( cid=collection_object.cid).first() assert_equals(found_collection_object.tiids, collection_object.tiids)
def test_create_new_collection(self): (coll_doc, collection_object) = collection.create_new_collection( cid=None, title="mah collection", aliases=self.aliases, ip_address=None, refset_metadata=None, myredis=self.r, mydao=self.d) assert_equals(coll_doc["title"], "mah collection") expected = ['doi:10.124', 'doi:10.125', 'doi:10.123'] assert_equals(coll_doc["alias_tiids"].keys(), expected) assert_equals(collection_object.title, "mah collection") expected = [(u'doi', u'10.124'), (u'doi', u'10.125'), (u'doi', u'10.123')] assert_equals([added_item.alias_tuple for added_item in collection_object.added_items], expected) assert_equals(len(collection_object.tiids), 3) found_collection_object = collection.Collection.query.filter_by(cid=collection_object.cid).first() assert_equals(found_collection_object.tiids, collection_object.tiids)
def collection_create(): """ POST /collection creates new collection """ response_code = None try: cid = request.args.get("collection_id", collection._make_id()) if "tiids" in request.json: (coll_doc, collection_object) = collection.create_new_collection_from_tiids( cid=cid, title=request.json.get("title", "my collection"), tiids=request.json.get("tiids"), ip_address=request.remote_addr, refset_metadata=request.json.get("refset_metadata", None)) else: # to be depricated (coll_doc, collection_object) = collection.create_new_collection( cid=cid, title=request.json.get("title", "my collection"), aliases=request.json["aliases"], ip_address=request.remote_addr, refset_metadata=request.json.get("refset_metadata", None), myredis=myredis, mydao=mydao) except (AttributeError, TypeError): # we got missing or improperly formated data. logger.error( u"we got missing or improperly formated data: '{cid}' with {json}." .format(cid=cid, json=str(request.json))) abort_custom(404, "Missing arguments.") response_code = 201 # Created resp = make_response( json.dumps({"collection": coll_doc}, sort_keys=True, indent=4), response_code) return resp
def collection_create(): """ POST /collection creates new collection """ response_code = None try: cid = request.args.get("collection_id", collection._make_id()) if "tiids" in request.json: (coll_doc, collection_object) = collection.create_new_collection_from_tiids( cid=cid, title=request.json.get("title", "my collection"), tiids=request.json.get("tiids"), ip_address=request.remote_addr, refset_metadata=request.json.get("refset_metadata", None)) else: # to be depricated (coll_doc, collection_object) = collection.create_new_collection( cid=cid, title=request.json.get("title", "my collection"), aliases=request.json["aliases"], ip_address=request.remote_addr, refset_metadata=request.json.get("refset_metadata", None), myredis=myredis, mydao=mydao) except (AttributeError, TypeError): # we got missing or improperly formated data. logger.error(u"we got missing or improperly formated data: '{cid}' with {json}.".format( cid=cid, json=str(request.json))) abort_custom(404, "Missing arguments.") response_code = 201 # Created resp = make_response(json.dumps({"collection":coll_doc}, sort_keys=True, indent=4), response_code) return resp