This patchset enables continuous integration, via Travis CI, and code coverage via Coveralls. Travis CI runs all unit and functional tests with the --enable-code-coverage flag passed into ./configure. Coveralls then utilizes this coverage data in its reports.
Finally, this patchset also makes a few other noteworthy changes: * Switch to using LXD to simplify sharing data between the host and the container. Previously it was using LXC * Legacy tests are now disabled (but still in the repo) * Default to python3 for the functional tests Changes from v2 to v3: * Cleaned up the commit messages * Split patch 02 into two patches since they are effectively different problems and solutions * No actual code changes Changes from v1 to v2: * Gave suggested-by credit to Michal Koutn? for switching to python v3. Also at his recommendation, improved the git commit message explaining the rationale behind the change * Removed first-person comments from the patch that disables the legacy tests * Cited the source of the ax_code_coverage.m4 file Travis CI results for my user branch are available here: https://travis-ci.com/drakenclimber/libcgroup/builds Coveralls results (currently 16% code coverage!) are available here: https://coveralls.io/github/drakenclimber/libcgroup v1 patches are available here: https://github.com/drakenclimber/libcgroup/tree/issues/travisci v2 patches are available here: https://github.com/drakenclimber/libcgroup/tree/issues/travisci_v2 v3 patches are available here: https://github.com/drakenclimber/libcgroup/tree/issues/travisci_v3 Tom Hromatka (8): tests: Improve the unit test framework integration with automake tests: Fix errors in functional test error path handling tests: Fix inconsistent return value in functional test's Container() class tests: Use python3 in the functional tests tests: Disable the legacy tests tests: Add Travis CI yaml configuration file tests: Switch to using LXD for functional tests tests: Gather code coverage data after a successful CI run .gitignore | 3 + .travis.yml | 62 ++++++++ bootstrap.sh | 16 +- configure.in | 42 +++--- m4/ax_code_coverage.m4 | 264 +++++++++++++++++++++++++++++++++ src/Makefile.am | 8 +- src/tools/Makefile.am | 24 +++ tests/Makefile.am | 4 +- tests/ftests/001-cgget-basic_cgget.py | 2 +- tests/ftests/cgroup.py | 4 +- tests/ftests/config.py | 2 +- tests/ftests/consts.py | 10 +- tests/ftests/container.py | 140 ++++++----------- tests/ftests/ftests.py | 74 ++++++--- tests/ftests/run.py | 9 +- tests/gunit/Makefile.am | 13 +- tests/tools/cgclassify/Makefile.am | 4 +- tests/tools/cgconfigparser/Makefile.am | 6 +- tests/tools/multimount/Makefile.am | 4 +- 19 files changed, 529 insertions(+), 162 deletions(-) create mode 100644 .travis.yml create mode 100644 m4/ax_code_coverage.m4 -- 1.8.3.1 _______________________________________________ Libcg-devel mailing list Libcg-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libcg-devel