mirror of
https://github.com/aphrody-labs/PowerShell.git
synced 2026-10-17 04:36:39 +00:00
Run FullCLR sanitary tests in AppVeyor
This change brings a very minimal set of tests and make build fail, if we cannot load some PS assamblies on FullCLR We should increase test coverage for FullCLR in future.
This commit is contained in:
1 parent
1268b76dcd
commit
2096bca2b8
2 files changed
+46
-1
No files matched your search
+14
-1
@@ -25,10 +25,23 @@ build_script:
|
||||
|
||||
test_script:
|
||||
- ps: |
|
||||
# CoreCLR
|
||||
$testResultsFile = ".\TestsResults.xml"
|
||||
.\bin\powershell.exe --noprofile -c "Invoke-Pester test/powershell -OutputFormat NUnitXml -OutputFile $testResultsFile"
|
||||
(New-Object 'System.Net.WebClient').UploadFile("https://ci.appveyor.com/api/testresults/nunit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path $testResultsFile))
|
||||
|
||||
# For now we don't fail the build if these tests failed
|
||||
#
|
||||
# FullCLR
|
||||
Import-Module .\PowerShellGithubDev.psm1
|
||||
$testResultsFile = ".\TestsResults.FullCLR.xml"
|
||||
Start-DevPSGithub -binDir $pwd\binFull -NoNewWindow -ArgumentList '-command', 'Import-Module .\test\Pester; Invoke-Pester test/fullCLR -OutputFormat NUnitXml -OutputFile $testResultsFile'
|
||||
(New-Object 'System.Net.WebClient').UploadFile("https://ci.appveyor.com/api/testresults/nunit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path $testResultsFile))
|
||||
# we want to fail the build, if these tests failed
|
||||
$x = [xml](cat -raw .\TestsResults.FullCLR.xml)
|
||||
if ([int]$x.'test-results'.failures -gt 0)
|
||||
{
|
||||
throw "$($x.'test-results'.failures) tests in test/fullCLR failed"
|
||||
}
|
||||
|
||||
deploy_script:
|
||||
- ps: |
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
Describe 'PowerShellGithubDev.psm1 and powershell.exe' {
|
||||
Context '$env:DEVPATH assemblies loading' {
|
||||
It 'has $env:DEVPATH set' {
|
||||
$env:DEVPATH | Should Not Be $null
|
||||
}
|
||||
|
||||
It 'loads System.Management.Automation.dll' {
|
||||
[psobject].Assembly.Location | Should Be (
|
||||
Join-Path $env:DEVPATH System.Management.Automation.dll)
|
||||
}
|
||||
|
||||
It 'loads Microsoft.PowerShell.Commands.Management.dll' {
|
||||
[Microsoft.PowerShell.Commands.GetChildItemCommand].Assembly.Location | Should Be (
|
||||
Join-Path $env:DEVPATH Microsoft.PowerShell.Commands.Management.dll)
|
||||
}
|
||||
|
||||
It 'loads Microsoft.PowerShell.Commands.Utility.dll' {
|
||||
[Microsoft.PowerShell.Commands.UtilityResources].Assembly.Location | Should Be (
|
||||
Join-Path $env:DEVPATH Microsoft.PowerShell.Commands.Utility.dll)
|
||||
}
|
||||
|
||||
It 'loads Microsoft.PowerShell.ConsoleHost.dll' {
|
||||
[Microsoft.PowerShell.ConsoleShell].Assembly.Location | Should Be (
|
||||
Join-Path $env:DEVPATH Microsoft.PowerShell.ConsoleHost.dll)
|
||||
}
|
||||
|
||||
It 'loads Microsoft.PowerShell.Security.dll' {
|
||||
[Microsoft.PowerShell.Commands.SecurityDescriptorCommandsBase].Assembly.Location | Should Be (
|
||||
Join-Path $env:DEVPATH Microsoft.PowerShell.Security.dll)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user