Add Start-TestSleep to avoid waiting during playback mode (#1285)

This commit is contained in:
Vincent Dai 2023-11-29 21:12:16 -08:00 коммит произвёл GitHub
Родитель 12ed2a0a7f
Коммит 3408dd5985
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
1 изменённых файлов: 25 добавлений и 0 удалений

Просмотреть файл

@ -56,6 +56,31 @@ namespace Microsoft.Rest.ClientRuntime.PowerShell
return -join ((48..57) + (97..122) | Get-Random -Count $len | % {[char]$_})
}
}
function Start-TestSleep {
[CmdletBinding(DefaultParameterSetName = 'SleepBySeconds')]
param(
[parameter(Mandatory = $true, Position = 0, ParameterSetName = 'SleepBySeconds')]
[ValidateRange(0.0, 2147483.0)]
[double] $Seconds,
[parameter(Mandatory = $true, ParameterSetName = 'SleepByMilliseconds')]
[ValidateRange('NonNegative')]
[Alias('ms')]
[int] $Milliseconds
)
if ($TestMode -ne 'playback') {
switch ($PSCmdlet.ParameterSetName) {
'SleepBySeconds' {
Start-Sleep -Seconds $Seconds
}
'SleepByMilliseconds' {
Start-Sleep -Milliseconds $Milliseconds
}
}
}
}
$env = @{}
if ($UsePreviousConfigForRecord) {
$previousEnv = Get-Content (Join-Path $PSScriptRoot 'env.json') | ConvertFrom-Json