diff --git a/tests/Go.Tests.ps1 b/tests/Go.Tests.ps1 index 5badc6f..cf8196b 100644 --- a/tests/Go.Tests.ps1 +++ b/tests/Go.Tests.ps1 @@ -1,7 +1,9 @@ Import-Module (Join-Path $PSScriptRoot "../helpers/pester-extensions.psm1") Import-Module (Join-Path $PSScriptRoot "../helpers/common-helpers.psm1") -BeforeAll { +Describe "Go" { + + BeforeAll { Set-Location -Path "source" $sourceLocation = Get-Location @@ -18,7 +20,6 @@ BeforeAll { } } -Describe "Go" { It "is available" { "go version" | Should -ReturnZeroExitCode } @@ -44,12 +45,25 @@ Describe "Go" { } It "cached version is used without downloading" { + + if ($env:RUNNER_TYPE -eq "self-hosted") { + # Get the installed version of Go + $goVersion = Invoke-Expression "go version" + # Check if Go is installed + $goVersion | Should -Not -BeNullOrEmpty + # Check if the installed version of Go is the expected version + $installedVersion = $goVersion -split " " | Select-Object -Index 2 + $installedVersion = $installedVersion -replace "go", "" -replace "v", "" + $expectedVersion = $env:VERSION -replace ".0", "" + $installedVersion | Should -BeLike "$expectedVersion*" + }else { # Analyze output of previous steps to check if Go was consumed from cache or downloaded $useGoLogFile = Get-UseGoLogs $useGoLogFile | Should -Exist $useGoLogContent = Get-Content $useGoLogFile -Raw $useGoLogContent | Should -Match "Found in cache" - } + } +} It "Run simple code" { @@ -81,4 +95,4 @@ Describe "Go" { if ($IsWindows) { $compiledPackageName += ".exe" } (Resolve-Path "./$compiledPackageName").Path | Should -ReturnZeroExitCode } -} \ No newline at end of file +} diff --git a/versions-manifest.json b/versions-manifest.json index 99221b8..78773cb 100644 --- a/versions-manifest.json +++ b/versions-manifest.json @@ -1,4 +1,47 @@ [ + { + "version": "1.22.5", + "stable": true, + "release_url": "https://github.com/actions/go-versions/releases/tag/1.22.5-9771837482", + "files": [ + { + "filename": "go-1.22.5-darwin-arm64.tar.gz", + "arch": "arm64", + "platform": "darwin", + "download_url": "https://github.com/actions/go-versions/releases/download/1.22.5-9771837482/go-1.22.5-darwin-arm64.tar.gz" + }, + { + "filename": "go-1.22.5-darwin-x64.tar.gz", + "arch": "x64", + "platform": "darwin", + "download_url": "https://github.com/actions/go-versions/releases/download/1.22.5-9771837482/go-1.22.5-darwin-x64.tar.gz" + }, + { + "filename": "go-1.22.5-linux-arm64.tar.gz", + "arch": "arm64", + "platform": "linux", + "download_url": "https://github.com/actions/go-versions/releases/download/1.22.5-9771837482/go-1.22.5-linux-arm64.tar.gz" + }, + { + "filename": "go-1.22.5-linux-x64.tar.gz", + "arch": "x64", + "platform": "linux", + "download_url": "https://github.com/actions/go-versions/releases/download/1.22.5-9771837482/go-1.22.5-linux-x64.tar.gz" + }, + { + "filename": "go-1.22.5-win32-arm64.zip", + "arch": "arm64", + "platform": "win32", + "download_url": "https://github.com/actions/go-versions/releases/download/1.22.5-9771837482/go-1.22.5-win32-arm64.zip" + }, + { + "filename": "go-1.22.5-win32-x64.zip", + "arch": "x64", + "platform": "win32", + "download_url": "https://github.com/actions/go-versions/releases/download/1.22.5-9771837482/go-1.22.5-win32-x64.zip" + } + ] + }, { "version": "1.22.4", "stable": true, @@ -190,6 +233,49 @@ } ] }, + { + "version": "1.21.12", + "stable": true, + "release_url": "https://github.com/actions/go-versions/releases/tag/1.21.12-9771838613", + "files": [ + { + "filename": "go-1.21.12-darwin-arm64.tar.gz", + "arch": "arm64", + "platform": "darwin", + "download_url": "https://github.com/actions/go-versions/releases/download/1.21.12-9771838613/go-1.21.12-darwin-arm64.tar.gz" + }, + { + "filename": "go-1.21.12-darwin-x64.tar.gz", + "arch": "x64", + "platform": "darwin", + "download_url": "https://github.com/actions/go-versions/releases/download/1.21.12-9771838613/go-1.21.12-darwin-x64.tar.gz" + }, + { + "filename": "go-1.21.12-linux-arm64.tar.gz", + "arch": "arm64", + "platform": "linux", + "download_url": "https://github.com/actions/go-versions/releases/download/1.21.12-9771838613/go-1.21.12-linux-arm64.tar.gz" + }, + { + "filename": "go-1.21.12-linux-x64.tar.gz", + "arch": "x64", + "platform": "linux", + "download_url": "https://github.com/actions/go-versions/releases/download/1.21.12-9771838613/go-1.21.12-linux-x64.tar.gz" + }, + { + "filename": "go-1.21.12-win32-arm64.zip", + "arch": "arm64", + "platform": "win32", + "download_url": "https://github.com/actions/go-versions/releases/download/1.21.12-9771838613/go-1.21.12-win32-arm64.zip" + }, + { + "filename": "go-1.21.12-win32-x64.zip", + "arch": "x64", + "platform": "win32", + "download_url": "https://github.com/actions/go-versions/releases/download/1.21.12-9771838613/go-1.21.12-win32-x64.zip" + } + ] + }, { "version": "1.21.11", "stable": true,