test.yml (1376B)
1 name: Run test suite 2 on: [push, pull_request] 3 4 jobs: 5 test: 6 runs-on: ubuntu-latest 7 strategy: 8 matrix: 9 emacs_version: 10 - '27.1' 11 - '28.1' 12 - '29.1' 13 14 steps: 15 - uses: purcell/setup-emacs@master 16 with: 17 version: ${{ matrix.emacs_version }} 18 - uses: conao3/setup-cask@master 19 20 - uses: actions/checkout@v2 21 22 - name: Install dependencies with Cask 23 run: cask install 24 25 - name: Download Emacs source code 26 run: "./download_emacs_src.sh" 27 28 - name: Run tests 29 env: 30 COVERALLS_FLAG_NAME: Emacs ${{ matrix.emacs_version }} 31 COVERALLS_PARALLEL: 1 32 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 33 # Run tests under both interpreted and compiled elisp. 34 run: cask exec ert-runner 35 - name: Run tests (compiled elisp) 36 env: 37 COVERALLS_FLAG_NAME: Emacs ${{ matrix.emacs_version }} compiled 38 COVERALLS_PARALLEL: 1 39 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 40 # Run tests under both interpreted and compiled elisp. 41 run: | 42 cask build 43 cask exec ert-runner 44 45 finalize: 46 runs-on: ubuntu-latest 47 if: always() 48 needs: test 49 steps: 50 - run: curl "https://coveralls.io/webhook?repo_name=$GITHUB_REPOSITORY&repo_token=${{ secrets.GITHUB_TOKEN }}" -d "payload[build_num]=$GITHUB_RUN_NUMBER&payload[status]=done"