Run tests in CI #31
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [master] | |
| pull_request: | |
| branches: [master] | |
| jobs: | |
| build: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install ArrayFire | |
| run: brew install arrayfire | |
| - name: Cache ghcup | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.ghcup | |
| key: ${{ runner.os }}-ghcup-${{ hashFiles('.github/workflows/ci.yml') }} | |
| restore-keys: | | |
| ${{ runner.os }}-ghcup- | |
| - name: Set up GHC | |
| uses: haskell-actions/setup@v2 | |
| with: | |
| ghc-version: '9.8.4' | |
| cabal-version: 'latest' | |
| - name: Cache cabal store | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.cabal/store | |
| key: ${{ runner.os }}-cabal-${{ hashFiles('cabal.project', '*.cabal') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cabal- | |
| - name: Configure | |
| run: cabal configure --flags="disable-default-paths disable-build-tool-depends" --extra-include-dirs=$(brew --prefix arrayfire)/include --extra-lib-dirs=$(brew --prefix arrayfire)/lib | |
| - name: Build | |
| run: cabal build arrayfire | |
| - name: Test | |
| run: cabal install hspec-discover && cabal test | |