Commit Graph
81 Commits
Author SHA1 Message Date
Nicola Soranzo 23185e7039 Add GitHub CI workflow to test on Python 3.7 the packages needed by Pulsar
so we will be able to drop Python 3.7 support for the rest of the code base.

Add a new `test_galaxy_packages_for_pulsar` tox environment and modify the
`test.sh` script so that when the `--for-pulsar` argument is passed:
- only the 4 packages used by Pulsar are tested
- mypy checks are skipped
- unit tests don't skip the tests marked with
  `external_dependency_management` (i.e. those conda/container-related).

Also:
- Add missing pydantic requirement to the galaxy-objectstore package
2023-09-06 11:07:56 +01:00
John Davis 7084957ef0 Add TS alembic dir to ignore list in test scripts
Otherwise alembic/env.py gets executed out of context at test collection
stage (via tox -e unit >> run_tests.sh), which raises an AttributeError
(alembic.context is not set in this case).
Same solution as in 3be1f6fef3

Also minor reformat.
2023-02-08 00:33:48 -05:00
Nicola Soranzo 6d43c44c96 Extract list of packages ordered by dependency dag for reuse
Also:
- Add missing ones: `navigation`, `selenium`, `tours`
- Fix `galaxy-selenium` requirements
2022-12-13 16:57:37 +00:00
John DavisandNicola Soranzo 786a3e4375 Don't pip-install lint requirements for package tests
Co-authored-by: Nicola Soranzo <nicola.soranzo@gmail.com>
2022-11-30 11:31:22 -05:00
John Davis 724ff9e17b Install mypy for package tests 2022-11-29 18:40:18 -05:00
Nicola Soranzo afa7b713bc Replace `GALAXY_TEST_INCLUDE_SLOW env variable with external_dependency_management` pytest marker
Fix mulled tests missing tests in `test/unit/tool_util/test_conda_resolution.py` .

Also:
- Add `coverage` tox factor to generate coverage report.
2022-11-03 21:43:37 +00:00
John Chilton db68ac271d Decouple galaxy-app and galaxy-selenium.
That was a lazy shortcut on my part and should have never happened.

This resolves that and also another task on my todo list of making an easily pip installable, lightweight way of getting access to the tours validation script at the same time by restructuring packages and cleaning up the dependency structure.

The navigation piece of galaxy-selenium has been split out of into its own package and tours now depend on that directly. In order to have that lightweight access to the tour validation code - tours have also been split out of app. This will also encourage that package to continue to be decoupled nicely from the larger galaxy-app package.
2022-06-27 12:56:22 -04:00
Nicola Soranzo 6b643dcf5c Revert "Pin an older version of setuptools for package testing to work around use_2to3 required by rdflib."
This reverts commit 74e96d3a04.
2022-06-10 10:48:36 +01:00
John Chilton 1cb4135018 Remove test_selenium from CI - doesn't yet pass mypy...
Also why is mypy so much more aggressive with packages, it is like it just gives up on the big code base.
2022-06-09 09:25:41 -04:00
John ChiltonandNicola Soranzo db845f353a Apply suggestions from code review
Co-authored-by: Nicola Soranzo <nicola.soranzo@gmail.com>
2022-06-08 20:00:07 -04:00
John Chilton fa3819ccda Bring galaxy-test-api and galaxy-test-selenium under CI also. 2022-06-08 09:24:02 +01:00
John Chilton 9b3dd7413e Add galaxy-test-driver to CI package tests. 2022-06-03 09:35:22 -04:00
Nicola Soranzo b1262fcbf7 Run pytest on all packages' files
recovering missed doctests.
2022-06-02 16:17:55 +01:00
John Chilton d3719517e7 attempt to run CI on test_base so we can catch issues with packaging... 2022-05-30 12:19:29 -04:00
mvdbeek 443119ccc9 Drop containers package, move to tool_util 2022-03-24 19:51:59 +01:00
Sergey Golitsynskiy 3be1f6fef3 Add alembic dir to ignore list in package tests
Otherwise alembic/env.py gets executed out of context at test collection
stage (via tox -e unit >> run_tests.sh), which raises an AttributeError
(alembic.context is not set in this case)
2022-03-09 18:40:07 -05:00
Nicola Soranzo 7f04b5d698 Merge branch 'release_22.01' into dev 2022-03-02 20:08:55 +00:00
mvdbeek 2fab58cac4 Create config package 2022-03-01 15:39:46 +01:00
Nicola Soranzo 5d7f94ef2f Simplify package testing code 2022-02-18 16:00:11 +00:00
Nicola Soranzo 22bcef6342 Test the webapps package
Also:
- Remove redundant `galaxy.schema` module from the `app` package (it's
  already in `data`)
- Fix requirements of the `app` and `webapps` packages
- Add missing `PyJWT` and `python-dateutil` to `tool.poetry.dependencies`
  (which were already included in the pinned requirements as deps of deps)
