Skip to content

Commit a5e282b

Browse files
authored
Unify date/time format and make it cultureInfo independent (#524)
* Unify date format and make it independent of specific cultureInfo * moduleMessages.json should have correct datetime format dd/MM/yyyy HH:mm:ss
1 parent bf8f488 commit a5e282b

File tree

3 files changed

+13
-5
lines changed

3 files changed

+13
-5
lines changed

Source/Private/common.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1199,7 +1199,7 @@ function _showModuleLoadingMessages {
11991199

12001200
# dont show messages if display until date is in the past
12011201
$currentDate = Get-Date
1202-
$filteredMessages = $filteredMessages | Where-Object { $currentDate -le ([DateTime]::Parse($_.toDate))
1202+
$filteredMessages = $filteredMessages | Where-Object { $currentDate -le ([DateTime]::ParseExact($_.toDate, "dd/MM/yyyy HH:mm:ss", [cultureInfo]::InvariantCulture))
12031203
}
12041204

12051205
# stop processing if no messages left

Tests/SampleFiles/moduleMessages.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
[
22
{
33
"msg": "Message for minimum version 5.6.0",
4-
"toDate": "2099-02-14 13:36:17Z",
4+
"toDate": "14/02/2099 13:36:17",
55
"displayFromVersion": "5.6.0",
66
"type": "info"
77
},
88
{
99
"msg": "Message for minimum version 7.0.0",
10-
"toDate": "2099-02-13 13:36:17Z",
10+
"toDate": "13/02/2099 13:36:17",
1111
"displayFromVersion": "7.0.0",
1212
"type": "warning"
1313
},
1414
{
1515
"msg": "Message for minimum version 6.9.0",
16-
"toDate": "2021-12-31 23:59:59Z",
16+
"toDate": "31/12/2021 23:59:59",
1717
"displayFromVersion": "6.9.0",
1818
"type": "warning"
1919
},
2020
{
2121
"msg": "Message for minimum version 7.8.0 to maximum version 8.0.0",
22-
"toDate": "2099-12-31 23:59:59Z",
22+
"toDate": "31/12/2099 23:59:59",
2323
"displayFromVersion": "7.8.0",
2424
"displayToVersion": "8.0.0",
2525
"type": "warning"

Tests/function/tests/common.Tests.ps1

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,14 @@ Describe 'Common' {
451451
{ _showModuleLoadingMessages -ModuleVersion 'notaversion' } | Should -Throw -ExpectedMessage '*Cannot convert value "notaversion" to type "System.Version*'
452452
}
453453

454+
It 'should have correct datetime format' {
455+
$moduleMessagesRes = Open-SampleFile 'moduleMessages.json'
456+
$moduleMessagesRes | ForEach-Object {
457+
$outDate = [datetime]::Now
458+
[datetime]::TryParseExact($_.toDate, "dd/MM/yyyy HH:mm:ss", [cultureInfo]::InvariantCulture, [System.Globalization.DateTimeStyles]::None, [ref] $outDate) | Should -BeTrue
459+
}
460+
}
461+
454462
}
455463

456464
Context '_checkForModuleUpdates' {

0 commit comments

Comments
 (0)