[run]
branch = True

include = *galsim/*

omit =
    # These are mostly still tested, but we don't really care if the tests are complete.
    *deprecated/*

    # This is a utility for tracking down OSErrors.  Don't include in coverage.
    *fds_test.py

    # These files are used for the executables, galsim and galsim_download_cosmos.
    # They don't get run via nosetests, so they don't really get covered.
    *__main__.py
    *main.py
    *download_cosmos.py

# Without this, coverage misses anything that is only run in multiprocessing mode.
concurrency = multiprocessing

[report]
# Regexes for lines to exclude from consideration
exclude_lines =
    # If you put this in a comment, you can manually exclude code from being covered.
    pragma: no cover

    # Don't complain if non-runnable code isn't run:
    if False:
    if 0:
    if __name__ == .__main__.:

    # Don't complain about exceptional circumstances not under control of the test suite
    except .*KeyboardInterrupt
    except .*OSError

    # Or checks for alternate versions when some package is not available
    except ImportError
