Skip to content

Commit d8f7ad1

Browse files
committed
Add GitHub actions workflow for tests
1 parent ae998f3 commit d8f7ad1

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

.github/workflows/test.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Run test suite and linters
2+
on:
3+
push:
4+
5+
jobs:
6+
test:
7+
runs-on: ubuntu-latest
8+
9+
steps:
10+
- name: Checkout
11+
uses: actions/checkout@v2
12+
13+
- name: Setup elixir
14+
uses: erlef/setup-beam@v1
15+
with:
16+
otp-version: "24.2"
17+
elixir-version: "1.13"
18+
19+
- name: Set mix file hash
20+
id: set_vars
21+
run: |
22+
mix_hash="${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}"
23+
echo "::set-output name=mix_hash::$mix_hash"
24+
25+
- name: Cache deps
26+
uses: actions/cache@v2
27+
with:
28+
path: deps
29+
key: ${{ runner.os }}-mix-v2-${{ steps.set_vars.outputs.mix_hash }}
30+
restore-keys: |
31+
${{ runner.os }}-mix-
32+
33+
- name: Cache _build folder
34+
uses: actions/cache@v2
35+
with:
36+
path: _build
37+
key: ${{ runner.os }}-build-v2-${{ steps.set_vars.outputs.mix_hash }}
38+
restore-keys: |
39+
${{ runner.os }}-build-v2-
40+
41+
- name: Install Dependencies
42+
run: |
43+
mix deps.get
44+
45+
- name: Check format
46+
run: |
47+
mix format --check-formatted
48+
49+
- name: Run Dialyzer
50+
run: |
51+
mix dialyzer
52+
53+
- name: Run tests
54+
run: |
55+
mix test
56+

0 commit comments

Comments
 (0)