dherault / serverless-offline

Emulate AWS λ and API Gateway locally when developing your Serverless project
MIT License
5.16k stars 794 forks source link

fix: Support httpApi authorizer with different config and function names #1763

Closed adamldoyle closed 1 month ago

adamldoyle commented 4 months ago

Description

httpApi authorizer's have their config in the provider section with a name that can be used by httpApi events to attach that authorizer. The authorizer's underlying function is separately defined and is allowed to have a different name than the authorizer config in the provider section. The current implementation by serverless-offline requires that both of those names are the same. This PR fixes this issue by embedding all of the provider config and setting the function name to the one defined in the config.

Motivation and Context

Fixes #1624

How Has This Been Tested?

Manually tested with a small sample app that reproduced the initial issue. Updated existing integration tests that weren't actually using the correct authorizer names (they were using the function names). Added new integration test to reference an authorizer based on config name and have it point to a function name with a different name.

Screenshots (if appropriate):

N/A

DorianMazur commented 1 month ago

reopen to run ci

DorianMazur commented 1 month ago

@adamldoyle Looks like authorizer with alternative mismatched authorizer name test scenario is failing

adamldoyle commented 1 month ago

@DorianMazur the failing test should be fixed now.

DorianMazur commented 1 month ago

Thank you @adamldoyle