Tests/Private/Get-Timestamp.Tests.ps1
|
BeforeAll { . "$PSScriptRoot/../../Private/Get-Timestamp.ps1" } Describe 'Get-Timestamp' { It 'Returns a string in yyyy-MM-dd HH:mm:ss format' { $result = Get-Timestamp $result | Should -Match '^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$' } It 'Returns the current time (within 2 seconds tolerance)' { $before = Get-Date $result = Get-Timestamp $after = Get-Date $parsed = [datetime]::ParseExact($result, 'yyyy-MM-dd HH:mm:ss', $null) $parsed | Should -BeGreaterOrEqual $before.AddSeconds(-1) $parsed | Should -BeLessOrEqual $after.AddSeconds(1) } It 'Returns different values when called at different times' { $t1 = Get-Timestamp Start-Sleep -Milliseconds 1100 $t2 = Get-Timestamp $t2 | Should -Not -Be $t1 } } |