luizcarvalho/wetweet

View on GitHub
.github/workflows/test.yml

Summary

Maintainability
Test Coverage
name: test

on:
  push:
    branches:
      - main
  pull_request:
      branches:
      - main

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Install Ruby (3)
      uses: ruby/setup-ruby@477b21f02be01bcb8030d50f37cfec92bfa615b6
      with:
        ruby-version: 3.0
        bundler-cache: true # runs 'bundle install' and caches installed gems automatically

    - name: Export credential
      run: |
        echo -n ${{secrets.TEST_KEY}} > config/credentials/test.key
        echo -n ${{secrets.TEST_CREDENTIALS}} > config/credentials/test.yml.enc

    - name: Setup Code Climate test-reporter
      run: |
        curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
        chmod +x ./cc-test-reporter
        ./cc-test-reporter before-build

    - name: Install Gems
      run: |
        gem install bundler
        bundle install --jobs 4 --retry 3
    - name: Run tests
      run: |
        bundle exec rspec
    - name: Publish code coverage
      run: |
        export GIT_BRANCH="${GITHUB_REF/refs\/heads\//}"
        ./cc-test-reporter after-build -r ${{secrets.CC_TEST_REPORTER_ID}}