Skip to content
  • Tristan Van Berkom's avatar
    Support running test environments in parallel with `detox` · f29a0995
    Tristan Van Berkom authored
    This patch namespaces the test temp directory and the output
    coverage report file with the name of the environment under test,
    such that separately run tests do not access the same files.
    
    When running tests without tox, directly through setup.py,
    then the tmp directory will still be `./tmp`.
    
      * .gitignore: Added new .coverage-reports/ directory
    
      * .gitlab-ci.yml: Rely on tox to combine and report coverage, only
        tell tox about the COVERAGE_PREFIX so that results can be namespaced
        by CI job name.
    
        This change also publishes the sources and final combined `.coverage`
        file in an output gitlab artifact for inspection, and lists some missing
        dependencies to the `coverage` job.
    
      * tox.ini: Add comments and refactor main [testenv] section so that
        other environments dont inherit too much unrelated cruft.
    
        Generate the coverate reports in the respective {envtmpdir} so that
        all per-process coverage files are prefixed with a full path, ensuring
        that concurrent runs don't mix reports and addressing concerns
        raised in #844.
    
        Also implemented new `tox -e coverage` environment to combine
        any found coverage and print a report.
    
      * .coveragerc: Omit .tox/ directory from coverage stats
    
    Fixes issue #844
    f29a0995