-
Notifications
You must be signed in to change notification settings - Fork 84
Fix SessionAuthentication LIVE url #1579
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Summary of ChangesHello @gcatanese, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses a critical bug in the SessionAuthentication API where the live environment URL was incorrectly configured. The changes include a direct fix to ensure the proper live URL is constructed and introduces new unit tests to verify this behavior across different environments. This is presented as an immediate solution, with a clear plan to refactor the URL handling mechanism in the future by leveraging OpenAPI definitions. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
The pull request addresses an incorrect live URL for the SessionAuthentication API and includes a new test case. The code adds a specific case to handle the /authe/ path, replacing the test URL with the live URL. The added test cases verify the correct URL is built for both test and live environments.
I think in general this code should be refactored to something like this instead of having hard coded valuesThe regex is just an example not an accurate oneprotected createBaseUrl(url: string): string {
const { environment, liveEndpointUrlPrefix } = this.client.config;
if (!url) throw new Error("Endpoint URL must be provided.");
// Non-LIVE: return test URLs as-is
if (environment !== EnvironmentEnum.LIVE) {
return url;
}
if (!liveEndpointUrlPrefix) {
throw new Error("Live endpoint URL prefix must be provided for LIVE environment.");
}
// Match known Adyen domains
const patterns = [
// pal-test.adyen.com → {prefix}-pal-live.adyenpayments.com
{ regex: /^https:\/\/pal-test\.adyen\.com/,
replace: `https://${liveEndpointUrlPrefix}-pal-live.adyenpayments.com` },
// checkout-test.adyen.com → {prefix}-checkout-live.adyenpayments.com
{ regex: /^https:\/\/checkout-test\.adyen\.com/,
replace: `https://${liveEndpointUrlPrefix}-checkout-live.adyenpayments.com` },
// test.adyen.com/authe → live.adyen.com/authe
{ regex: /^https:\/\/test\.adyen\.com\/authe/,
replace: "https://live.adyen.com/authe" },
// Generic: anything ending in -test.adyen.com → -live.adyen.com
{ regex: /-test\.adyen\.com/,
replace: "-live.adyen.com" },
];
for (const { regex, replace } of patterns) {
if (regex.test(url)) return url.replace(regex, replace);
}
// fallback: return unchanged if no pattern matched
return url;
} |
|
@benjamin-deutsch-swap Yes, very good point. Our plan is to use the |
The
liveurl of the SessionAuthentication API is incorrect: this PR fixes the bug and adds a test.This is a short-term solution, we will revise the approach and use the url from the OpenAPI
serverselement.Fix #1578