mirror of
https://github.com/actions/runner-images.git
synced 2025-12-11 11:37:00 +00:00
[ubuntu] Pester tests for dotnet sdk, cmd tools and codeql (#2335)
* dotnet cmd codeql tests * fixed dotnet tests, added codeql to toolset * changed codeql version to wildcard * removed unused import and a test call * tmp * lowercase file name * removed sourcing invoke-tests Co-authored-by: Leonid Lapshin <originalnoe-nazvanie@yandex.ru>
This commit is contained in:
@@ -12,11 +12,4 @@ for package in $common_packages $cmd_packages; do
|
||||
apt-get install -y --no-install-recommends $package
|
||||
done
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||
for cmd in $cmd_packages; do
|
||||
if ! command -v $cmd; then
|
||||
echo "$cmd was not installed"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
invoke_tests "Apt"
|
||||
@@ -23,6 +23,3 @@ touch "$extraction_directory/pinned-version"
|
||||
|
||||
# Touch a file to indicate to the toolcache that setting up CodeQL is complete.
|
||||
touch "$extraction_directory.complete"
|
||||
|
||||
# Test that the tool has been extracted successfully.
|
||||
"$AGENT_TOOLSDIRECTORY/CodeQL/$codeql_bundle_version/x64/codeql/codeql" version
|
||||
|
||||
@@ -94,3 +94,5 @@ setEtcEnvironmentVariable DOTNET_NOLOGO 1
|
||||
setEtcEnvironmentVariable DOTNET_MULTILEVEL_LOOKUP 0
|
||||
prependEtcEnvironmentPath /home/runner/.dotnet/tools
|
||||
echo 'export PATH="$PATH:$HOME/.dotnet/tools"' | tee -a /etc/skel/.bashrc
|
||||
|
||||
invoke_tests "DotnetSDK"
|
||||
14
images/linux/scripts/tests/Apt.Tests.ps1
Normal file
14
images/linux/scripts/tests/Apt.Tests.ps1
Normal file
@@ -0,0 +1,14 @@
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
|
||||
$cmd = (Get-ToolsetContent).apt.cmd_packages
|
||||
|
||||
Describe "Apt" {
|
||||
|
||||
$testCases = $cmd | ForEach-Object {
|
||||
@{ toolName = $_ }
|
||||
}
|
||||
|
||||
It "<toolName> is available" -TestCases $testCases {
|
||||
(Get-Command -Name $toolName).CommandType | Should -BeExactly "Application"
|
||||
}
|
||||
}
|
||||
31
images/linux/scripts/tests/DotnetSDK.Tests.ps1
Normal file
31
images/linux/scripts/tests/DotnetSDK.Tests.ps1
Normal file
@@ -0,0 +1,31 @@
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
|
||||
Describe "Dotnet" {
|
||||
|
||||
BeforeAll {
|
||||
$dotnetSDKs = dotnet --list-sdks | ConvertTo-Json
|
||||
$dotnetRuntimes = dotnet --list-runtimes | ConvertTo-Json
|
||||
}
|
||||
|
||||
$dotnetVersions = (Get-ToolsetContent).dotnet.versions
|
||||
|
||||
Context "Default" {
|
||||
It "Default Dotnet SDK is available" {
|
||||
"dotnet --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($version in $dotnetVersions) {
|
||||
Context "Dotnet $version" {
|
||||
$dotnet = @{ dotnetVersion = $version }
|
||||
|
||||
It "SDK $version is available" -TestCases $dotnet {
|
||||
$dotnetSDKs | Should -Match "$dotnetVersion.[1-9]*"
|
||||
}
|
||||
|
||||
It "Runtime $version is available" -TestCases $dotnet {
|
||||
$dotnetRuntimes | Should -Match "$dotnetVersion.[1-9]*"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -22,6 +22,10 @@ Describe "Toolset" {
|
||||
tools = @("bin/ruby")
|
||||
command = "--version"
|
||||
}
|
||||
CodeQL = @{
|
||||
tools = @("codeql/codeql")
|
||||
command = "version"
|
||||
}
|
||||
}
|
||||
|
||||
foreach($tool in $tools) {
|
||||
@@ -43,7 +47,7 @@ Describe "Toolset" {
|
||||
|
||||
$toolExecs = $toolsExecutables[$toolName]
|
||||
$foundVersion = Get-Item $expectedVersionPath `
|
||||
| Sort-Object -Property {[version]$_.name} -Descending `
|
||||
| Sort-Object -Property {[SemVer]$_.name} -Descending `
|
||||
| Select-Object -First 1
|
||||
$foundVersionPath = Join-Path $foundVersion $tool.arch
|
||||
|
||||
|
||||
@@ -69,6 +69,14 @@
|
||||
"2.7.*",
|
||||
"3.0.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "CodeQL",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"android": {
|
||||
|
||||
@@ -69,6 +69,14 @@
|
||||
"2.7.*",
|
||||
"3.0.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "CodeQL",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"android": {
|
||||
|
||||
@@ -57,6 +57,14 @@
|
||||
"2.7.*",
|
||||
"3.0.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "CodeQL",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"android": {
|
||||
|
||||
Reference in New Issue
Block a user