name: dotnet build and tests

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  build:

    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: fsharp

    steps:
    - uses: actions/checkout@v2
    - name: Setup .NET
      uses: actions/setup-dotnet@v1
      with:
        dotnet-version: 6.0.300
    - name: Setup node
      uses: actions/setup-node@v3
      with:
        node-version: 16.x
    - name: Restore dotnet dependencies
      run: dotnet restore
    - name: Build dotnet
      run: dotnet build -warnaserror --no-restore
    - name: Test dotnet
      run: dotnet test --no-build --verbosity normal
    - name: Restore node dependencies
      run: npm ci
    - name: Test node
      run: npm test

