name: Test on: push: {branches: main} pull_request: {branches: main} repository_dispatch: workflow_dispatch: jobs: unit_test: runs-on: ubuntu-latest name: Unit tests steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 with: {node-version: '12'} - run: npm ci - run: npm test integration_test: runs-on: ubuntu-latest name: OTP ${{matrix.pair.otp-version}} / Elixir ${{matrix.pair.elixir-version}} strategy: matrix: pair: # Full Versions - otp-version: '22.0' elixir-version: '1.9.1' # Semver ranges - otp-version: '21.x' elixir-version: '<1.9.1' # Branches - otp-version: '22.0' elixir-version: master # Pre-releases - otp-version: '23.0' elixir-version: '1.11.0-rc.0' steps: - uses: actions/checkout@v2 - name: Use actions/setup-elixir id: setup-elixir uses: ./ with: otp-version: ${{matrix.pair.otp-version}} elixir-version: ${{matrix.pair.elixir-version}} - name: Output runtime versions run: echo "Elixir ${{steps.setup-elixir.outputs.elixir-version}} / OTP ${{steps.setup-elixir.outputs.otp-version}}" - name: Run Mix project tests run: |- cd test-project mix deps.get mix test