Skip to content

MATLAB extension for VS Code - v1.3.0 #33

MATLAB extension for VS Code - v1.3.0

MATLAB extension for VS Code - v1.3.0 #33

# Run tests on a pull request after it has been labeled 'safe to test'
name: test-pull-request
# Controls when the workflow will run
on:
# Triggers the workflow on pull requests that contain the label 'safe to test'
pull_request_target:
types: [ labeled ]
permissions: {}
jobs:
test-smoke:
name: smoke-${{ matrix.version }}-${{ matrix.os }}
runs-on: ${{ matrix.os }}
if: contains(github.event.pull_request.labels.*.name, 'safe to test')
strategy:
fail-fast: false
matrix:
version: [R2021a, latest]
os: [windows-latest, ubuntu-latest, macos-13]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
ref: "refs/pull/${{ github.event.number }}/merge"
persist-credentials: false
- name: Verify Head
shell: bash
run: |
if [ "$(git ls-remote origin ${{ github.event.number }}/head | awk '{print $1}')" != "${{ github.event.pull_request.head.sha }}" ]; then
echo "HEAD does not match github.event.pull_request.head.sha"
exit 1
fi
- name: Set up MATLAB
uses: matlab-actions/setup-matlab@v2
with:
release: ${{ matrix.version }}
- name: Setup node
uses: actions/setup-node@v4
- name: npm clean install
run: npm ci
- name: Start Xvfb
run: /usr/bin/Xvfb :17 -screen 0 1024x768x24 > /dev/null 2>&1 & echo "Started xvfb"
shell: bash
if: ${{ success() && matrix.os == 'ubuntu-latest' }}
- name: Package vsix
run: npm run package
- name: npm install
run: npm install
- name: Run Smoke tests
run: npm run test-smoke
env:
MLM_WEB_LICENSE: true
MLM_WEB_ID: ${{secrets.MLM_WEB_ID}}
MLM_WEB_USER_CRED: ${{secrets.MLM_WEB_USER_CRED}}
DISPLAY: ":17.0"
- name: Run UI tests
run: npm run test-ui
env:
MLM_WEB_LICENSE: true
MLM_WEB_ID: ${{secrets.MLM_WEB_ID}}
MLM_WEB_USER_CRED: ${{secrets.MLM_WEB_USER_CRED}}
DISPLAY: ":17.0"