{"id":41435635,"url":"https://github.com/ecmwf-projects/cads-e2e-tests","last_synced_at":"2026-01-23T14:37:28.429Z","repository":{"id":283444372,"uuid":"828885308","full_name":"ecmwf-projects/cads-e2e-tests","owner":"ecmwf-projects","description":"CADS E2E Tests","archived":false,"fork":false,"pushed_at":"2025-11-03T18:05:38.000Z","size":226,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-11-03T20:15:30.602Z","etag":null,"topics":["cads"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ecmwf-projects.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-15T10:18:43.000Z","updated_at":"2025-10-15T16:31:55.000Z","dependencies_parsed_at":"2025-04-16T12:46:44.934Z","dependency_job_id":"b7ce12ac-f9b9-47a8-8daa-67f2798cba4a","html_url":"https://github.com/ecmwf-projects/cads-e2e-tests","commit_stats":null,"previous_names":["ecmwf-projects/cads-e2e-tests"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/ecmwf-projects/cads-e2e-tests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf-projects%2Fcads-e2e-tests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf-projects%2Fcads-e2e-tests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf-projects%2Fcads-e2e-tests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf-projects%2Fcads-e2e-tests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ecmwf-projects","download_url":"https://codeload.github.com/ecmwf-projects/cads-e2e-tests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf-projects%2Fcads-e2e-tests/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28694445,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T14:15:13.573Z","status":"ssl_error","status_checked_at":"2026-01-23T14:09:05.534Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cads"],"created_at":"2026-01-23T14:37:27.630Z","updated_at":"2026-01-23T14:37:28.420Z","avatar_url":"https://github.com/ecmwf-projects.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cads-e2e-tests\n\nCADS E2E Tests\n\n## Quick Start\n\n### Explore all available options:\n\n```\ncads-e2e-tests --help\n```\n\n### Test one random request per dataset:\n\n```\ncads-e2e-tests --reports-path random_reports.jsonl\n```\n\n### Specify which requests to test:\n\n```yaml\n# requests.yaml\n\n# Example 1: Document all available checks and settings\n- collection_id: reanalysis-era5-single-levels\n  parameters:\n    # Optional parameters (random request if no parameters are provided)\n    variable: \"2t\"\n    product_type: \"reanalysis\"\n    date: \"2012-12-01\"\n    time: \"12:00\"\n  checks:\n    # Optional checks (remove any check to disable)\n    checksum: 01683b3d69dec4c7221e524e3f6697dd  # file md5 hash\n    extension: .grib  # file extension\n    size: 2076588  # file size in Bytes\n    # Checks that do not require downloading the results\n    time: 60  # maximum running time to generate results in seconds\n    content_length: 2076588  # file size in Bytes inferred from metadata\n    content_type: application/x-grib  # file type inferred from metadata\n  settings:\n    # Optional request-specific settings\n    max_runtime: 60.0  # maximum time (in seconds) the request is allowed to run\n    randomise: false  # pick one random value per parameter after intersecting the constraints (by default, only empty requests are randomised)\n\n# Example 2: Failure\n- collection_id: test-adaptor-dummy\n  parameters:\n    size: 0\n  checks:\n    size: 1  # wrong file size\n\n# Example 3: Partial random request\n- collection_id: reanalysis-era5-single-levels\n  parameters:\n    year: [\"1990\", \"1991\"]\n  settings:\n    randomise: true  # random request for 1990 or 1991\n```\n\n```\ncads-e2e-tests --requests-path requests.yaml --reports-path example_reports.jsonl\n```\n\n## Workflow for developers/contributors\n\nFor best experience create a new conda environment (e.g. DEVELOP) with Python 3.12:\n\n```\nconda create -n DEVELOP -c conda-forge python=3.12\nconda activate DEVELOP\n```\n\nBefore pushing to GitHub, run the following commands:\n\n1. Update conda environment: `make conda-env-update`\n1. Install this package: `pip install -e .`\n1. Sync with the latest [template](https://github.com/ecmwf-projects/cookiecutter-conda-package) (optional): `make template-update`\n1. Run quality assurance checks: `make qa`\n1. Run tests: `make unit-tests`\n1. Run the static type checker: `make type-check`\n1. Build the documentation (see [Sphinx tutorial](https://www.sphinx-doc.org/en/master/tutorial/)): `make docs-build`\n\n## License\n\n```\nCopyright 2024, European Union.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecmwf-projects%2Fcads-e2e-tests","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fecmwf-projects%2Fcads-e2e-tests","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecmwf-projects%2Fcads-e2e-tests/lists"}