Skip to main content

Refget Compliance Suite

Repository for the refget API Compliance document and test suite.

Important URLS

Installing the compliance suite

pip3 install refget-compliance

Running the compliance suite

The following will generate a HTML report for your server and serve said HTML. It will also generate a tarball locally of the report

refget-compliance report -s https://refget.server.com/ --serve

The following will generate a JSON report of your server:

refget-compliance report -s https://refget.server.com/ --json server.json

Setting --json - will have the compliance suite write the JSON to STDOUT.

Additional components

Building and uploading the package to PyPI

First do your edits, test and update setup.py with your new version number. Then run the following and provide your user credentials before doing this. This will upload the compliance suite to the test PyPI server.

python3 setup.py sdist bdist_wheel
twine upload --repository-url https://test.pypi.org/legacy/ dist/*

Assuming this works then upload to live PyPI and provide your live login details.

twine upload dist/*

Compliance Documentation

To generate this documentation locally, follow these steps:

git clone https://github.com/ga4gh/refget-compliance.git

cd refget-compliance

pip3 install mkdocs

mkdocs serve

Compliance Test Suite

Compliance test suite is an API testing suite for refget servers.

To run the tests, follow these steps:

git clone https://github.com/ga4gh/refget-compliance.git

cd refget-compliance-suite/test_suite

pip3 install -r requirements.txt

If the server to be tested supports circular sequences then run

py.test --server <your-server-base-url-without-http://-prefix> --cir

and if it doesn't support circular sequences then run

py.test --server <your-server-base-url-without-http://-prefix>

If the server to be tested supports trunc512 algorithm then run

py.test --server <your-server-base-url-without-http://-prefix> --trunc512

and if it doesn't support trunc512 algorithm then run

py.test --server <your-server-base-url-without-http://-prefix>

If the server to be tested redirects success queries then run

py.test --server <your-server-base-url-without-http://-prefix> --redir

And if it doesn't redirects then run

py.test --server <your-server-base-url-without-http://-prefix>

You can try multiple combinations of these flags as per the server implementation for example

py.test --server <your-server-base-url-without-http://-prefix> --cir --trunc512

py.test --server <your-server-base-url-without-http://-prefix> --cir --redir

py.test --server <your-server-base-url-without-http://-prefix> --redir --trunc512

py.test --server <your-server-base-url-without-http://-prefix> --cir --trunc512 --redir

Metadata

Release files for refget-compliance 1.2.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for refget-compliance 1.2.6
File Size Uploaded
refget-compliance-1.2.6.tar.gz 204.5 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for refget-compliance 1.2.6
File Interpreter ABI Platform
refget_compliance-1.2.6-py3.5.egg Legacy Egg format - - Details
refget_compliance-1.2.6-py3-none-any.whl Python 3 none any Details

Total release size: 647.0 kB

Release files / refget-compliance-1.2.6.tar.gz

Download URL refget-compliance-1.2.6.tar.gz
Size 204.5 kB
Tags Source
SHA-256 checksum
How to use checksums
c787a2c6f435befdb1c06302a0bda17ed07dadd32833d68d8d9779ccf40d7a0c
BLAKE2b-256 checksum
How to use checksums
f3d2c13d36f745f8a58db35ab6c78767d6cc61716851fca40560a82eccdeaffc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.2

Release files / refget_compliance-1.2.6-py3.5.egg

Download URL refget_compliance-1.2.6-py3.5.egg
Size 230.3 kB
Tags Egg
SHA-256 checksum
How to use checksums
baefc223f5a45ec602606c596a9d7459c5ed77ec2284f0285e5320864d2a034f
BLAKE2b-256 checksum
How to use checksums
c801b655d0d3d2dc58c3270877e34636a36d8ce8e58832609232c5e0014d4b0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.2

Release files / refget_compliance-1.2.6-py3-none-any.whl

Download URL refget_compliance-1.2.6-py3-none-any.whl
Size 212.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fa1403922b26e52d444bc62b9029387894e1b045f22f79bf3573b81d1255090f
BLAKE2b-256 checksum
How to use checksums
7f461739dad985f7f94c520af79103530acd34ee393f109f5beed5a3a43e5e95
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.2

Release history Release notifications | RSS feed

This release

1.2.6 This release

3 release files

1.2.5

3 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page