* Update build_and_test.yml
added python 3.13
removed python 3.8
* workaround delying thread initialization to avoid python3.13 bug
* workaround delaying thread initialization to avoid python3.13 bug
* avoid running Process instances beacuse of a bug in python3.13 https://github.com/python/cpython/issues/134381
* removed hack
* make helper servers run as daemon in order to make testecases not to get stuck
* Dropping Python 2.7 support. We're going to run it in GitHub Actions/Tox but only as experimental to have visibility.
* Arranged README and updated installation steps.
* Added latest ChangeLog entries.
* Added tox-gh-actions to simplify workflow.
Continue refactor some of our test cases structure.
Main changes introduced are:
* Moved testing guide as a separate file and added some of the steps to configure the test environment.
* Leveraging unittest.main to catch command-line args and build the default suite.
* Only running GitHub actions workflow once for our own branches/PRs.
* Remote test config file can be specified via an env var now.
* Moved remote test config to a template and ignored config file.
Tests: First batch of changes on refactoring test cases
This is the first part of a larger effort to refactor some of our test cases structure.
Main changes introduced are:
- Using pytest as the testing framework to organize and mark test cases.
- Replacing custom bash scripts with test cases discovery.
- Integrating pytest-cov plugin to easier coverage collection and reporting.
- Marking remote test cases to being able to pick those during run.
- Abstracted remote test cases configuration in a base class.
- Consolidating pytest, coverage and tox configuration in a single tox.ini file.
- Removed some Python 2.5 support and replaced custom compat checks with six.
- Replace unittest.TextTestRunner.run by unittest.main (cherry-picked from f5dab5ca76, thanks @franferrax !)
As we were running with some issues with Travis (e.g. limited run minutes), we're adding GitHub Actions as a separate CI unit tests runner. Tests are executed via Tox in virtual environments so we should expect the same results as in Travis, although we're not yet replacing it at this point.
* Adds a basic workflow that:
* Runs flake8 for syntax errors and then runs non-remote unit tests using Tox.
* Runs on Python 2.7, 3.6, 3.7, 3.8 and allows failures on 3.9 as we do in Travis.
* Adds a job that just builds the contributed docker image to check it's not failing.