jhu-bids / TermHub

Web app and CLI tools for working with biomedical terminologies. https://github.com/orgs/jhu-bids/projects/9/views/7
https://bit.ly/termhub
GNU General Public License v3.0
8 stars 10 forks source link

Tests: CSV upload #800

Open joeflack4 opened 1 month ago

joeflack4 commented 1 month ago

Overview

The following tests are currently failing:

The CSV upload feature is not in production at time of this writing, so it is not surprising that these tests would be failing.

test_route_csv_upload_new_cset_version_with_concepts()

Traceback (most recent call last):
  File "/Users/joeflack4/projects/termhub/test/test_backend/test_backend.py", line 123, in test_route_csv_upload_new_cset_version_with_concepts
    response: Response = self._upload_file(csv_path, url)
  File "/Users/joeflack4/projects/termhub/test/test_backend/test_backend.py", line 36, in _upload_file
    with open(file_path, 'r') as file:
FileNotFoundError: [Errno 2] No such file or directory: '/Users/joeflack4/projects/termhub/test/test_backend/input/test_enclave_wrangler/test_dataset_upload/type-2-diabetes-mellitus.csv'

test_upload_cset_container_from_csv()

Traceback (most recent call last):
  File "/Users/joeflack4/projects/termhub/test/test_enclave_wrangler/test_dataset_upload.py", line 35, in test_upload_cset_container_from_csv
    # TODO #1: for "success case", these things that aren't in the DB yet will be, so will need to instead
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/dataset_upload.py", line 154, in upload_new_cset_container_with_concepts_from_csv
    containers_with_versions.append(CsetContainer().from_dataframe(cset))
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/models.py", line 219, in from_dataframe
    self.versions = CsetVersion(df)
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/models.py", line 157, in __init__
    self.from_dataframe(df)
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/models.py", line 177, in from_dataframe
    'intended_research_project', 'authority'}.intersection(df.columns))
AttributeError: 'tuple' object has no attribute 'columns'

test_upload_cset_version_from_csv()

Traceback (most recent call last):
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/utils.py", line 486, in enclave_post
    raise EnclaveWranglerErr(response.status_code, ': ', response.text)
enclave_wrangler.utils.EnclaveWranglerErr: (200, ': ', '{"result":"INVALID","submissionCriteria":[{"configuredFailureMessage":"Only the author of an N3C Recommended Concept Set may publish new Versions to that Concept Set.","result":"INVALID"}],"parameters":{"new-parameter1":{"result":"VALID","evaluatedConstraints":[],"required":true},"concept-set-containe":{"result":"VALID","evaluatedConstraints":[{"type":"objectQueryResult"}],"required":false},"version":{"result":"VALID","evaluatedConstraints":[{"type":"objectQueryResult"}],"required":true},"on-behalf-of":{"result":"VALID","evaluatedConstraints":[{"type":"groupMember"}],"required":true},"n3c-recommended-bundle":{"result":"VALID","evaluatedConstraints":[{"type":"objectQueryResult"}],"required":false},"currentMaxVersion":{"result":"VALID","evaluatedConstraints":[],"required":false},"new-parameter":{"result":"VALID","evaluatedConstraints":[],"required":true}}}')

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/joeflack4/projects/termhub/test/test_enclave_wrangler/test_dataset_upload.py", line 78, in test_upload_cset_version_from_csv
  File "/Users/joeflack4/projects/termhub/test/test_enclave_wrangler/test_dataset_upload.py", line 48, in _test_upload_cset_version_from_csv
    print(f'Uploaded new version with ID: {version_id}')
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/dataset_upload.py", line 121, in upload_new_cset_version_with_concepts_from_csv
    responses_i: Dict = upload_new_cset_version_with_concepts(**new_version, validate_first=validate_first)
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/dataset_upload.py", line 273, in upload_new_cset_version_with_concepts
    response_finalize_concept_set_version: Response = finalize_concept_set_version(
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/actions_api.py", line 476, in finalize_concept_set_version
    response: Response = make_actions_request(api_name, d, validate_first)
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/utils.py", line 423, in make_actions_request
    response: Response = enclave_post(
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/utils.py", line 490, in enclave_post
    ttl = check_token_ttl(get_auth_token())
  File "/Users/joeflack4/projects/termhub/enclave_wrangler/utils.py", line 152, in check_token_ttl
    if ttl <= warning_threshold or warn_anyway:
TypeError: '<=' not supported between instances of 'int' and 'str'