name: Build with Tests

on: 
  pull_request:
    branches:
      - '**'
  push:
    branches:
      - 'main'

jobs:
  windows-build-and-run:
    runs-on: windows-2022

    env:
      IsRunningOnGitHubActions: 'true'

    steps:  
    - uses: actions/checkout@v4

    - uses: actions/setup-dotnet@v3
      with:
       dotnet-version: |
         7.0.x
         8.0.x
              
    - name: 'Build Unit Tests'
      run: |
        dotnet build './test/WireMock.Net.Tests/WireMock.Net.Tests.csproj' -c Release --framework net7.0

    - name: 'Run Unit Tests'
      run: |
        dotnet test './test/WireMock.Net.Tests/WireMock.Net.Tests.csproj' -c Release --framework net7.0

  linux-build-and-run:
    runs-on: ubuntu-latest

    env:
        IsRunningOnGitHubActions: 'true'

    steps:  
    - uses: actions/checkout@v4

    - uses: actions/setup-dotnet@v3
      with:
        dotnet-version: |
            7.0.x
            8.0.x
                
    - name: 'Build Unit Tests'
      run: |
        dotnet build './test/WireMock.Net.Tests/WireMock.Net.Tests.csproj' -c Release --framework net7.0

    - name: 'Run Unit Tests'
      run: |
        dotnet test './test/WireMock.Net.Tests/WireMock.Net.Tests.csproj' -c Release --framework net7.0