name: Run tests
on: [push, pull_request]

jobs:

  test:
    name: Test repo
    runs-on: ubuntu-latest
    steps:

    - name: Set up Go 1.13
      uses: actions/setup-go@v1
      with:
        go-version: 1.13
      id: go

    - name: Check out code into the Go module directory
      uses: actions/checkout@v2

    - name: Get dependencies
      run: |
        go get -v -t -d ./...

    - name: Run tests
      id: tests
      env:
        IN_TRAVIS_CI: yes
      run: go test -v ./...
  
    - name: Notify of test failure
      if: failure()
      uses: rtCamp/action-slack-notify@v2.0.0
      env:
        SLACK_CHANNEL: build
        SLACK_COLOR: '#BF280A'
        SLACK_ICON: https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png
        SLACK_TITLE: Tests Failed
        SLACK_USERNAME: GitHub Actions
        SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
        
    - name: Notify of test success
      if: success()
      uses: rtCamp/action-slack-notify@v2.0.0
      env:
        SLACK_CHANNEL: build
        SLACK_COLOR: '#1FAD2B'
        SLACK_ICON: https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png
        SLACK_TITLE: Tests Passed
        SLACK_USERNAME: GitHub Actions
        SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}

