ContinuousIntegration.ps1
$PSVersionTable $modules = @("Pester", "PSScriptAnalyzer") foreach ($module in $modules) { Write-Host "Installing $module" -ForegroundColor Cyan Install-Module $module -Force -SkipPublisherCheck Import-Module $module -Force -PassThru } $pesterResults = Invoke-Pester -Output Detailed -PassThru if (!$pesterResults) { Throw "Tests failed" } else { if ($pesterResults.FailedCount -gt 0) { '[Progress] Pester Results Failed' $pesterResults.Failed | Out-String '[Progress] Pester Results FailedBlocks' $pesterResults.FailedBlocks | Out-String '[Progress] Pester Results FailedContainers' $pesterResults.FailedContainers | Out-String Throw "Tests failed" } } |