Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update schema to match pattern of contact form or email. Closes #69. #70

Merged
merged 5 commits into from
Apr 25, 2024

Conversation

vsmalladi
Copy link
Collaborator

@lbeckman314 can you test with Funnel

@vsmalladi vsmalladi requested review from uniqueg and LakiG April 3, 2024 16:40
Copy link

codecov bot commented Apr 3, 2024

Codecov Report

Attention: Patch coverage is 33.33333% with 16 lines in your changes are missing coverage. Please review.

Project coverage is 97.67%. Comparing base (7933b3d) to head (18a2411).

❗ Current head 18a2411 differs from pull request most recent head 3cc2e6f. Consider uploading reports for the commit 3cc2e6f to get more accurate results

Files Patch % Lines
compliance_suite/models/v1_0_0_specs.py 33.33% 8 Missing ⚠️
compliance_suite/models/v1_1_0_specs.py 33.33% 8 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##              dev      #70      +/-   ##
==========================================
- Coverage   99.73%   97.67%   -2.07%     
==========================================
  Files          12       12              
  Lines         754      774      +20     
==========================================
+ Hits          752      756       +4     
- Misses          2       18      +16     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@lbeckman314
Copy link
Contributor

lbeckman314 commented Apr 16, 2024

Funnel Testing

Currently encountering a "AnyUrl.validate() missing 2 required positional arguments: 'field' and 'config' (type=type_error)" error when running the Service Info test against Funnel.

Will double check Service Info Response and see what may be causing this error.

Command Run

➜ funnel server run

➜ openapi-test-runner report --version 1.1.0  --server "http://localhost:8000/" --include-tags service_info

Test Results ❌

#################################     Initiating Test-7 for tests/service_info.yml     #################################
YAML file valid for Test: tests/service_info.yml
Running tests for sub-job-1 -> service_info
Sending GET request to http://localhost:8000/v1/service-info. Query Parameters - {}
GET /service-info response status code matched
Compliance Test-7 for tests/service_info.yml failed.
Exception Name - Schema Validation Error. Type - TestFailureException. Message - Response Schema validation failed for GET /service-info. Details - 1 validation error for TesServiceInfo
contactUrl
  AnyUrl.validate() missing 2 required positional arguments: 'field' and 'config' (type=type_error) ❌

Funnel Service Info Response

Command Run

➜ curl localhost:8000/service-info

Response

{
  "contactUrl":  "https://ohsu-comp-bio.github.io/funnel/",
  "createdAt":  "2016-03-21T16:27:49-07:00",
  "description":  "Funnel is a toolkit for distributed task execution via a simple, standard API.",
  "documentationUrl":  "https://ohsu-comp-bio.github.io/funnel/",
  "environment":  "development",
  "id":  "org.ga4gh.funnel",
  "name":  "Funnel",
  "organization":  {
    "name":  "OHSU Computational Biology",
    "url":  "https://github.com/ohsu-comp-bio"
  },
  "storage":  [
    "file:///path/to/local/funnel-storage",
    "s3://ohsu-compbio-funnel/storage"
  ],
  "tesResources_backend_parameters":  [
    ""
  ],
  "type":  {
    "artifact":  "tes",
    "group":  "org.ga4gh",
    "version":  "git commit: 356bead5\ngit branch: release/0.11.0\ngit upstream: [email protected]:ohsu-comp-bio/funnel.git\nbuild date: 2024-02-08T19:59:15Z\nversion: 0.11.0"
  },
  "updatedAt":  "2024-04-15T20:22:24-07:00",
  "version":  "git commit: 356bead5\ngit branch: release/0.11.0\ngit upstream: [email protected]:ohsu-comp-bio/funnel.git\nbuild date: 2024-02-08T19:59:15Z\nversion: 0.11.0"
}

@vsmalladi
Copy link
Collaborator Author

@lbeckman314 any luck with new changes?

@lbeckman314
Copy link
Contributor

lbeckman314 commented Apr 24, 2024

Funnel Testing

All Service Info tests passing with Funnel!

Command Run

Funnel

➜ funnel version
git commit: 356bead5
git branch: release/0.11.0
git upstream: [email protected]:ohsu-comp-bio/funnel.git
build date: 2024-02-08T19:59:15Z
version: 0.11.0

➜ funnel server run

OpenAPI

➜ git checkout vsmalladi/dev

➜ python setup.py install

# Uses added 'service_info' tag
➜ openapi-test-runner report --version 1.1.0  --server "http://localhost:8000/" --include-tags service_info

Service Info Test File

tests/service_info.yml:

description: Job to retrieve the service info
service: TES
versions:
  - 1.0.0
  - 1.1.0
tags:
  - schema_validation_only
  - service_info    <--- Added tag for testing

Test Results ✅

#################################     Initiating Test-7 for tests/service_info.yml     #################################
YAML file valid for Test: tests/service_info.yml
Running tests for sub-job-1 -> service_info
Sending GET request to http://localhost:8000/v1/service-info. Query Parameters - {}
GET /service-info response status code matched
Response Schema validation successful for GET /service-info
Compliance Test-7 for tests/service_info.yml successful.

@vsmalladi
Copy link
Collaborator Author

@uniqueg can you merge?

@vsmalladi vsmalladi enabled auto-merge (squash) April 25, 2024 14:49
@uniqueg uniqueg merged commit 17d44d7 into elixir-cloud-aai:dev Apr 25, 2024
1 check failed
vsmalladi added a commit to microsoft/ga4gh-tes that referenced this pull request May 20, 2024
* Add in 1.1.0 TES spec compliance.

* Add in both versions of of TES compliance ( 1.1 and 1.0 )

* Make two reports and concatenate them

* Updated TES compliance suite to update the service info testing for email PR: Update schema to match pattern of contact form or email. Closes #69. elixir-cloud-aai/openapi-test-runner#70 . This now allows our service info to pass for 1.0 and 1.1 compliance.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants