From ab66f5d1c56aa11635a653909e27a263c38208b7 Mon Sep 17 00:00:00 2001 From: neelimaguntupalli1-nhs Date: Tue, 26 Nov 2024 11:31:56 +0000 Subject: [PATCH] Ravs 1094 automate reports feature (#43) * Publishing to github pages * Publishing to github pages * Publishing to github pages * Publishing to github pages * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Publishing to github * Github actions configured for RAVS QA and RAVS dev * Github actions configured for RAVS QA and RAVS dev and QA has cron job scheduled * ChinmayCorrections * screenshot helper change * Fix screenshots] * Fix issue with headless mode * Set geo location * Set geo location * Fix issue with attaching screenshots * Fix issue with attaching screenshots * Fix issue with attaching screenshots * Fix issue with attaching screenshots * Fix issue with attaching screenshots * Fix issue with attaching screenshots - Added sleep before zipping * Fix issue with attaching screenshots - Added sleep before zipping * Fix issue with attaching screenshots - Added sleep before zipping * Fix issue with attaching screenshots - Added sleep before zipping * Fix github pages - move all files * Fix github pages - move all files * Fix github pages - move all files * Fix github pages - move all files * Fix github pages - move all files * Fix github pages - copy all files * Fix github pages - copy all files * Fix github pages - copy all files * Fix github pages - copy all files * Fix github pages - copy all files * Fix github pages * Reset marker * Update publish to github pages * Update publish to github pages * Fix failing find a patient test * Fix test report publish issue * Fix test report publish issue * Fix test report publish issue * Fix test report publish issue * Fix test report publish issue * Fix test report publish issue * Fix test report publish issue * Bump setuptools in /scripts/docker/examples/python/assets/hello_world Bumps [setuptools](https://github.com/pypa/setuptools) from 65.5.1 to 70.0.0. - [Release notes](https://github.com/pypa/setuptools/releases) - [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst) - [Commits](https://github.com/pypa/setuptools/compare/v65.5.1...v70.0.0) --- updated-dependencies: - dependency-name: setuptools dependency-type: direct:production ... Signed-off-by: dependabot[bot] * Test steps updated with legal mechanism, vaccination site and updated check and confirm screen * Fix indenttation in conftest.py * Update tests_qa.yml * Fix dev workflow file * Update tests_dev.yml * Add assertions for check and confirm screen * Add assertions for check and confirm screen * Output test environment detail to screenshot title * Fix record a vaccine flow test * Update dev workflow file to run tests for every push * Fix date format and failing tests when legal mechanism is PGD, automatic vaccinator and consent clinician selection * Fix date format * Fixed issue with date of birth format * Fixed issue with date of birth format * Fix failing find a patient by NHS number test * Fix failing test because of PGD * Fix failing test because of PGD * Fix trailing white space issue in pipeline checks * Updated batch expiry date to make the date format is standardized * Ravs 305 legal mechanism change (#13) * Added slack wbhook url support * Fix prod error in docker find step * Fix proc error in docker find step * Fix proc error in docker find step --------- Co-authored-by: root * Ravs 305 legal mechanism change (#14) * Added slack wbhook url support * Fix prod error in docker find step * Fix proc error in docker find step * Fix proc error in docker find step * Fix failing find a patient search * Fix test failures with improved checks * Fix test failures with improved checks * Timeout error print and not fail the test * Fix liniting error --------- Co-authored-by: root * Update tests_dev.yml Start cron job at 7.30 after QA tests run * Fix failing tests * Replace PDS search numbers * Bump actions/github-script from 6 to 7 (#9) Bumps [actions/github-script](https://github.com/actions/github-script) from 6 to 7. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](https://github.com/actions/github-script/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/github-script dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * --- (#8) updated-dependencies: - dependency-name: requests dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump jinja2 in /scripts/docker/examples/python/assets/hello_world (#7) Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4. - [Release notes](https://github.com/pallets/jinja/releases) - [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4) --- updated-dependencies: - dependency-name: jinja2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/checkout from 2 to 4 (#2) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump golang.org/x/net in /docs/adr/assets/ADR-003/examples/golang (#1) Bumps [golang.org/x/net](https://github.com/golang/net) from 0.17.0 to 0.23.0. - [Commits](https://github.com/golang/net/compare/v0.17.0...v0.23.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/upload-artifact from 2 to 4 (#3) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/setup-buildx-action from 1 to 3 (#4) Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 3. - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v3) --- updated-dependencies: - dependency-name: docker/setup-buildx-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/download-artifact from 2 to 4 (#5) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2 to 4. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix failing tests * Update action.yaml * Update action.yaml * Bump actions/checkout from 2 to 4 (#18) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump werkzeug in /scripts/docker/examples/python/assets/hello_world (#6) Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.0.1 to 3.0.3. - [Release notes](https://github.com/pallets/werkzeug/releases) - [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/werkzeug/compare/3.0.1...3.0.3) --- updated-dependencies: - dependency-name: werkzeug dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: neelimaguntupalli1-nhs * Bump actions/upload-artifact from 2 to 4 (#19) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/download-artifact from 2 to 4 (#20) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2 to 4. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/setup-buildx-action from 1 to 3 (#21) Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 3. - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v3) --- updated-dependencies: - dependency-name: docker/setup-buildx-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump peaceiris/actions-gh-pages from 3 to 4 (#22) Bumps [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages) from 3 to 4. - [Release notes](https://github.com/peaceiris/actions-gh-pages/releases) - [Changelog](https://github.com/peaceiris/actions-gh-pages/blob/main/CHANGELOG.md) - [Commits](https://github.com/peaceiris/actions-gh-pages/compare/v3...v4) --- updated-dependencies: - dependency-name: peaceiris/actions-gh-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Find a patient (#15) * update find a patient tests * add happy path demographics tests * Ravs 305 legal mechanism change (#14) * Added slack wbhook url support * Fix prod error in docker find step * Fix proc error in docker find step * Fix proc error in docker find step * Fix failing find a patient search * Fix test failures with improved checks * Fix test failures with improved checks * Timeout error print and not fail the test * Fix liniting error --------- Co-authored-by: root * Update tests_dev.yml Start cron job at 7.30 after QA tests run * Fix failing tests * add remaining demo tests * Replace PDS search numbers * add start of local tests * add create patient scenario * Bump actions/github-script from 6 to 7 (#9) Bumps [actions/github-script](https://github.com/actions/github-script) from 6 to 7. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](https://github.com/actions/github-script/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/github-script dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * --- (#8) updated-dependencies: - dependency-name: requests dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump jinja2 in /scripts/docker/examples/python/assets/hello_world (#7) Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4. - [Release notes](https://github.com/pallets/jinja/releases) - [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4) --- updated-dependencies: - dependency-name: jinja2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/checkout from 2 to 4 (#2) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump golang.org/x/net in /docs/adr/assets/ADR-003/examples/golang (#1) Bumps [golang.org/x/net](https://github.com/golang/net) from 0.17.0 to 0.23.0. - [Commits](https://github.com/golang/net/compare/v0.17.0...v0.23.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/upload-artifact from 2 to 4 (#3) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/setup-buildx-action from 1 to 3 (#4) Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 3. - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v3) --- updated-dependencies: - dependency-name: docker/setup-buildx-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/download-artifact from 2 to 4 (#5) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2 to 4. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix failing tests * Update action.yaml * Update action.yaml * Bump actions/checkout from 2 to 4 (#18) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump werkzeug in /scripts/docker/examples/python/assets/hello_world (#6) Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.0.1 to 3.0.3. - [Release notes](https://github.com/pallets/werkzeug/releases) - [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/werkzeug/compare/3.0.1...3.0.3) --- updated-dependencies: - dependency-name: werkzeug dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: neelimaguntupalli1-nhs * Bump actions/upload-artifact from 2 to 4 (#19) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/download-artifact from 2 to 4 (#20) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2 to 4. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/setup-buildx-action from 1 to 3 (#21) Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 3. - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v3) --- updated-dependencies: - dependency-name: docker/setup-buildx-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump peaceiris/actions-gh-pages from 3 to 4 (#22) Bumps [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages) from 3 to 4. - [Release notes](https://github.com/peaceiris/actions-gh-pages/releases) - [Changelog](https://github.com/peaceiris/actions-gh-pages/blob/main/CHANGELOG.md) - [Commits](https://github.com/peaceiris/actions-gh-pages/compare/v3...v4) --- updated-dependencies: - dependency-name: peaceiris/actions-gh-pages dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * re-add test for find a patient page * re-add test for find a patient page * update find a patient tests * add happy path demographics tests * add remaining demo tests * add start of local tests * add create patient scenario * re-add test for find a patient page * re-add test for find a patient page * re-add explicit scenario for find a patient * fix rebase errors * fix rebase errors * re-add explicit scenarios * restore old tests * indentation fix * indentation fix * indentation fix * update find a patient page * update requirements.txt * update requirements.txt * update requirements.txt to add faker * update requirements.txt to add faker * update requirements.txt to add faker * update requirements.txt to utf-8 * update requirements.txt to utf-8 with trailing crlf * update requirements.txt add faker --------- Signed-off-by: dependabot[bot] Co-authored-by: Colin Piper Co-authored-by: neelimaguntupalli1-nhs Co-authored-by: root Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: chinmaymudholkar1 <135991922+chinmaymudholkar1@users.noreply.github.com> * Adding tests for age based warnings * Adding tests for age based warnings on vacinate screen too * Fix file formatting job failure * Fix failing record a vaccine tests qa (#24) * Removed your-location page and added support for RSV and pertussis * Removed your-location page and added support for RSV and pertussis fixed recording vaccine tests --------- Co-authored-by: root * Add vaccine and batch (#25) * Removed your-location page and added support for RSV and pertussis * Removed your-location page and added support for RSV and pertussis fixed recording vaccine tests * update the add vaccine and add batch * added scenario for existing product to check batch availability * fix launch page tests for add vaccines and add batches * fix add vaccine tests * fix add batch tests * file format fixes * file format fixes * change secret scan to staged changes * update tests to cover saved record and delete, and update existing record a vaccine tests to use new flow * refactor the vaccine site type batch logic to make it simpler * refactor the vaccine site type batch logic to make it simpler * fix formatting * fix formatting * confirm add batch and add vaccine tests working locally * revert RAV tests to remove cookie check * updated flu vaccine names --------- Co-authored-by: root Co-authored-by: Colin Piper * Update tests_dev.yml Disable test run for tomorrow * Update tests_qa.yml Disable test run for tomorrow * Retest cron job - tests_dev.yml * Reset cron jobs - tests_qa.yml * Fix failing find a patient tests (#26) * Fix failing find a patient tests * Removed scoop from requirements.txt to fix scan secrets issue * added requirements.txt to gitleaks ignore list * Updated path of requirements.txt file * Added fingerprint to gitleaksignore file * Added fingerprint to gitleaksignore file * Added fingerprint to gitleaksignore file * Added fingerprint to gitleaksignore file * Fix failing tests main * Test publish to 2 urls * Disabled automated tests for wednesday * Fixed failing age based warning tests and moved to locators instead of selectors for choose vaccine page * Fixed all failing find a patient tests and changed all elements to be playwright locators instead of selenium selectors --------- Co-authored-by: root * Fix failing logout tests (#28) * Fixed failing logout test and made common methods to click to avoid code duplication * Fix git hooks errors with formatting * Fix failing tests following last commit * Fix issue with attaching screenshots to alure report * Fix issue with attaching screenshots to alure report * Fix issue with attaching screenshots to allure reports and fixed failing login tests * Fix issue with inconsistent test failures when running headless * Hopefully nailed all intermittent failures * Fixed all issues except recording a vaccine and improved wait times * Try publishing data to github * Try publishing data to github * Try publishing data to github * Try publishing data to github * Try publishing data to github * Fixed attach screenshot issue * May have solved the image attachment issue * Make github pages url dynamic * Try attach screenshots again * Corrected upload artifact version * Fixed issue with yml * Fix dynamic branch url naming issue * Reset git leaks actions from last colin's change * Only run logout test for quick feedback * Upload screenshots as artifacts again * Try different version of git actions * Try different version of git actions * Try different version of git actions * Try different version of git actions * Try different version of git actions * Try different version of git actions * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * Correct screenshot path * publish to gibhun-dev * made new branch for publishing to github-pages-dev * made new branch for publishing to github-pages-dev * made new branch for publishing to github-pages-dev * Fix failing tests in dev excpet record a vaccine and added enough wait timers * Added more wait timers * Implement new workflow file * debug workflow file * debug workflow file * debug workflow file --------- Co-authored-by: root * Ravs 961 update record a vaccine tests (#31) * Fixed failing add existing batch test * Fixed fa * Fixed assessment page fields * Fixed consent page fields and site vaccine, batch fields * Fixed vaccinated page field, giving a first stan now to see if all tests pass * Fixed failing age based warning tests * Sorted record a vaccine tests hopefully * Sorted record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully --------- Co-authored-by: root * Ravs 961 update record a vaccine tests (#32) * Fixed failing add existing batch test * Fixed fa * Fixed assessment page fields * Fixed consent page fields and site vaccine, batch fields * Fixed vaccinated page field, giving a first stan now to see if all tests pass * Fixed failing age based warning tests * Sorted record a vaccine tests hopefully * Sorted record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Sorted most of record a vaccine tests hopefully * Changed browser to be edge * Updated scan secrets yml * Updated scan secrets yml and removed timeout as it is not needed * Added logging for shared_data when recording a vaccine * Added logging for shared_data when recording a vaccine * Fixed feature file --------- Co-authored-by: root * Update pytest.ini * Update test_find_a_patient_steps.py * Added intial test for creating reports feature * Update pytest.ini * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Ravs 1094 automate reports feature (#33) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests --------- Co-authored-by: root * Update test_add_vaccine_batches_steps.py * Added 2 new tests to reports * Fixed add batches tests * Ravs 1094 automate reports feature (#34) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Added 2 new tests to reports * Fixed add batches tests --------- Co-authored-by: root * Bump werkzeug in /scripts/docker/examples/python/assets/hello_world (#30) Bumps [werkzeug](https://github.com/pallets/werkzeug) from 3.0.3 to 3.0.6. - [Release notes](https://github.com/pallets/werkzeug/releases) - [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/werkzeug/compare/3.0.3...3.0.6) --- updated-dependencies: - dependency-name: werkzeug dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/upload-artifact from 3 to 4 (#29) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump nhs-england-tools/notify-msteams-action from 0.0.4 to 1.0.0 (#27) Bumps [nhs-england-tools/notify-msteams-action](https://github.com/nhs-england-tools/notify-msteams-action) from 0.0.4 to 1.0.0. - [Release notes](https://github.com/nhs-england-tools/notify-msteams-action/releases) - [Changelog](https://github.com/nhs-england-tools/notify-msteams-action/blob/main/.releaserc) - [Commits](https://github.com/nhs-england-tools/notify-msteams-action/compare/v0.0.4...v1.0.0) --- updated-dependencies: - dependency-name: nhs-england-tools/notify-msteams-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * git attached screenshots for all steps when recording a vaccine and scrolled to the mouse location to click screenshot * fix failing test * fix failing test * Created new workflow file * Ravs 1094 automate reports feature (#35) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Added 2 new tests to reports * Fixed add batches tests * git attached screenshots for all steps when recording a vaccine and scrolled to the mouse location to click screenshot * fix failing test * fix failing test * Created new workflow file --------- Co-authored-by: root * Removed install of tox * Removed install of tox * Ravs 1094 automate reports feature (#36) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Added 2 new tests to reports * Fixed add batches tests * git attached screenshots for all steps when recording a vaccine and scrolled to the mouse location to click screenshot * fix failing test * fix failing test * Created new workflow file * Removed install of tox * Removed install of tox --------- Co-authored-by: root * Making more space on disk * Ravs 1094 automate reports feature (#37) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Added 2 new tests to reports * Fixed add batches tests * git attached screenshots for all steps when recording a vaccine and scrolled to the mouse location to click screenshot * fix failing test * fix failing test * Created new workflow file * Removed install of tox * Removed install of tox * Making more space on disk --------- Co-authored-by: root * Fixed app id variable to fetch from secrets * Ravs 1094 automate reports feature (#38) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Added 2 new tests to reports * Fixed add batches tests * git attached screenshots for all steps when recording a vaccine and scrolled to the mouse location to click screenshot * fix failing test * fix failing test * Created new workflow file * Removed install of tox * Removed install of tox * Making more space on disk * Fixed app id variable to fetch from secrets --------- Co-authored-by: root * Fixed app id variable to fetch from secrets * Corrected case of RAvs test reports * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Fixed workflow file * Fixed path of environment properties * check env.properties is generated * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Fixed trigger curl command * Fixed trigger curl command * Added cron jobs and also added cache * Added cron jobs and also added cache * Corrected target repo name * Corrected target repo name * Corrected run_id case * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Tox verbose mode * Tox verbose mode * Tox verbose mode * env is qa * Added support for marker when running manually * set cron job * removed terraform liniting githook * Fixed failing record vaccine tests because of text format change * Fixed failing record vaccine tests because of text format change * Set timezone to ne europe london * Set timezone to be europe london * test markers are not required * workflow set to what is input * Ravs 1094 automate reports feature (#39) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Added 2 new tests to reports * Fixed add batches tests * git attached screenshots for all steps when recording a vaccine and scrolled to the mouse location to click screenshot * fix failing test * fix failing test * Created new workflow file * Removed install of tox * Removed install of tox * Making more space on disk * Fixed app id variable to fetch from secrets * Fixed app id variable to fetch from secrets * Corrected case of RAvs test reports * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Fixed workflow file * Fixed path of environment properties * check env.properties is generated * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Fixed trigger curl command * Fixed trigger curl command * Added cron jobs and also added cache * Added cron jobs and also added cache * Corrected target repo name * Corrected target repo name * Corrected run_id case * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Tox verbose mode * Tox verbose mode * Tox verbose mode * env is qa * Added support for marker when running manually * set cron job * removed terraform liniting githook * Fixed failing record vaccine tests because of text format change * Fixed failing record vaccine tests because of text format change * Set timezone to ne europe london * Set timezone to be europe london * test markers are not required * workflow set to what is input --------- Co-authored-by: root * Added new tests for reports * Added new tests for reports * Fixed failing tests * Ravs 1094 automate reports feature (#42) * Added intial test for creating reports feature * Fixed failing test for RSV * Added more tests * Fixed -pl=,'@~ * Fixed failed RSV and pertussis tests * Fixed failed RSV and pertussis tests * Updated duplicate batch error and fixed non reponsive page issues when switching from vaccines to patient search * Get sequential index instead of random index * Fixed failing RSV and pertussis tests by adding new batches tagged as Automation * Fixed failing duplicate batch test following fix of 17456 * Reduced time.sleep to see how tests fare * Reset back time and reduced them slightly * Increaed wait time for logout tests * Increaed wait time for logout tests * Increaed wait time for logout tests * Added 2 new tests to reports * Fixed add batches tests * git attached screenshots for all steps when recording a vaccine and scrolled to the mouse location to click screenshot * fix failing test * fix failing test * Created new workflow file * Removed install of tox * Removed install of tox * Making more space on disk * Fixed app id variable to fetch from secrets * Fixed app id variable to fetch from secrets * Corrected case of RAvs test reports * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Corrected test report generation step * Fixed workflow file * Fixed path of environment properties * check env.properties is generated * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Removed docker * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Remove cached tox * Fixed trigger curl command * Fixed trigger curl command * Added cron jobs and also added cache * Added cron jobs and also added cache * Corrected target repo name * Corrected target repo name * Corrected run_id case * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Corrected github token * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Removed all workflow files and set to run it on push * Tox verbose mode * Tox verbose mode * Tox verbose mode * env is qa * Added support for marker when running manually * set cron job * removed terraform liniting githook * Fixed failing record vaccine tests because of text format change * Fixed failing record vaccine tests because of text format change * Set timezone to ne europe london * Set timezone to be europe london * test markers are not required * workflow set to what is input * Added new tests for reports * Added new tests for reports * Fixed failing tests --------- Co-authored-by: root * Bump actions/setup-python from 4 to 5 (#41) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/cache from 3 to 4 (#40) Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Increased timeout for scan secrets from 2 to 10 * Added fingerprint to git leaks ignore * Increased timeout * Reset timeout to 10 * Added 4 new tests * Fixed failing reports tests * Added new tests --------- Signed-off-by: dependabot[bot] Co-authored-by: root Co-authored-by: chinmay.mudholkar1@nhs.net Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: chinmaymudholkar1 <135991922+chinmaymudholkar1@users.noreply.github.com> Co-authored-by: colinpiper3 Co-authored-by: Colin Piper --- .github/workflows/stage-1-commit.yaml | 30 +++++++------- .gitleaksignore | 1 + features/reports.feature | 31 +++++++++++++++ pages/reports_data_selection_page.py | 52 +++++++++++++++++++++++++ pages/reports_site_selection_page.py | 52 +++++++++++++++++++++++++ pages/reports_vaccine_selection_page.py | 3 +- tests/test_reports_steps.py | 51 +++++++++++++++++++----- 7 files changed, 195 insertions(+), 25 deletions(-) create mode 100644 pages/reports_data_selection_page.py create mode 100644 pages/reports_site_selection_page.py diff --git a/.github/workflows/stage-1-commit.yaml b/.github/workflows/stage-1-commit.yaml index a516b7863..2eb4ba786 100644 --- a/.github/workflows/stage-1-commit.yaml +++ b/.github/workflows/stage-1-commit.yaml @@ -36,7 +36,7 @@ jobs: scan-secrets: name: "Scan secrets" runs-on: ubuntu-latest - timeout-minutes: 2 + timeout-minutes: 10 steps: - name: "Checkout code" uses: actions/checkout@v4 @@ -47,7 +47,7 @@ jobs: check-file-format: name: "Check file format" runs-on: ubuntu-latest - timeout-minutes: 2 + timeout-minutes: 5 steps: - name: "Checkout code" uses: actions/checkout@v4 @@ -58,7 +58,7 @@ jobs: check-markdown-format: name: "Check Markdown format" runs-on: ubuntu-latest - timeout-minutes: 2 + timeout-minutes: 5 steps: - name: "Checkout code" uses: actions/checkout@v4 @@ -69,7 +69,7 @@ jobs: check-english-usage: name: "Check English usage" runs-on: ubuntu-latest - timeout-minutes: 2 + timeout-minutes: 5 steps: - name: "Checkout code" uses: actions/checkout@v4 @@ -77,22 +77,22 @@ jobs: fetch-depth: 0 # Full history is needed to compare branches - name: "Check English usage" uses: ./.github/actions/check-english-usage - lint-terraform: - name: "Lint Terraform" - runs-on: ubuntu-latest - timeout-minutes: 2 - steps: - - name: "Checkout code" - uses: actions/checkout@v4 - - name: "Lint Terraform" - uses: ./.github/actions/lint-terraform + # lint-terraform: + # name: "Lint Terraform" + # runs-on: ubuntu-latest + # timeout-minutes: 2 + # steps: + # - name: "Checkout code" + # uses: actions/checkout@v4 + # - name: "Lint Terraform" + # uses: ./.github/actions/lint-terraform count-lines-of-code: name: "Count lines of code" runs-on: ubuntu-latest permissions: id-token: write contents: read - timeout-minutes: 2 + timeout-minutes: 5 steps: - name: "Checkout code" uses: actions/checkout@v4 @@ -111,7 +111,7 @@ jobs: permissions: id-token: write contents: read - timeout-minutes: 2 + timeout-minutes: 5 steps: - name: "Checkout code" uses: actions/checkout@v4 diff --git a/.gitleaksignore b/.gitleaksignore index a34a6d9c0..baf75d325 100644 --- a/.gitleaksignore +++ b/.gitleaksignore @@ -5,3 +5,4 @@ cd9c0efec38c5d63053dd865e5d4e207c0760d91:docs/guides/Perform_static_analysis.md: bc0e944855d5b2ec35de75c79b6215d56b18ed99:requirements.txt:ipv4:5 648c714b8fd9d6a9bb0102649b1b9a04171dd6b5:requirements.txt:ipv4:5 148da0f8b77440ea672e1fe856056900a9454b2c:requirements.txt:ipv4:5 +571ab217807cd146bbb1ac6d55648b6acbe778f4:requirements.txt:ipv4:5 diff --git a/features/reports.feature b/features/reports.feature index 4a859bf60..18f7149f0 100644 --- a/features/reports.feature +++ b/features/reports.feature @@ -59,3 +59,34 @@ Examples: | today+1 | today+1 | To date must be in the past, From date must be in the past | | today+1 | today | From date must be in the past | | null | null | Enter From date, Enter To date | + +Scenario Outline: Choose sites page is displayed + Given I am logged into the RAVS app + When I click the reports navigation link + And I click the create report button + And I click the today date range button and click continue + And I select the vaccine type and click continue + Then the choose sites page should be displayed + + Examples: + |vaccineType | + | COVID-19 | + | Flu | + | Pertussis | + | Respiratory syncytial virus (RSV) | + +Scenario Outline: Choose data page is displayed + Given I am logged into the RAVS app + When I click the reports navigation link + And I click the create report button + And I click the today date range button and click continue + And I select the vaccine type and click continue + And I select the site and click continue + Then the choose data page should be displayed + + Examples: + |vaccineType | site | + | COVID-19 | Albert House | + | Flu | Albert House | + | Pertussis | Albert House | + | Respiratory syncytial virus (RSV) | Albert House | diff --git a/pages/reports_data_selection_page.py b/pages/reports_data_selection_page.py new file mode 100644 index 000000000..0e144f978 --- /dev/null +++ b/pages/reports_data_selection_page.py @@ -0,0 +1,52 @@ +from init_helpers import * + +PAGE_LOADING_ELEMENT = ("text", "Loading...Loading...") +SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_LINK = ("role", "button", "Select data for report") +SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_TEXT = ("text", "Select data for report") +CONTINUE_TO_REPORTS_CHECK_AND_CONFIRM_BUTTON = ("role", "button", "Continue") +BACK_TO_SELECT_SITE_BUTTON = ("role", "button", "Back") + +def check_data_check_box_exists(data): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + element = ("label", data) + wait_for_element_to_appear(element) + return check_element_exists(element) + +def click_data_check_box(data): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + element = ("label", data) + wait_for_element_to_appear(element) + find_element_and_perform_action(element, "check") + +def check_select_site_error_message_text_exists(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_TEXT) + return check_element_exists(SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_TEXT) + +def check_select_vaccine_error_message_link_exists(): + wait_for_element_to_appear(SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_LINK) + return check_element_exists(SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_LINK) + +def click_select_vaccine_error_message_link(): + wait_for_element_to_appear(SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_LINK) + find_element_and_perform_action(SELECT_DATA_FOR_REPORT_ERROR_MESSAGE_LINK, "click") + +def check_continue_to_reports_check_and_confirm_button_exists(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(CONTINUE_TO_REPORTS_CHECK_AND_CONFIRM_BUTTON) + return check_element_exists(CONTINUE_TO_REPORTS_CHECK_AND_CONFIRM_BUTTON) + +def click_continue_to_reports_select_data_button(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(CONTINUE_TO_REPORTS_CHECK_AND_CONFIRM_BUTTON) + find_element_and_perform_action(CONTINUE_TO_REPORTS_CHECK_AND_CONFIRM_BUTTON, "click") + +def check_back_to_select_vaccine_page_button_exists(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(BACK_TO_SELECT_SITE_BUTTON) + return check_element_exists(BACK_TO_SELECT_SITE_BUTTON) + +def click_back_to_select_vaccine_page_button(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(BACK_TO_SELECT_SITE_BUTTON) + find_element_and_perform_action(BACK_TO_SELECT_SITE_BUTTON, "click") diff --git a/pages/reports_site_selection_page.py b/pages/reports_site_selection_page.py new file mode 100644 index 000000000..b0dcf21a0 --- /dev/null +++ b/pages/reports_site_selection_page.py @@ -0,0 +1,52 @@ +from init_helpers import * + +PAGE_LOADING_ELEMENT = ("text", "Loading...Loading...") +SELECT_SITES_ERROR_MESSAGE_LINK = ("role", "button", "Select sites") +SELECT_SITES_ERROR_MESSAGE_TEXT = ("text", "Select sites") +CONTINUE_TO_CHOOSE_DATA_BUTTON = ("role", "button", "Continue") +BACK_TO_SELECT_VACCINE_BUTTON = ("role", "button", "Back") + +def check_site_check_box_exists(site): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + element = ("label", site) + wait_for_element_to_appear(element) + return check_element_exists(element) + +def check_site_check_box(site): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + element = ("label", site) + wait_for_element_to_appear(element) + find_element_and_perform_action(element, "check") + +def check_select_site_error_message_text_exists(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(SELECT_SITES_ERROR_MESSAGE_TEXT) + return check_element_exists(SELECT_SITES_ERROR_MESSAGE_TEXT) + +def check_select_vaccine_error_message_link_exists(): + wait_for_element_to_appear(SELECT_SITES_ERROR_MESSAGE_LINK) + return check_element_exists(SELECT_SITES_ERROR_MESSAGE_LINK) + +def click_select_vaccine_error_message_link(): + wait_for_element_to_appear(SELECT_SITES_ERROR_MESSAGE_LINK) + find_element_and_perform_action(SELECT_SITES_ERROR_MESSAGE_LINK, "click") + +def check_continue_to_reports_select_data_button_exists(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(CONTINUE_TO_CHOOSE_DATA_BUTTON) + return check_element_exists(CONTINUE_TO_CHOOSE_DATA_BUTTON) + +def click_continue_to_reports_select_data_button(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(CONTINUE_TO_CHOOSE_DATA_BUTTON) + find_element_and_perform_action(CONTINUE_TO_CHOOSE_DATA_BUTTON, "click") + +def check_back_to_select_vaccine_page_button_exists(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(BACK_TO_SELECT_VACCINE_BUTTON) + return check_element_exists(BACK_TO_SELECT_VACCINE_BUTTON) + +def click_back_to_select_vaccine_page_button(): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) + wait_for_element_to_appear(BACK_TO_SELECT_VACCINE_BUTTON) + find_element_and_perform_action(BACK_TO_SELECT_VACCINE_BUTTON, "click") diff --git a/pages/reports_vaccine_selection_page.py b/pages/reports_vaccine_selection_page.py index 00feb69af..31b4de761 100644 --- a/pages/reports_vaccine_selection_page.py +++ b/pages/reports_vaccine_selection_page.py @@ -52,7 +52,8 @@ def check_vaccine_check_box_exists(vaccine): wait_for_element_to_appear(element) return check_element_exists(element) -def click_vaccine_check_box(vaccine): +def click_vaccine_check_box_on_reports_page(vaccine): + wait_for_element_to_disappear(PAGE_LOADING_ELEMENT) element = ("label", vaccine) wait_for_element_to_appear(element) find_element_and_perform_action(element, "check") diff --git a/tests/test_reports_steps.py b/tests/test_reports_steps.py index 8cb7b39ae..66a9c669b 100644 --- a/tests/test_reports_steps.py +++ b/tests/test_reports_steps.py @@ -6,11 +6,13 @@ from pages.login_page import * from pages.home_page import * from pages.nhs_signin_page import * +from pages.reports_data_selection_page import * from pages.reports_date_range_selection_page import * import logging from init_helpers import * from conftest import * -from pages.reports_vaccine_selection_page import check_covid_check_box_exists +from pages.reports_site_selection_page import * +from pages.reports_vaccine_selection_page import * features_directory = get_working_directory() + "features" @@ -25,14 +27,6 @@ def shared_data(): yield data data.clear() -# @scenario(f'{features_directory}/reports.feature', 'Reports page is displayed') -# def test_record_a_vaccine_with_nhs_number(): -# pass - -# @scenario(f'{features_directory}/reports.feature', 'Reports page is displayed') -# def test_record_a_vaccine_with_nhs_number(): - # pass - @pytest.mark.reports @given("I am logged into the RAVS app") def logged_into_ravs_app(navigate_and_login): @@ -147,3 +141,42 @@ def the_error_message_for_reports_date_should_be_displayed(error_message, shared assert check_to_date_must_be_in_the_past_error_message_link_exists() == True attach_screenshot("Choose vaccines page should be visible") logging.info("Choose vaccines page should be visible") + +@when('I click the today date range button and click continue') +def I_click_today_date_range_and_click_continue(shared_data): + click_today_radio_button() + attach_screenshot("clicked_today_radio_button") + logging.info("clicked_today_radio_button") + click_continue_to_reports_select_vaccine_button() + attach_screenshot("clicked_continue_to_reports_select_vaccine_button") + logging.info("clicked_continue_to_reports_select_vaccine_button") + +@when(parse('I select the vaccine type {vaccineType} and click continue')) +def I_select_vaccinetype_and_click_continue(shared_data, vaccineType): + click_vaccine_check_box_on_reports_page(vaccineType) + attach_screenshot("click_" + vaccineType.lower() + "_check_box_on_reports_page") + logging.info("click_" + vaccineType.lower() + "_check_box_on_reports_page") + click_continue_to_reports_select_site_button() + attach_screenshot("click_continue_to_reports_select_site_button") + logging.info("click_continue_to_reports_select_site_button") + +@then("the choose sites page should be displayed") +def the_choose_sites_page_should_be_displayed(): + assert check_site_check_box_exists("ALBERT HOUSE") == True + attach_screenshot("check_choose_sites_page_is_displayed") + logging.info("check_choose_sites_page_is_displayed") + +@when(parse('I select the site {site} and click continue')) +def I_select_vaccinetype_and_click_continue(shared_data, site): + check_site_check_box(site) + attach_screenshot("click_" + site.lower() + "_check_box_on_reports_page") + logging.info("click_" + site.lower() + "_check_box_on_reports_page") + click_continue_to_reports_select_data_button() + attach_screenshot("click_continue_to_reports_select_data_button") + logging.info("click_continue_to_reports_select_data_button") + +@then("the choose data page should be displayed") +def the_choose_data_page_should_be_displayed(): + assert check_data_check_box_exists("Patients") == True + attach_screenshot("check_choose_data_pages_reports_exists") + logging.info("check_choose_data_pages_reports_exists")