(Add FMF example, add link to python-tox) |
Churchyard (talk | contribs) mNo edit summary |
||
Line 22: | Line 22: | ||
* [https://src.fedoraproject.org/rpms/jython/blob/master/f/tests/tests.yml jython] | * [https://src.fedoraproject.org/rpms/jython/blob/master/f/tests/tests.yml jython] | ||
Plus we ensure that essential | Plus we ensure that essential tools for venv and virtualnv, such as `setuptools`, `pip` or `virtualenv` itself correctly work with all supported versions: | ||
* [https://src.fedoraproject.org/rpms/python-pip/blob/master/f/tests/tests.yml python-pip] | * [https://src.fedoraproject.org/rpms/python-pip/blob/master/f/tests/tests.yml python-pip] |
Revision as of 15:10, 19 September 2018
On this page you can find some inspiration from real-life examples of tests already enabled in the Fedora CI.
Python
There are multiple versions of Python programming language available in Fedora and a number of related subpackages. As all of them should be tested (including their various combinatios) we share test coverage for them in the tests
namespace:
The test repo contains basic smoke test for virtualenv together with example test Metadata stored in the Flexible Metadata Format:
Once the test is avaible in the share test repository it can be easily linked from supported Python versions:
We test additional Python implementations as well:
Plus we ensure that essential tools for venv and virtualnv, such as setuptools
, pip
or virtualenv
itself correctly work with all supported versions:
Note that for the last set of examples we run the same test several times with modified environment. For example:
- smoke36: dir: python/smoke run: VERSION=3.6 ./venv.sh - smoke37: dir: python/smoke run: VERSION=3.7 ./venv.sh - smoke26: dir: python/smoke run: VERSION=2.6 METHOD=virtualenv TOX=false ./venv.sh - smoke27: dir: python/smoke run: VERSION=2.7 METHOD=virtualenv ./venv.sh - smoke34_virtualenv: dir: python/smoke run: VERSION=3.4 METHOD=virtualenv ./venv.sh
In this way we create several virtual test cases from a single test code which prevents duplication and minimizes future maintenance.