diff --git a/.github/workflows/elixir.yml b/.github/workflows/elixir.yml index c6617b0..28d2fdf 100644 --- a/.github/workflows/elixir.yml +++ b/.github/workflows/elixir.yml @@ -14,18 +14,28 @@ jobs: steps: - uses: actions/checkout@v2 + - name: Set up Elixir uses: erlef/setup-elixir@885971a72ed1f9240973bd92ab57af8c1aa68f24 with: elixir-version: '1.10.3' otp-version: '22.3' + - name: Restore dependencies cache uses: actions/cache@v2 with: path: deps key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }} restore-keys: ${{ runner.os }}-mix- + + - name: Start Redis + uses: supercharge/redis-github-action@1.2.0 + - name: Install dependencies run: mix deps.get + + - name: Initialize services + run: FARSIDE_TEST=1 mix run update.exs + - name: Run tests run: mix test diff --git a/update.exs b/update.exs index 4e95392..d89ffa8 100644 --- a/update.exs +++ b/update.exs @@ -19,12 +19,17 @@ defmodule Instances do end def request(url) do - case HTTPoison.get(url) do - {:ok, %HTTPoison.Response{status_code: 200}} -> - # TODO: Add validation of results, not just status code + cond do + System.get_env("FARSIDE_TEST") -> :good - _ -> - :bad + true -> + case HTTPoison.get(url) do + {:ok, %HTTPoison.Response{status_code: 200}} -> + # TODO: Add validation of results, not just status code + :good + _ -> + :bad + end end end