name: build

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

jobs:
  test:
    name: Build and test
    runs-on: ubuntu-latest
    strategy:
      matrix:
        toolchain:
          - nightly

    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Setup Rust
        run: |
          rustup update ${{ matrix.toolchain }}
          rustup default ${{ matrix.toolchain }}

      - name: Build
        run: |
          cargo build --verbose
          cargo test --verbose
