Skip to content
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

[REFACTOR]: [Nexi nets] Remove Default Case Handling #2275

Closed
2 tasks done
Sakilmostak opened this issue Sep 22, 2023 · 6 comments · Fixed by #2639
Closed
2 tasks done

[REFACTOR]: [Nexi nets] Remove Default Case Handling #2275

Sakilmostak opened this issue Sep 22, 2023 · 6 comments · Fixed by #2639
Assignees
Labels
A-connector-integration Area: Connector integration C-feature Category: Feature request or enhancement good first issue Good for newcomers hacktoberfest Issues that are up for grabs for Hacktoberfest participants

Comments

@Sakilmostak
Copy link
Contributor

📝 Feature Description

  • We utilize match statements to make pivotal decisions, such as generating requests based on the payment method type and managing responses received from the connector.
  • These conditions generally go hand in hand with enum variants.
  • Default case is used because a match statement needs to be exhaustive i.e. every variant needs to be covered.
  • So, if all the explicit cases are handled then default is used to handle the rest.
  • Each connector have these match statements but many of them don’t provide reference to each variant in their default case, rather a _ is put to handle all the other cases.
  • This approach carries a risk because developers may inadvertently overlook the need for explicit handling of the new cases.

🔨 Possible Implementation

🔖 Note: All the changes needed should be contained within hyperswitch/crates/router/src/connector/

📦 Have you spent some time checking if this feature request has been raised before?

  • I checked and didn't find a similar issue

📦 Have you read the Contributing Guidelines?

✨ Are you willing to submit a PR?

@Sakilmostak Sakilmostak added A-connector-integration Area: Connector integration C-feature Category: Feature request or enhancement S-awaiting-triage Status: New issues that have not been assessed yet hacktoberfest Issues that are up for grabs for Hacktoberfest participants labels Sep 22, 2023
@VedantKhairnar VedantKhairnar added the good first issue Good for newcomers label Sep 28, 2023
@Harshwardhan9431
Copy link
Contributor

Hey @Sakilmostak I would like to contribute to this.
Can you assign this to me?

@Sakilmostak Sakilmostak removed the S-awaiting-triage Status: New issues that have not been assessed yet label Oct 12, 2023
@Sakilmostak
Copy link
Contributor Author

Hello @Harshwardhan9431 , I have assigned this issue to you

@Harshwardhan9431
Copy link
Contributor

Hey so while going through the file in connector/nexinets/transformers.rs there are many default cases so is it required to handle all the cases or only some specific ones.

@swangi-kumari
Copy link
Contributor

Hey @Harshwardhan9431,
Yes there are many default cases, but for this issue you just have to handle for the Payment Methods and Payment Method type default cases. So handle each and every variant explicitly for that part.
Feel free to ask any doubt.
Happy to help:)

@Harshwardhan9431
Copy link
Contributor

Hey folks, can you please review the PR related to this issue?
#2639

@swangi-kumari
Copy link
Contributor

Sure @Harshwardhan9431

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-connector-integration Area: Connector integration C-feature Category: Feature request or enhancement good first issue Good for newcomers hacktoberfest Issues that are up for grabs for Hacktoberfest participants
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants