checkout / frames-android

Frames Android: making native card payments simple
https://www.checkout.com/docs/integrate/sdks/android-sdk
MIT License
47 stars 32 forks source link

PIMOB:2181 - CVV multiple loading support added #239

Closed chintan-soni-cko closed 8 months ago

chintan-soni-cko commented 9 months ago

Issue

PIMOB-2181

Proposed changes

  1. Support to load only one CVV component from the same mediator
  2. Support to load multiple CVV components from the different mediator
  3. Enabled check for empty CVV length for all card schemes. For instance, if the merchant injects the Maestro, on 0 length CVV validation returns false for isCVVValid
  4. Covered UI tests

Note: Sample app only load component and full design will be cover in following PRs

Test Steps

  1. To validate load only one CVV component from the same mediator, call mediator.CVVComponent() in CVVTokenizationScreen multipletimes. Expected should be one cvv component in the screen
  2. To validate load load multiple CVV components from the different mediator, create new mediators in CVVTokenizationScreen and expected output should be multiple CVV components
  3. To validate zero length failure for valid schemes, inject Maestro as a scheme and check the log value. Expected should be on zero length it should be false.

Checklist

Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

Further comments

If this is a relatively large or complex change, kick off the discussion by explaining why you choose the solution you did and what alternatives you considered, etc...