Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions pyQuARC/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
from code.utils import get_concept_type, get_headers
else:
from .code.checker import Checker
from .code.constants import COLOR, ECHO10_C, SUPPORTED_FORMATS
from .code.constants import COLOR, ECHO10_C, SUPPORTED_FORMATS, CONTENT_TYPE_MAP
from .code.downloader import Downloader
from .code.utils import get_cmr_url, is_valid_cmr_url
from .code.utils import get_concept_type, get_headers
Expand Down Expand Up @@ -234,15 +234,20 @@ def validate(self):

content = content.encode()
cmr_response = self._validate_with_cmr(concept_id, content)
try:
cmr_validation = cmr_response.json()
except ValueError:
# CMR returns an empty body when validation succeeds
cmr_validation = {}
validation_errors, pyquarc_errors = checker.run(content)
self.errors.append(
{
"concept_id": concept_id,
"errors": validation_errors,
"cmr_validation": {
"errors": cmr_response.json().get("errors", []),
"errors": cmr_validation.get("errors", []),
# TODO: show warnings
"warnings": cmr_response.json().get("warnings", [])
"warnings": cmr_validation.get("warnings", [])
},
"pyquarc_errors": pyquarc_errors,
}
Expand Down
Loading