Skip to content

make prettier

make prettier #730

Workflow file for this run

name: Build and Test
on: [push, pull_request]
permissions:
contents: read
jobs:
bat:
name: Build and Test
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 24
- name: Perform npm tasks
run: npm run ci
- uses: actions/upload-artifact@v7
with:
name: built-action
path: |
**/*
!node_modules/
integ:
needs: bat
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest, macos-14]
steps:
- uses: actions/download-artifact@v8
with:
name: built-action
- name: Perform 'setup-matlab'
uses: matlab-actions/setup-matlab@v3
with:
products: |
MATLAB_Test
Simulink
Simulink_Test
Simulink_Coverage
- name: Clear job summary
run: echo "" > "$GITHUB_STEP_SUMMARY"
shell: bash
- name: Run MATLAB Tests with job summary disabled
continue-on-error: true
uses: ./
with:
generate-job-summary: false
- name: Verify no job summary is generated when disabled
run: |
set -e
if grep -q "MATLAB Test Results" "$GITHUB_STEP_SUMMARY"; then
echo "Job summary should not have been generated" && exit 1
fi
shell: bash
- name: Clear job summary
run: echo "" > "$GITHUB_STEP_SUMMARY"
shell: bash
- name: Run MATLAB Tests
continue-on-error: true
uses: ./
with:
source-folder: sample
startup-options: -logfile output.log
code-coverage-metric-level: mcdc # new option to configure metric level
- name: Verify job summary is generated by default
run: |
set -e
grep -q "MATLAB Test Results" "$GITHUB_STEP_SUMMARY"
shell: bash
- name: Verify option application
run: |
set -e
grep "Running TheTruth" output.log
grep "Done TheTruth" output.log
grep "Running QuadraticPolynomialTest" output.log
grep "Done QuadraticPolynomialTest" output.log
grep "Running tAssumptionFailure" output.log
grep "Done tAssumptionFailure" output.log
grep "3 Passed" output.log
grep "1 Incomplete" output.log
shell: bash
- name: Generate Model
uses: matlab-actions/run-command@v3
with:
command: cd('sample'),createSampleModel('temp_model'),sltest.testmanager.createTestsFromModel('sltestfile', 'temp_model');
- name: Set up diary for logging
run: echo 'diary console.log' >> startup.m
- name: Run run-test command
continue-on-error: true
uses: ./
with:
test-results-simulink-test: test-results/simulinktest.mldatx
model-coverage-cobertura: test-results/modelcoverage.xml
test-results-pdf: test-results/pdf-results.pdf
test-results-junit: test-results/results.xml
code-coverage-cobertura: test-results/coverage.xml
code-coverage-html: test-results/coverageHTML
model-coverage-html: test-results/modelcoverageHTML
test-results-html: test-results/resultsHTML
select-by-folder: sample
strict: true
use-parallel: true
output-detail: Detailed
logging-level: Detailed
- name: Verify artifacts generation
run: |
(test -f test-results/simulinktest.mldatx) || (echo "File simulinktest.mldatx does not exist" && exit 1)
(test -f test-results/modelcoverage.xml) || (echo "File modelcoverage.xml does not exist" && exit 1)
(test -f test-results/pdf-results.pdf) || (echo "File pdf-results.pdf does not exist" && exit 1)
(test -f test-results/results.xml) || (echo "File results.xml does not exist" && exit 1)
(test -f test-results/coverage.xml) || (echo "File coverage.xml does not exist" && exit 1)
(test -d test-results/coverageHTML) || (echo "Directory coverageHTML does not exist" && exit 1)
(test -f test-results/coverageHTML/*.html) || (echo "No HTML file found" && exit 1)
(test -d test-results/modelcoverageHTML) || (echo "Directory modelcoverageHTML does not exist" && exit 1)
(test -f test-results/modelcoverageHTML/*.html) || (echo "No HTML file found" && exit 1)
(test -d test-results/resultsHTML) || (echo "Directory resultsHTML does not exist" && exit 1)
(test -f test-results/resultsHTML/*.html) || (echo "No HTML file found" && exit 1)
grep -q "runner.addPlugin(FailOnWarningsPlugin())" console.log
grep -q "runInParallel" console.log
grep -q "'OutputDetail', 3" console.log
grep -q "'LoggingLevel', 3" console.log
shell: bash
- name: Verify workflow command is added
run: |
grep "::group::TheTruth" output.log
shell: bash
run-tests-for-coverage-summary:
name: Test coverage summary view
needs: bat
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v8
with:
name: built-action
- name: Perform 'setup-matlab' without MATLAB Test
uses: matlab-actions/setup-matlab@v3
- name: Run MATLAB Tests without MATLAB Test # Test Case 1: Without MATLAB Test, no view is shown
uses: ./
with:
source-folder: sample
code-coverage-metric-level: mcdc
- name: Perform 'setup-matlab' with MATLAB Test
uses: matlab-actions/setup-matlab@v3
with:
products: |
MATLAB_Test
- name: Run MATLAB Tests with other options # Test Case 2: With MATLAB Test, and other code-coverage options, no view is shown.
uses: ./
with:
model-coverage-cobertura: test-results/modelcoverage.xml
test-results-pdf: test-results/pdf-results.pdf
test-results-junit: test-results/results.xml
code-coverage-cobertura: test-results/coverage.xml
code-coverage-html: test-results/coverageHTML
code-coverage-metric-level: mcdc
model-coverage-html: test-results/modelcoverageHTML
test-results-html: test-results/resultsHTML
select-by-folder: sample
strict: true
use-parallel: true
output-detail: Detailed
logging-level: Detailed
- name: Run MATLAB Tests # Test Case 3: With MATLAB Test, and only code-coverage-metric-level option, view is shown.
uses: ./
with:
source-folder: sample
code-coverage-metric-level: mcdc