{"id":19580922,"url":"https://github.com/orcid/orcid-independent-tests","last_synced_at":"2025-09-07T06:34:35.045Z","repository":{"id":15485051,"uuid":"78226962","full_name":"ORCID/orcid-independent-tests","owner":"ORCID","description":"python curl calls","archived":false,"fork":false,"pushed_at":"2023-10-10T14:21:22.000Z","size":4345,"stargazers_count":1,"open_issues_count":0,"forks_count":4,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-04-10T22:11:56.427Z","etag":null,"topics":["api","curl","python","unittest"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ORCID.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-01-06T17:58:06.000Z","updated_at":"2022-12-17T16:42:19.000Z","dependencies_parsed_at":"2022-08-07T08:01:08.321Z","dependency_job_id":null,"html_url":"https://github.com/ORCID/orcid-independent-tests","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ORCID%2Forcid-independent-tests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ORCID%2Forcid-independent-tests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ORCID%2Forcid-independent-tests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ORCID%2Forcid-independent-tests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ORCID","download_url":"https://codeload.github.com/ORCID/orcid-independent-tests/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224066872,"owners_count":17250069,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["api","curl","python","unittest"],"created_at":"2024-11-11T07:31:08.608Z","updated_at":"2024-11-11T07:31:36.819Z","avatar_url":"https://github.com/ORCID.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# orcid-independent-tests\n\nThis project uses automated calls to test ORCID API functionality.\n\nThe tests are divided into two groups:\n* Step 1 tests read and write to static records on QA, but the records are not changed as any written information is then deleted.\n* Step 2 tests update a given ORCID record and can not be run twice on the same record, unless you are running the tests locally, in which case you can clean up the record by running `orcid/delete_record_contents.py`\n\n## Local setup\n\n* [Install the latest python 3 version](https://www.python.org/downloads/) (make sure to include pip and (win) add to environment variables)\n* Clone the independent tests repository\n* Install dependencies by running `pip install -r ./orcid/requirements.txt` in the source folder (alternatively see the virtual environment setup below)\n* (Win) Download [geckodriver](https://github.com/mozilla/geckodriver/releases) and copy the extracted executable into your Python folder\n* Create \"local_properties.py\" in the `./orcid` folder and populate it with contents of the \"Independent test local properties\" entry found in Dashlane.\n* Change the `firefoxPath` and `geckodriverPath` property values in the `orcid\\local_properties.py` file to point to your local Firefox/Geckodriver executables.\n\n#### Virtual environment setup\n\n    rm -rf .py_env results\n    mkdir results\n    virtualenv .py_env\n    . .py_env/bin/activate\n    pip2 install -r ./orcid/requirements.txt\n\nRun the required line in the source folder to execute a given test:\n\n### Step 1\n    py.test --junitxml orcid/.py_env/Scripts/results/test_public_record.xml orcid/test_public_record.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_limited_record.xml orcid/test_limited_record.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_private_record.xml orcid/test_private_record.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_20api_all_endpoints.xml orcid/test_20api_all_endpoints.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_21api_all_endpoints.xml orcid/test_21api_all_endpoints.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_30api_all_endpoints.xml orcid/test_30api_all_endpoints.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_30api_obo_user_all_endpoints.xml orcid/test_30api_obo_user_all_endpoints.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_rc_api_filters.xml orcid/test_rc_api_filters.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_scope_methods.xml orcid/test_scope_methods.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_read_endpoints.xml orcid/test_read_endpoints.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_public_api_read_search.xml orcid/test_public_api_read_search.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_content_negotiation.xml orcid/test_content_negotiation.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_revoked_token.xml orcid/test_revoked_token.py\n### Step 2\n    py.test --junitxml orcid/.py_env/Scripts/results/test_member20_api_post_update.xml orcid/test_member20_api_post_update.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_member21_api_post_update.xml orcid/test_member21_api_post_update.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_member30_api_post_update.xml orcid/test_member30_api_post_update.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_member_obo.xml orcid/test_member_obo.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_oauth_open_id.xml orcid/test_oauth_open_id.py\n    py.test --junitxml orcid/.py_env/Scripts/results/test_expected_errors.xml orcid/test_expected_errors.py\n\n\n## Running and tweaking tests using Github Actions\n\nTo run the tests:\n\n1. Visit [Github Actions](https://github.com/ORCID/orcid-independent-tests/actions/).\n2. Select the appropriate step (workflow) and click the \"Run workflow\" button.\n3. Fill in the details (if required) and run the test.(Note: step 2 requires to register a new user following indicated name format, with same name@mailinator.com email then verify that primary email)\n\nThe workflow files can be found [here](https://github.com/ORCID/orcid-independent-tests/tree/master/.github/workflows).\n\n## Troubleshooting\n\n`orcid/delete_record_contents.py` may be used to clean unnecessary data from the records used in step 1 and step 2 tests (if running the tests locally). Include the flag `-s` with the required step number, e.g. `-s 2`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forcid%2Forcid-independent-tests","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Forcid%2Forcid-independent-tests","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forcid%2Forcid-independent-tests/lists"}