Skip to content

Add basic testing for the MIParser #107

Add basic testing for the MIParser

Add basic testing for the MIParser #107

Workflow file for this run

# This workflow runs on pushes - it is similar to what happens in PR
# workflow, but doesn't need to be split across multiple workflows
# as this one runs where there is sufficient permission to report
# results back
name: build-push
on: [push]
jobs:
Build-on-Ubuntu:
name: Build & Test on Ubuntu
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '14'
- name: Install GCC & GDB & other build essentials
run: |
sudo apt-get update
sudo apt-get -y install build-essential gcc g++ gdb gdbserver socat
gdb --version
gcc --version
gdbserver --version
- name: Enable ptrace so tests can attach to running processes, see attach.spec.ts
run: |
sudo sysctl kernel.yama.ptrace_scope=0
- name: Build
run: yarn
- name: Build Test Programs
run: make -C src/integration-tests/test-programs
- name: Test
run: yarn test-ci
- name: Log file artifacts
uses: actions/upload-artifact@v3
if: success() || failure()
with:
name: test-logs-ubuntu
path: test-logs/
- name: Publish Test Report
uses: mikepenz/action-junit-report@v3
if: success() || failure()
with:
commit: ${{github.event.workflow_run.head_sha}}
report_paths: 'test-reports/*.xml'
fail_on_failure: true
require_tests: true
check_name: Test Results on Ubuntu
- name: Verify no unexpected changes to source tree
run: git diff --exit-code
Build-on-Windows:
name: Build & Test on Windows
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '14'
- name: Install GCC & GDB & other build essentials
run: |
choco install mingw
gdb --version
gcc --version
gdbserver --version
make --version
- name: Build
run: yarn
- name: Build Test Programs
run: make -C src/integration-tests/test-programs
- name: Use special Mocha settings on Windows tests
run: |
Copy -path .mocharc-windows-ci.json -destination .mocharc.json -verbose
- name: Test
run: yarn test-ci
- name: Log file artifacts
uses: actions/upload-artifact@v3
if: success() || failure()
with:
name: test-logs-windows
path: test-logs/
- name: Publish Test Report
uses: mikepenz/action-junit-report@v3
if: success() || failure()
with:
commit: ${{github.event.workflow_run.head_sha}}
report_paths: 'test-reports/*.xml'
fail_on_failure: true
require_tests: true
check_name: Test Results on Windows