mirror of
https://github.com/PowerShell/PowerShell
synced 2026-06-08 12:12:50 +00:00
Normalize line endings before comparing string in tests (#11499)
This commit is contained in:
@@ -5,6 +5,15 @@ Describe 'Basic debugger command tests' -tag 'CI' {
|
||||
|
||||
BeforeAll {
|
||||
Register-DebuggerHandler
|
||||
|
||||
function NormalizeLineEnd
|
||||
{
|
||||
param (
|
||||
[string] $string
|
||||
)
|
||||
|
||||
$string -replace "`r`n", "`n"
|
||||
}
|
||||
}
|
||||
|
||||
AfterAll {
|
||||
@@ -76,6 +85,7 @@ Describe 'Basic debugger command tests' -tag 'CI' {
|
||||
7: }
|
||||
8:
|
||||
'@
|
||||
$testScriptList = NormalizeLineEnd -string $testScriptList
|
||||
|
||||
$results = @(Test-Debugger -ScriptBlock $testScript -CommandQueue 'l','list')
|
||||
$result = @{
|
||||
@@ -99,7 +109,7 @@ Describe 'Basic debugger command tests' -tag 'CI' {
|
||||
}
|
||||
|
||||
It 'Should show the entire script listing with the current position on line 5' {
|
||||
$result['l'] | Should -BeExactly $testScriptList
|
||||
(NormalizeLineEnd -string $result['l']) | Should -BeExactly $testScriptList
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,6 +132,8 @@ Describe 'Basic debugger command tests' -tag 'CI' {
|
||||
8:
|
||||
'@
|
||||
|
||||
$testScriptList = NormalizeLineEnd -string $testScriptList
|
||||
|
||||
$results = @(Test-Debugger -ScriptBlock $testScript -CommandQueue 'l 4','list 4')
|
||||
$result = @{
|
||||
'l 4' = if ($results.Count -gt 0) {$results[0].Output -replace '\s+$' -join [Environment]::NewLine -replace "^[`r`n]+|[`r`n]+$"}
|
||||
@@ -144,7 +156,7 @@ Describe 'Basic debugger command tests' -tag 'CI' {
|
||||
}
|
||||
|
||||
It 'Should show a partial script listing starting on line 4 with the current position on line 5' {
|
||||
$result['l 4'] | Should -BeExactly $testScriptList
|
||||
(NormalizeLineEnd -string $result['l 4']) | Should -BeExactly $testScriptList
|
||||
}
|
||||
}
|
||||
|
||||
@@ -164,6 +176,8 @@ Describe 'Basic debugger command tests' -tag 'CI' {
|
||||
4:* Get-Process -Id $PID > $null
|
||||
'@
|
||||
|
||||
$testScriptList = NormalizeLineEnd -string $testScriptList
|
||||
|
||||
$results = @(Test-Debugger -ScriptBlock $testScript -CommandQueue 'l 3 2','list 3 2')
|
||||
$result = @{
|
||||
'l 3 2' = if ($results.Count -gt 0) {$results[0].Output -replace '\s+$' -join [Environment]::NewLine -replace "^[`r`n]+|[`r`n]+$"}
|
||||
@@ -186,7 +200,7 @@ Describe 'Basic debugger command tests' -tag 'CI' {
|
||||
}
|
||||
|
||||
It 'Should show a partial script listing showing 3 lines starting on line 4 with the current position on line 5' {
|
||||
$result['l 3 2'] | Should -BeExactly $testScriptList
|
||||
(NormalizeLineEnd -string $result['l 3 2']) | Should -BeExactly $testScriptList
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user