diff --git a/test/DotNetWorkerTests/Converters/DateTimeConverterTests.cs b/test/DotNetWorkerTests/Converters/DateTimeConverterTests.cs index 99e2455a1..b79a75abf 100644 --- a/test/DotNetWorkerTests/Converters/DateTimeConverterTests.cs +++ b/test/DotNetWorkerTests/Converters/DateTimeConverterTests.cs @@ -29,8 +29,18 @@ public async Task ConversionSuccessfulForValidSourceDateTimeOffset(object source var convertedDateTimeOffset = TestUtility.AssertIsTypeAndConvert(conversionResult.Value); // when no offset info is present in input value, offset of local timezone will be set as the offset of the DateTimeOffSet instance. - var expectedOffSetHours = expectedOffsetHours ?? TimeZoneInfo.Local.GetUtcOffset(DateTime.UtcNow).Hours; - Assert.Equal(expectedOffSetHours, convertedDateTimeOffset.Offset.Hours); + + if (expectedOffsetHours is null) + { + DateTimeOffset offsetCheck = DateTimeOffset.UtcNow; + expectedOffsetHours = TimeZoneInfo.Local.GetUtcOffset(offsetCheck).Hours; + if (TimeZoneInfo.Local.IsDaylightSavingTime(offsetCheck) != TimeZoneInfo.Local.IsDaylightSavingTime(convertedDateTimeOffset)) + { + expectedOffsetHours += TimeZoneInfo.Local.IsDaylightSavingTime(offsetCheck) ? -1 : +1; + } + } + + Assert.Equal(expectedOffsetHours.Value, convertedDateTimeOffset.Offset.Hours); Assert.Equal(DateTimeOffset.Parse(source.ToString()), convertedDateTimeOffset); }