Skip to content

Commit 8c82685

Browse files
authored
Update comparison API (#344)
Changes to be committed: modified: biocompute/apis.py
1 parent efebfbe commit 8c82685

File tree

1 file changed

+22
-31
lines changed

1 file changed

+22
-31
lines changed

biocompute/apis.py

Lines changed: 22 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -909,36 +909,27 @@ def post(self, request):
909909
rejected_requests = False
910910
accepted_requests = True
911911
data = request.data
912+
try:
913+
914+
for index, comparison in enumerate(data):
915+
new_bco, old_bco = comparison
916+
identifier = new_bco["object_id"]+ " vs " + old_bco["object_id"]
917+
918+
result = DeepDiff(new_bco, old_bco)
919+
parsed_results = {
920+
'dictionary_item_removed': list(result['dictionary_item_removed']),
921+
'values_changed': list(result['values_changed']),
922+
'iterable_item_removed': list(result['iterable_item_removed'])
923+
}
912924

913-
for index, comparison in enumerate(data):
914-
new_bco, old_bco = comparison
915-
identifier = new_bco["object_id"]+ " vs " + old_bco["object_id"]
916-
917-
# new_results = validator.parse_and_validate(bco=new_bco)
918-
# old_results = validator.parse_and_validate(bco=old_bco)
919-
# import pdb; pdb.set_trace()
920-
# new_identifier, new_results = new_results.popitem()
921-
# old_identifier, old_results = bco_results.popitem()
922-
923-
# if results["number_of_errors"] > 0:
924-
# rejected_requests = True
925-
# bco_status = "FAILED"
926-
# status_code = 400
927-
# message = "BCO not valid"
928-
929-
# else:
930-
# accepted_requests = True
931-
# bco_status = "SUCCESS"
932-
# status_code = 200
933-
# message = "BCO valid"
934-
935-
response_data.append(bulk_response_constructor(
936-
identifier = identifier,
937-
status="SUCCESS",
938-
code=200,
939-
# message=message,
940-
data=DeepDiff(new_bco, old_bco).to_json()
941-
))
925+
response_data.append(bulk_response_constructor(
926+
identifier = identifier,
927+
status="SUCCESS",
928+
code=200,
929+
data=parsed_results
930+
))
942931

943-
status_code = response_status(accepted_requests, rejected_requests)
944-
return Response(status=status_code, data=response_data)
932+
status_code = response_status(accepted_requests, rejected_requests)
933+
return Response(status=status_code, data=response_data)
934+
except Exception:
935+
return Response(status=status.HTTP_400_BAD_REQUEST, data={})

0 commit comments

Comments
 (0)