From 79064b135cf6edbc30f3540b8e4cb3a6fd922901 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Stormacq?= Date: Mon, 27 Oct 2025 13:20:08 +0100 Subject: [PATCH 1/2] more test on dates with fractional seconds --- Tests/AWSLambdaEventsTests/S3Tests.swift | 4 ++++ Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift | 8 ++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Tests/AWSLambdaEventsTests/S3Tests.swift b/Tests/AWSLambdaEventsTests/S3Tests.swift index 94a89ae..b386a15 100644 --- a/Tests/AWSLambdaEventsTests/S3Tests.swift +++ b/Tests/AWSLambdaEventsTests/S3Tests.swift @@ -112,6 +112,8 @@ struct S3Tests { #expect(record.awsRegion == .eu_central_1) #expect(record.eventName == "ObjectCreated:Put") #expect(record.eventTime.ISO8601Format() == Date(timeIntervalSince1970: 1_578_907_540.621).ISO8601Format()) + // see https://github.com/swiftlang/swift-foundation/issues/1561#issuecomment-3448853449 + #expect(abs(record.eventTime.timeIntervalSince1970 - 1_578_907_540.621) < 0.0005) #expect(record.userIdentity == S3Event.UserIdentity(principalId: "AWS:AAAAAAAJ2MQ4YFQZ7AULJ")) #expect(record.requestParameters == S3Event.RequestParameters(sourceIPAddress: "123.123.123.123")) #expect(record.responseElements.count == 2) @@ -136,6 +138,8 @@ struct S3Tests { #expect(record.awsRegion == .eu_central_1) #expect(record.eventName == "ObjectRemoved:DeleteMarkerCreated") #expect(record.eventTime.ISO8601Format() == Date(timeIntervalSince1970: 1_578_907_540.621).ISO8601Format()) + // see https://github.com/swiftlang/swift-foundation/issues/1561#issuecomment-3448853449 + #expect(abs(record.eventTime.timeIntervalSince1970 - 1_578_907_540.621) < 0.0005) #expect(record.userIdentity == S3Event.UserIdentity(principalId: "AWS:AAAAAAAJ2MQ4YFQZ7AULJ")) #expect(record.requestParameters == S3Event.RequestParameters(sourceIPAddress: "123.123.123.123")) #expect(record.responseElements.count == 2) diff --git a/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift b/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift index 3955582..da9aafa 100644 --- a/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift +++ b/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift @@ -66,9 +66,13 @@ struct DateWrapperTests { let date = "2020-03-26T16:53:05Z" // missing fractional seconds let json = #"{"date":"\#(date)"}"# #if swift(<6.2) - let error = (any Error).self + let error = (any Error).self #else - let error = Never.self + #if canImport(FoundationEssentials) + let error = Never.self + #else + let error = (any Error).self + #endif #endif #expect(throws: error) { try JSONDecoder().decode(TestEvent.self, from: json.data(using: .utf8)!) From 9b8575f789a935843b637737df6f0207eee7d845 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Stormacq?= Date: Mon, 27 Oct 2025 13:26:43 +0100 Subject: [PATCH 2/2] swift-format --- .../Utils/DateWrapperTests.swift | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift b/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift index da9aafa..8f880b5 100644 --- a/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift +++ b/Tests/AWSLambdaEventsTests/Utils/DateWrapperTests.swift @@ -66,13 +66,13 @@ struct DateWrapperTests { let date = "2020-03-26T16:53:05Z" // missing fractional seconds let json = #"{"date":"\#(date)"}"# #if swift(<6.2) - let error = (any Error).self + let error = (any Error).self #else - #if canImport(FoundationEssentials) - let error = Never.self - #else - let error = (any Error).self - #endif + #if canImport(FoundationEssentials) + let error = Never.self + #else + let error = (any Error).self + #endif #endif #expect(throws: error) { try JSONDecoder().decode(TestEvent.self, from: json.data(using: .utf8)!)