diff --git a/Examples/LambdaFunctions/Sources/ErrorHandling/main.swift b/Examples/LambdaFunctions/Sources/ErrorHandling/main.swift index ab8e04be..b4f0c1a5 100644 --- a/Examples/LambdaFunctions/Sources/ErrorHandling/main.swift +++ b/Examples/LambdaFunctions/Sources/ErrorHandling/main.swift @@ -21,10 +21,10 @@ Lambda.run { (context: Lambda.Context, request: Request, callback: (Result) -> EventLoopFuture { - var url = Consts.invocationURLPrefix + "/" + invocation.requestId + var url = Consts.invocationURLPrefix + "/" + invocation.requestID var body: ByteBuffer? switch result { case .success(let buffer): @@ -152,15 +152,15 @@ internal extension ErrorResponse { extension Lambda { internal struct Invocation { - let requestId: String + let requestID: String let deadlineInMillisSinceEpoch: Int64 - let invokedFunctionArn: String - let traceId: String + let invokedFunctionARN: String + let traceID: String let clientContext: String? let cognitoIdentity: String? init(headers: HTTPHeaders) throws { - guard let requestId = headers.first(name: AmazonHeaders.requestID), !requestId.isEmpty else { + guard let requestID = headers.first(name: AmazonHeaders.requestID), !requestID.isEmpty else { throw RuntimeError.invocationMissingHeader(AmazonHeaders.requestID) } @@ -169,18 +169,18 @@ extension Lambda { throw RuntimeError.invocationMissingHeader(AmazonHeaders.deadline) } - guard let invokedFunctionArn = headers.first(name: AmazonHeaders.invokedFunctionARN) else { + guard let invokedFunctionARN = headers.first(name: AmazonHeaders.invokedFunctionARN) else { throw RuntimeError.invocationMissingHeader(AmazonHeaders.invokedFunctionARN) } - guard let traceId = headers.first(name: AmazonHeaders.traceID) else { + guard let traceID = headers.first(name: AmazonHeaders.traceID) else { throw RuntimeError.invocationMissingHeader(AmazonHeaders.traceID) } - self.requestId = requestId + self.requestID = requestID self.deadlineInMillisSinceEpoch = unixTimeInMilliseconds - self.invokedFunctionArn = invokedFunctionArn - self.traceId = traceId + self.invokedFunctionARN = invokedFunctionARN + self.traceID = traceID self.clientContext = headers["Lambda-Runtime-Client-Context"].first self.cognitoIdentity = headers["Lambda-Runtime-Cognito-Identity"].first } diff --git a/Sources/AWSLambdaTesting/Lambda+Testing.swift b/Sources/AWSLambdaTesting/Lambda+Testing.swift index eb698075..ce64c67f 100644 --- a/Sources/AWSLambdaTesting/Lambda+Testing.swift +++ b/Sources/AWSLambdaTesting/Lambda+Testing.swift @@ -42,18 +42,18 @@ import NIO extension Lambda { public struct TestConfig { - public var requestId: String - public var traceId: String - public var invokedFunctionArn: String + public var requestID: String + public var traceID: String + public var invokedFunctionARN: String public var timeout: DispatchTimeInterval - public init(requestId: String = "\(DispatchTime.now().uptimeNanoseconds)", - traceId: String = "Root=\(DispatchTime.now().uptimeNanoseconds);Parent=\(DispatchTime.now().uptimeNanoseconds);Sampled=1", - invokedFunctionArn: String = "arn:aws:lambda:us-west-1:\(DispatchTime.now().uptimeNanoseconds):function:custom-runtime", + public init(requestID: String = "\(DispatchTime.now().uptimeNanoseconds)", + traceID: String = "Root=\(DispatchTime.now().uptimeNanoseconds);Parent=\(DispatchTime.now().uptimeNanoseconds);Sampled=1", + invokedFunctionARN: String = "arn:aws:lambda:us-west-1:\(DispatchTime.now().uptimeNanoseconds):function:custom-runtime", timeout: DispatchTimeInterval = .seconds(5)) { - self.requestId = requestId - self.traceId = traceId - self.invokedFunctionArn = invokedFunctionArn + self.requestID = requestID + self.traceID = traceID + self.invokedFunctionARN = invokedFunctionARN self.timeout = timeout } } @@ -97,9 +97,9 @@ extension Lambda { try! eventLoopGroup.syncShutdownGracefully() } let eventLoop = eventLoopGroup.next() - let context = Context(requestId: config.requestId, - traceId: config.traceId, - invokedFunctionArn: config.invokedFunctionArn, + let context = Context(requestID: config.requestID, + traceID: config.traceID, + invokedFunctionARN: config.invokedFunctionARN, deadline: .now() + config.timeout, logger: logger, eventLoop: eventLoop) diff --git a/Tests/AWSLambdaRuntimeCoreTests/LambdaTest.swift b/Tests/AWSLambdaRuntimeCoreTests/LambdaTest.swift index 91289691..97caa4a9 100644 --- a/Tests/AWSLambdaRuntimeCoreTests/LambdaTest.swift +++ b/Tests/AWSLambdaRuntimeCoreTests/LambdaTest.swift @@ -256,9 +256,9 @@ class LambdaTest: XCTestCase { let past2 = DispatchWallTime(millisSinceEpoch: Date(timeIntervalSinceNow: Double(-delta)).millisSinceEpoch) XCTAssertEqual(Double(past1.rawValue), Double(past2.rawValue), accuracy: 2_000_000.0) - let context = Lambda.Context(requestId: UUID().uuidString, - traceId: UUID().uuidString, - invokedFunctionArn: UUID().uuidString, + let context = Lambda.Context(requestID: UUID().uuidString, + traceID: UUID().uuidString, + invokedFunctionARN: UUID().uuidString, deadline: .now() + .seconds(1), cognitoIdentity: nil, clientContext: nil, @@ -266,9 +266,9 @@ class LambdaTest: XCTestCase { eventLoop: MultiThreadedEventLoopGroup(numberOfThreads: 1).next()) XCTAssertGreaterThan(context.deadline, .now()) - let expiredContext = Lambda.Context(requestId: context.requestId, - traceId: context.traceId, - invokedFunctionArn: context.invokedFunctionArn, + let expiredContext = Lambda.Context(requestID: context.requestID, + traceID: context.traceID, + invokedFunctionARN: context.invokedFunctionARN, deadline: .now() - .seconds(1), cognitoIdentity: context.cognitoIdentity, clientContext: context.clientContext, @@ -278,9 +278,9 @@ class LambdaTest: XCTestCase { } func testGetRemainingTime() { - let context = Lambda.Context(requestId: UUID().uuidString, - traceId: UUID().uuidString, - invokedFunctionArn: UUID().uuidString, + let context = Lambda.Context(requestID: UUID().uuidString, + traceID: UUID().uuidString, + invokedFunctionARN: UUID().uuidString, deadline: .now() + .seconds(1), cognitoIdentity: nil, clientContext: nil, diff --git a/Tests/AWSLambdaRuntimeTests/Lambda+CodeableTest.swift b/Tests/AWSLambdaRuntimeTests/Lambda+CodeableTest.swift index 371783b5..8ecb17bb 100644 --- a/Tests/AWSLambdaRuntimeTests/Lambda+CodeableTest.swift +++ b/Tests/AWSLambdaRuntimeTests/Lambda+CodeableTest.swift @@ -65,9 +65,9 @@ class CodableLambdaTest: XCTestCase { // convencience method func newContext() -> Lambda.Context { - Lambda.Context(requestId: UUID().uuidString, - traceId: "abc123", - invokedFunctionArn: "aws:arn:", + Lambda.Context(requestID: UUID().uuidString, + traceID: "abc123", + invokedFunctionARN: "aws:arn:", deadline: .now() + .seconds(3), cognitoIdentity: nil, clientContext: nil, diff --git a/Tests/AWSLambdaTestingTests/Tests.swift b/Tests/AWSLambdaTestingTests/Tests.swift index 9db7b9b8..9236a630 100644 --- a/Tests/AWSLambdaTestingTests/Tests.swift +++ b/Tests/AWSLambdaTestingTests/Tests.swift @@ -125,16 +125,16 @@ class LambdaTestingTests: XCTestCase { func testConfigValues() { let timeout: TimeInterval = 4 let config = Lambda.TestConfig( - requestId: UUID().uuidString, - traceId: UUID().uuidString, - invokedFunctionArn: "arn:\(UUID().uuidString)", + requestID: UUID().uuidString, + traceID: UUID().uuidString, + invokedFunctionARN: "arn:\(UUID().uuidString)", timeout: .seconds(4) ) let myLambda = { (ctx: Lambda.Context, _: String, callback: @escaping (Result) -> Void) in - XCTAssertEqual(ctx.requestId, config.requestId) - XCTAssertEqual(ctx.traceId, config.traceId) - XCTAssertEqual(ctx.invokedFunctionArn, config.invokedFunctionArn) + XCTAssertEqual(ctx.requestID, config.requestID) + XCTAssertEqual(ctx.traceID, config.traceID) + XCTAssertEqual(ctx.invokedFunctionARN, config.invokedFunctionARN) let secondsSinceEpoch = Double(Int64(bitPattern: ctx.deadline.rawValue)) / -1_000_000_000 XCTAssertEqual(Date(timeIntervalSince1970: secondsSinceEpoch).timeIntervalSinceNow, timeout, accuracy: 0.1) diff --git a/readme.md b/readme.md index 1844ef19..d0b80ae1 100644 --- a/readme.md +++ b/readme.md @@ -235,13 +235,13 @@ When calling the user provided Lambda function, the library provides a `Context` ```swift public final class Context { /// The request ID, which identifies the request that triggered the function invocation. - public let requestId: String + public let requestID: String /// The AWS X-Ray tracing header. - public let traceId: String + public let traceID: String /// The ARN of the Lambda function, version, or alias that's specified in the invocation. - public let invokedFunctionArn: String + public let invokedFunctionARN: String /// The timestamp that the function times out public let deadline: DispatchWallTime