mirror of
https://github.com/actions/node-versions.git
synced 2025-01-10 18:15:21 +00:00
Implementing Runner-Specific Node.js Tests (#178)
* Update Node.Tests.ps1 * Update Node.Tests.ps1 * Update Node.Tests.ps1 --------- Co-authored-by: aparnajyothi-y <147696841+aparnajyothi-y@users.noreply.github.com>
This commit is contained in:
parent
3a7a3835dd
commit
c8cf9cb4b5
@ -1,20 +1,23 @@
|
|||||||
Import-Module (Join-Path $PSScriptRoot "../helpers/pester-extensions.psm1")
|
Import-Module (Join-Path $PSScriptRoot "../helpers/pester-extensions.psm1")
|
||||||
|
|
||||||
BeforeAll {
|
|
||||||
function Get-UseNodeLogs {
|
|
||||||
# GitHub Windows images don't have `HOME` variable
|
|
||||||
$homeDir = $env:HOME ?? $env:HOMEDRIVE
|
|
||||||
$logsFolderPath = Join-Path -Path $homeDir -ChildPath "runners/*/_diag/pages" -Resolve
|
|
||||||
|
|
||||||
$useNodeLogFile = Get-ChildItem -Path $logsFolderPath | Where-Object {
|
|
||||||
$logContent = Get-Content $_.Fullname -Raw
|
|
||||||
return $logContent -match "setup-node@v"
|
|
||||||
} | Select-Object -First 1
|
|
||||||
return $useNodeLogFile.Fullname
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Describe "Node.js" {
|
Describe "Node.js" {
|
||||||
|
|
||||||
|
BeforeAll {
|
||||||
|
function Get-UseNodeLogs {
|
||||||
|
# GitHub Windows images don't have `HOME` variable
|
||||||
|
$homeDir = $env:HOME ?? $env:HOMEDRIVE
|
||||||
|
$logsFolderPath = Join-Path -Path $homeDir -ChildPath "runners/*/_diag/pages" -Resolve
|
||||||
|
|
||||||
|
$useNodeLogFile = Get-ChildItem -Path $logsFolderPath | Where-Object {
|
||||||
|
$logContent = Get-Content $_.Fullname -Raw
|
||||||
|
return $logContent -match "setup-node@v"
|
||||||
|
} | Select-Object -First 1
|
||||||
|
return $useNodeLogFile.Fullname
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
It "is available" {
|
It "is available" {
|
||||||
"node --version" | Should -ReturnZeroExitCode
|
"node --version" | Should -ReturnZeroExitCode
|
||||||
}
|
}
|
||||||
@ -34,15 +37,25 @@ Describe "Node.js" {
|
|||||||
$nodePath.startsWith($expectedPath) | Should -BeTrue -Because "'$nodePath' is not started with '$expectedPath'"
|
$nodePath.startsWith($expectedPath) | Should -BeTrue -Because "'$nodePath' is not started with '$expectedPath'"
|
||||||
}
|
}
|
||||||
|
|
||||||
It "cached version is used without downloading" {
|
It "cached version is used without downloading" {
|
||||||
# Analyze output of previous steps to check if Node.js was consumed from cache or downloaded
|
|
||||||
$useNodeLogFile = Get-UseNodeLogs
|
|
||||||
$useNodeLogFile | Should -Exist
|
|
||||||
$useNodeLogContent = Get-Content $useNodeLogFile -Raw
|
|
||||||
$useNodeLogContent | Should -Match "Found in cache"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
if ($env:RUNNER_TYPE -eq "self-hosted") {
|
||||||
|
# Get the installed version of Node.js
|
||||||
|
$nodeVersion = Invoke-Expression "node --version"
|
||||||
|
# Check if Node.js is installed
|
||||||
|
$nodeVersion | Should -Not -BeNullOrEmpty
|
||||||
|
# Check if the installed version of Node.js is the expected version
|
||||||
|
$nodeVersion | Should -Match $env:VERSION
|
||||||
|
}else {
|
||||||
|
# Analyze output of previous steps to check if Node.js was consumed from cache or downloaded
|
||||||
|
$useNodeLogFile = Get-UseNodeLogs
|
||||||
|
$useNodeLogFile | Should -Exist
|
||||||
|
$useNodeLogContent = Get-Content $useNodeLogFile -Raw
|
||||||
|
$useNodeLogContent | Should -Match "Found in cache"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
It "Run simple code" {
|
It "Run simple code" {
|
||||||
"node ./simple-test.js" | Should -ReturnZeroExitCode
|
"node ./simple-test.js" | Should -ReturnZeroExitCode
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user