2022-02-17 19:50:40 +00:00
Nicola Soranzo 82a45e1544 Sync package deps with pyproject.toml
Fix resulting mypy issues.
2021-11-11 14:46:51 +01:00
Nicola Soranzo cf5afe67cd Add a cwl extras to galaxy-tool-util with cwltool as dependency
Also:
- Don't install `util` and `tool-util` packages twice in `packages/test.sh`
2021-11-09 14:40:46 +01:00
John Chilton c791fea0cf Formalize dependency of galaxy-data on galaxy.files package.
- Create a new project galaxy-files that does not depend on anything but galaxy-util.
- Add a dependency in galaxy-data on galaxy-files, use typing in galaxy.data.sniff to make this clear.
- Cleanup the galaxy-files unit tests to not depend on galaxy.datatypes.sniff code - this wasn't ideal to start with.
- Add a small integration-ish unit test test_sniff_file_sources.py to test that piece of sniff.py that depends on galaxy-files.
2021-10-11 13:16:30 -04:00
John Chilton 74e96d3a04 Pin an older version of setuptools for package testing to work around use_2to3 required by rdflib. 2021-10-07 11:05:04 -04:00
John Chilton c58fe574a8 Move more galaxy-data tests into test/unit/data so they are tested as part of galaxy-data tests. 2021-09-24 12:16:55 -04:00
Marius van den Beek f10aecbf4c Merge pull request #11043 from bernt-matthias/topic/validator-negate
Add `negate` attribute to validators .. and tests for all
2021-09-16 11:54:24 +02:00
John Chilton 7692e62036 Load EDAM from PyPI if not configured instead of unexpected download. 2021-08-11 10:14:43 -04:00
Matthias Bernt 44061433d1 debug package tests 2021-08-02 15:02:10 +02:00
Nicola Soranzo 6c540932c7 Merge branch 'release_21.01' into dev 2021-03-12 19:01:35 +00:00
Nicola Soranzo 283ec1772f Merge branch 'release_20.09' into release_21.01 2021-03-12 17:12:04 +00:00
Nicola Soranzo 734b08142a Use latest pip in package testing
Fix the following error when running `tox -e test_galaxy_packages` on
Python 3.5:

```
ERROR: Could not find a version that satisfies the requirement networkx==2.5 (from isa-rwval->galaxy-data==20.9.1.dev0) (from versions: 0.34, 0.35, 0.35.1, 0.36, 0.37, 0.99, 1.0rc1, 1.0, 1.0.1, 1.1, 1.2rc1, 1.2, 1.3rc1, 1.3, 1.4rc1, 1.4, 1.5rc1, 1.5, 1.6rc1, 1.6, 1.7rc1, 1.7, 1.8rc1, 1.8, 1.8.1, 1.9rc1, 1.9, 1.9.1, 1.10rc2, 1.10, 1.11rc1, 1.11rc2, 1.11, 2.0, 2.1, 2.2rc1, 2.2, 2.3rc3, 2.3rc4, 2.3, 2.4rc1, 2.4rc2, 2.4)
ERROR: No matching distribution found for networkx==2.5 (from isa-rwval->galaxy-data==20.9.1.dev0)
WARNING: You are using pip version 20.2.2; however, version 20.3.4 is available.
You should consider upgrading via the '/tmp/gxpkgtestenviQxuK1/bin/python -m pip install --upgrade pip' command.
ERROR: InvocationError for command /bin/bash packages/test.sh (exited with code 1)
___________________________________ summary ____________________________________
ERROR:   test_galaxy_packages: commands failed
```
2021-03-11 22:41:10 +00:00
John Chilton 75e6d667ad Merge remote-tracking branch 'galaxyproject/release_21.01' into dev 2021-01-22 15:22:30 -05:00
John Chilton 870b93d79d Pin mypy. 2021-01-22 13:12:59 -05:00
John Chilton 28661a4fec More type checking fixes. 2020-12-30 20:31:07 -05:00
John Chilton c599177f5f mypy typing for galaxy-app 2020-12-30 09:41:34 -05:00
John Chilton 9862fac8cf Small improvements to try to get galaxy-app closer to working. 2020-12-29 19:47:46 -05:00
John Chilton 51f8a6f16b mypy typing checking for galaxy-web-framework 2020-12-28 23:55:00 -05:00
John Chilton d3b2f71bbd mypy typing for galaxy-web-stack. 2020-12-28 23:41:44 -05:00
John Chilton be3f17a3ac mypy type checking for auth 2020-12-28 23:41:27 -05:00
John Chilton 0397ccdd12 Typing checking for galaxy-job-execution. 2020-12-28 23:24:06 -05:00
John Chilton a7b6f08446 Type checking fixes for galaxy-data (datatypes and models). 2020-12-28 16:43:14 -05:00
John Chilton 976197115b mypy containers and tool-util packages 2020-12-27 15:50:51 -05:00
John Chilton 80746cd5d9 mypy testing for galaxy-job-metrics 2020-12-25 19:29:43 -05:00
John Chilton cefa9551df Add optional per-package mypy tests to packages CI. 2020-12-25 19:29:43 -05:00
Nate Coraor 402cffa620 Merge remote-tracking branch 'upstream/release_20.05' into dev 2020-08-05 10:40:25 -04:00
mvdbeek 19dcf92c1d Make pip install 'galaxy-tool-util[mulled]' fully functional 2020-07-24 15:33:45 +02:00
mvdbeek 6a663e2b96 Fix packages/test.sh syntax 2020-07-22 17:13:58 +02:00
John Chilton 0ea20422e0 Modify packages to allow test requirements (for responses). 2020-07-06 18:49:04 -04:00
John Chilton f529da1b30 Organize more unit tests into package tested bundles. 2020-07-06 18:49:04 -04:00
John Chilton 4e25887d14 Rename galaxy-web-apps -> galaxy-webapps 2020-07-06 18:49:04 -04:00