48 lines
No EOL
1.5 KiB
PowerShell
48 lines
No EOL
1.5 KiB
PowerShell
Describe "Tee-Object" {
|
|
|
|
Context "Validate Tee-Object is correctly forking output" {
|
|
|
|
$testfile = Join-Path -Path (Join-Path -Path $PSScriptRoot -ChildPath assets) -ChildPath testfile.txt
|
|
|
|
It "Should return the output to the screen and to the variable" {
|
|
$teefile = $testfile
|
|
echo teeobjecttest1 | Tee-Object -variable teeresults
|
|
$teeresults | Should Be "teeobjecttest1"
|
|
Remove-Item $teefile -ErrorAction SilentlyContinue
|
|
}
|
|
|
|
It "Should tee the output to a file" {
|
|
$teefile = $testfile
|
|
echo teeobjecttest3 | Tee-Object $teefile
|
|
Get-Content $teefile | Should Be "teeobjecttest3"
|
|
Remove-Item $teefile -ErrorAction SilentlyContinue
|
|
}
|
|
}
|
|
}
|
|
|
|
Describe "Tee-Object DRT Unit Tests" -Tags DRT {
|
|
BeforeAll {
|
|
$tempFile = Join-Path $TestDrive -ChildPath "TeeObjectTestsTempFile"
|
|
}
|
|
It "Positive File Test" {
|
|
$expected = "1", "2", "3"
|
|
$results = $expected | Tee-Object -FilePath $tempFile
|
|
$results.Length | Should be 3
|
|
$results | Should Be $expected
|
|
$content = Get-Content $tempFile
|
|
$content | Should Be $expected
|
|
}
|
|
|
|
It "Positive Variable Test" {
|
|
$expected = "1", "2", "3"
|
|
$varName = "teeObjectTestVar"
|
|
$results = $expected | Tee-Object -Variable $varName
|
|
$results.Length | Should be 3
|
|
$results | Should Be $expected
|
|
|
|
$results = Get-Variable -Name $varName -ValueOnly
|
|
$results.Length | Should be 3
|
|
$results | Should Be $expected
|
|
}
|
|
|
|
} |