From 5f570676c249d99788f868b377a4e76fc46b28c6 Mon Sep 17 00:00:00 2001 From: IvanZosimov Date: Tue, 11 Apr 2023 15:53:11 +0200 Subject: [PATCH] Add unit and e2e tests --- .github/workflows/e2e-tests.yml | 24 ++++++++++++++++++++++++ __tests__/installer.test.ts | 5 +++-- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 1be4173..36fd1ef 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -165,6 +165,30 @@ jobs: shell: pwsh run: __tests__/verify-dotnet.ps1 3.1 2.2 + test-setup-with-ABCxx-syntax: + runs-on: ${{ matrix.operating-system }} + strategy: + fail-fast: false + matrix: + operating-system: [ubuntu-latest, windows-latest, macOS-latest] + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Clear toolcache + shell: pwsh + run: __tests__/clear-toolcache.ps1 ${{ runner.os }} + - name: Setup dotnet '3.1.1xx' + uses: ./ + with: + dotnet-version: '3.1.1xx' + - name: Setup dotnet '6.0.3xx' + uses: ./ + with: + dotnet-version: '6.0.3xx' + - name: Verify dotnet + shell: pwsh + run: __tests__/verify-dotnet.ps1 3.1.1 6.0.3 + test-setup-global-json-specified-and-version: runs-on: ${{ matrix.operating-system }} strategy: diff --git a/__tests__/installer.test.ts b/__tests__/installer.test.ts index 1a7e024..6c20afe 100644 --- a/__tests__/installer.test.ts +++ b/__tests__/installer.test.ts @@ -201,6 +201,7 @@ describe('DotnetVersionResolver tests', () => { '.2.3', '.2.x', '*.', + '*', '1.2.', '1.2.-abc', 'a.b', @@ -221,7 +222,7 @@ describe('DotnetVersionResolver tests', () => { } ); - each(['3.1', '3.1.x', '3.1.*', '3.1.X']).test( + each(['3.1', '3.1.x', '3.1.*', '3.1.X', '3.1.1xx']).test( "if version: '%s' that can be resolved to 'channel' option is supplied, it should set type to 'channel' in version object", async version => { const dotnetVersionResolver = new installer.DotnetVersionResolver( @@ -233,7 +234,7 @@ describe('DotnetVersionResolver tests', () => { } ); - each(['6.0', '6.0.x', '6.0.*', '6.0.X']).test( + each(['6.0', '6.0.x', '6.0.*', '6.0.X', '6.0.1xx']).test( "if version: '%s' that can be resolved to 'channel' option is supplied and its major tag is >= 6, it should set type to 'channel' and qualityFlag to 'true' in version object", async version => { const dotnetVersionResolver = new installer.DotnetVersionResolver(