name: Test Cosmos

on:
  pull_request:
    branches:
      - main
      - feature/*
      - release/*

permissions: {}

jobs:
  build:
    runs-on: windows-latest

    steps:
      - name: Start Cosmos Emulator
        run: |
          Import-Module "$env:ProgramFiles\Azure Cosmos DB Emulator\PSModules\Microsoft.Azure.CosmosDB.Emulator"
          Start-CosmosDbEmulator -Timeout 360

      - name: Checkout
        uses: actions/checkout@v2

      - name: Restore
        run: restore.cmd
        shell: cmd

      - name: Build
        run: build.cmd /p:Projects=${{ github.workspace }}\test\EFCore.Cosmos.FunctionalTests\EFCore.Cosmos.FunctionalTests.csproj
        shell: cmd

      - name: Test on Cosmos
        run: test.cmd /p:Projects=${{ github.workspace }}\test\EFCore.Cosmos.FunctionalTests\EFCore.Cosmos.FunctionalTests.csproj
        shell: cmd

      - name: Publish Test Results
        uses: actions/upload-artifact@v3
        if: always()
        with:
          name: test-results
          path: artifacts/log/Debug/*