Skip to content

A Github action for Matlab or Octave unit tests

License

Notifications You must be signed in to change notification settings

agahkarakuzu/moxunit-action

 
 

Repository files navigation

MOxUnit action

GitHub Marketplace Test codecov

This action performs unit tests for GNU Octave and Matlab using the unit testing framework MOxUnit. Documentation tests and coverage reports are supported via MOdox and MOCov.

Container

This action uses qmarlab/octaveci:4.2.2 that contains following packages/versions:

Package Name  | Version | Installation directory
--------------+---------+-----------------------
       image  |   2.6.2 | /usr/share/octave/packages/image-2.6.2
          io  |  2.4.10 | /usr/share/octave/packages/io-2.4.10
       optim  |   1.5.2 | /usr/share/octave/packages/optim-1.5.2
    parallel  |   3.1.1 | /usr/share/octave/packages/parallel-3.1.1
  statistics  |   1.3.0 | /usr/share/octave/packages/statistics-1.3.0
      struct  |  1.0.14 | /usr/share/octave/packages/struct-1.0.14

Usage

In the simplest case

steps:
 - uses: actions/checkout@v2
 - uses: joergbrech/moxunit-action@master

runs all MOxUnit test cases found in this repository. A more complex use case could look like this:

steps:
- uses: actions/checkout@v2
- uses: joergbrech/moxunit-action@master
  with:
    tests: tests my_extra_testfile.m
    src: src thirdparty util
    with_coverage: true
    doc_tests: true
    cover_xml_file: coverage.xml
- uses: codecov/codecov-action@v1
  with:
    file: ./coverage.xml

To use your test data along with Octave packages, you can see this example configuration file.

Arguments

Input Description Usage
tests files or directories containing the MOxUnit test cases Optional, defaults to the root directory of the repo. All subdirectories are added recursively.
src directories to be added to the Octave search path before running the tests. These directories will be considered in the coverage reports, if coverage is enabled. Optional
data Directory for test data Optional
pkg Octave packages to load. Available options: image io optim parallel statistics struct Optional
ext External resources to add to the search put (excluded from coverage) Optional
log_file store the output in file output Optional
doc_tests set to true to run documentation tests with MOdox Optional
with_coverage set to true to record coverage using MOCov Optional
cover_xml_file store coverage XML output in file Optional
cover_html_dir store coverage HTML output in directory Optional
cover_junit_xml_file store test results in junit XML file Optional
cover_json_file store coverage report in json file for processing by coveralls.io Optional

About

A Github action for Matlab or Octave unit tests

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 65.5%
  • MATLAB 23.0%
  • Dockerfile 11.5%