|  |  |  | @ -6,23 +6,28 @@ Pester extension that allows to run command and validate exit code | 
		
	
		
			
				|  |  |  |  | #> | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | function Get-CommandResult { | 
		
	
		
			
				|  |  |  |  |     param ( | 
		
	
		
			
				|  |  |  |  |     Param ( | 
		
	
		
			
				|  |  |  |  |         [Parameter(Mandatory=$true)] | 
		
	
		
			
				|  |  |  |  |         [string] $Command, | 
		
	
		
			
				|  |  |  |  |         [switch] $Multiline | 
		
	
		
			
				|  |  |  |  |     ) | 
		
	
		
			
				|  |  |  |  |     # Bash trick to suppress and show error output because some commands write to stderr (for example, "python --version") | 
		
	
		
			
				|  |  |  |  |     $stdout = & bash -c "$Command 2>&1" | 
		
	
		
			
				|  |  |  |  |     # CMD trick to suppress and show error output because some commands write to stderr (for example, "python --version") | 
		
	
		
			
				|  |  |  |  |     If ($IsWindows) { | 
		
	
		
			
				|  |  |  |  |         [string[]]$output = & $env:comspec /c "$Command 2>&1" | 
		
	
		
			
				|  |  |  |  |     } else { | 
		
	
		
			
				|  |  |  |  |         $output = & bash -c "$Command 2>&1" | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  |     $exitCode = $LASTEXITCODE | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     return @{ | 
		
	
		
			
				|  |  |  |  |         Output = If ($Multiline -eq $true) { $stdout } else { [string]$stdout } | 
		
	
		
			
				|  |  |  |  |         Output = If ($Multiline -eq $true) { $output } else { [string]$output } | 
		
	
		
			
				|  |  |  |  |         ExitCode = $exitCode | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | function ShouldReturnZeroExitCode { | 
		
	
		
			
				|  |  |  |  |     Param( | 
		
	
		
			
				|  |  |  |  |         [String] $ActualValue, | 
		
	
		
			
				|  |  |  |  |         [string] $ActualValue, | 
		
	
		
			
				|  |  |  |  |         [switch] $Negate, | 
		
	
		
			
				|  |  |  |  |         [string] $Because # This parameter is unused by we need it to match Pester asserts signature | 
		
	
		
			
				|  |  |  |  |     ) | 
		
	
	
		
			
				
					|  |  |  | 
 |