An open API service indexing awesome lists of open source software.

https://github.com/ahojukka5/pkgtestsuite.jl

PKgTestSuite is a standard test suite to test packages under JuliaFEM organization. By using centralized testing script we can control testing of all packages from single place. In practice, PkgTestSuite is taking care of whole CI process, starting from running doctests, tests, syntax check + other tests. After that automatically generated documentation is deployed to organisation web-page.
https://github.com/ahojukka5/pkgtestsuite.jl

ci doctests documentation testing

Last synced: 2 months ago
JSON representation

PKgTestSuite is a standard test suite to test packages under JuliaFEM organization. By using centralized testing script we can control testing of all packages from single place. In practice, PkgTestSuite is taking care of whole CI process, starting from running doctests, tests, syntax check + other tests. After that automatically generated documentation is deployed to organisation web-page.

Awesome Lists containing this project

README

          

# PkgTestSuite.jl

[![][travis-img]][travis-url]
[![][coveralls-img]][coveralls-url]

Standard test suite for packages under JuliaFEM organization. The purpose of
this package is to
1. avoid unnecessary boilerplate code of setting up new packages, and
2. provide a standardized way to test that package matches to JuliaFEM standards.

Usage from command line:

```julia
julia> using PkgTestSuite
julia> test(pkg_name)
julia> deploy(pkg_name)
```

If running `deploy()` from command line, documentation is generated to `docs/site`.

Usage from Travis-CI:

```yaml
before_script:
- julia --color=yes -e 'Pkg.clone("https://github.com/JuliaFEM/PkgTestSuite.jl.git")'
- julia --color=yes -e 'using PkgTestSuite; init()'
script:
- julia --color=yes -e 'using PkgTestSuite; test()'
after_success:
- julia --color=yes -e 'using PkgTestSuite; deploy()'
```

Default sequence is:
1. check that all source files contain licence string
2. check that no tabs are used in source files
3. check code syntax using Lint.jl
4. generate documentation of package using Documenter.jl
5. run all unit tests
6. deploy documentation to juliafem.github.io and coverage report to coveralls.io

By default build will fail if any item in above is failing. Something this
might be too strict requirement, especially for older packages. For that
reason is's possible to set key `LINT_STRICT` to `false` in Travis environment
variable to make deploy success even if Lint.jl is giving some warnings.
Correspondingly there is a key `DOCUMENTER_STRICT` which can be set to `false`
to skip errors in Documenter.jl caused by missing docstrings or failed doctests.

[travis-img]: https://travis-ci.org/JuliaFEM/PkgTestSuite.jl.svg?branch=master
[travis-url]: https://travis-ci.org/JuliaFEM/PkgTestSuite.jl
[coveralls-img]: https://coveralls.io/repos/github/JuliaFEM/PkgTestSuite.jl/badge.svg?branch=master
[coveralls-url]: https://coveralls.io/github/JuliaFEM/PkgTestSuite.jl?branch=master