From 624f4e088c3fd86aff8f19e9466d4dfa75403ab6 Mon Sep 17 00:00:00 2001
From: dsame <dsame@github.com>
Date: Thu, 9 Nov 2023 11:44:22 +0100
Subject: [PATCH] Add e2e test

---
 .github/workflows/windos-fix.yml | 52 ++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)
 create mode 100644 .github/workflows/windos-fix.yml

diff --git a/.github/workflows/windos-fix.yml b/.github/workflows/windos-fix.yml
new file mode 100644
index 0000000..9645e50
--- /dev/null
+++ b/.github/workflows/windos-fix.yml
@@ -0,0 +1,52 @@
+name: Windows fix validation
+
+on:
+  pull_request:
+    paths-ignore:
+      - '**.md'
+  push:
+    branches:
+      - main
+      - releases/*
+    paths-ignore:
+      - '**.md'
+      -
+jobs:
+  setup-version:
+    runs-on: ${{ matrix.operating-system }}
+    strategy:
+      fail-fast: false
+      matrix:
+        operating-system: [windows-2019, windows-2020]
+        dotnet-version: ['2.1', '2.2', '3.0', '3.1', '5.0', '6.0', '7.0', '8.0']
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v3
+
+      - name: Clear toolcache
+        shell: pwsh
+        run: __tests__/clear-toolcache.ps1 ${{ runner.os }}
+
+      - name: Take note of the current time
+        run: Get-Date | Out-File -FilePath "timestamp.txt"
+
+      - name: Setup dotnet ${{ matrix.dotnet-version }}
+        uses: ./
+        with:
+          dotnet-version: ${{ matrix.dotnet-version }}
+
+      - name: Verify the action took less than 1 minute
+        run: |
+          $timestamp = Get-Content -Path "timestamp.txt"
+          $now = Get-Date
+          $diff = $now - $timestamp
+          if ($diff.TotalMinutes -gt 1) {
+              throw "The action took longer than 1 minute to run"
+          }
+
+      - name: Verify dotnet was installed on drive D
+        run: |
+          $dotnetPath = Get-ChildItem -Path "D:\Program Files\dotnet" -Directory -Name
+          if ($dotnetPath -eq $null) {
+              throw "dotnet was not installed on drive D"
+          }