diff --git a/swh/deposit/api/checks.py b/swh/deposit/api/checks.py --- a/swh/deposit/api/checks.py +++ b/swh/deposit/api/checks.py @@ -108,7 +108,7 @@ detail.append({"fields": [schema_element.prefixed_name], "summary": str(e)}) if detail: - return False, {"metadata": detail} + return False, {"metadata": detail + suggested_fields} if suggested_fields: # it's fine but warn about missing suggested fields return True, {"metadata": suggested_fields} diff --git a/swh/deposit/tests/api/test_checks.py b/swh/deposit/tests/api/test_checks.py --- a/swh/deposit/tests/api/test_checks.py +++ b/swh/deposit/tests/api/test_checks.py @@ -412,6 +412,7 @@ no one 2020-aa-21 2020-12-bb + {PROVENANCE_XML} """, [ @@ -433,6 +434,7 @@ bar no one 2020-12-aa + {PROVENANCE_XML} """, [ @@ -442,6 +444,25 @@ }, ], ), + ( + f"""\ + + some url + bar + no one + + """, + [ + { + "summary": ".*Reason: character data between child elements.*", + "fields": ["codemeta:author"], + }, + { + "summary": "Suggested fields are missing", + "fields": ["swh:metadata-provenance"], + }, + ], + ), ( f"""\ @@ -453,6 +474,9 @@ + + some-metadata-provenance-url + """, @@ -480,6 +504,9 @@ + + some-metadata-provenance-url + """, @@ -506,6 +533,9 @@ + + some-metadata-provenance-url + """, @@ -534,6 +564,9 @@ + + some-metadata-provenance-url + """, @@ -562,6 +595,9 @@ + + some-metadata-provenance-url + """, @@ -588,6 +624,9 @@ + + some-metadata-provenance-url + """, @@ -610,6 +649,9 @@ + + some-metadata-provenance-url + """, @@ -632,6 +674,9 @@ + + some-metadata-provenance-url + """,