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

[WIP] Checkout widget test scenarios #1

Open
elvijsTDL opened this issue May 17, 2023 · 0 comments
Open

[WIP] Checkout widget test scenarios #1

elvijsTDL opened this issue May 17, 2023 · 0 comments
Assignees
Labels
Type: Testing Testing cases or harness improvements

Comments

@elvijsTDL
Copy link
Contributor

elvijsTDL commented May 17, 2023

Builder

Products tab:

  • Changing product name
  • Changing product description
  • Setting product image
  • Removing product image
  • Using magic wand to generate product details and its tooltip
  • Next button at the tab footer leading to payment tab
  • Opening product tab from the header tabs
  • Trying to upload wrong image format

Payment tab:

Adding/removing a payment option ( form and the cards shown )

  • Adding a new payment option - normal flow
  • Adding a new payment option - stream rate with a time unit
  • Adding a new payment option - user defined rate
  • Adding a new payment option - upfront payment
  • Adding a new payment option - discard form
  • Adding a new payment option - close form with x
  • Removing a payment option
  • Cloning a payment option - just flow rate
  • Cloning a payment option - user defined rate
  • Cloning a payment option - upfront payment
  • Editing a payment option - just flow rate
  • Editing a payment option - user defined rate
  • Editing a payment option - upfront payment
  • Error shown when duplicate payment options entries are set

Add payment form errors and tooltips

  • Add payment option form error - network not selected
  • Add payment option form error - receiver address not selected
  • Add payment option form error - super token not selected
  • Add payment option form error - stream rate not selected
  • Add payment option form error - upfront payment amount not selected
  • Add payment option form tooltips - network
  • Add payment option form tooltips - receiver address
  • Add payment option form tooltips - super token
  • Add payment option form tooltips - stream rate
  • Add payment option form tooltips - charge upfront payment switch
  • Add payment option form tooltips - upfront payment amount
  • Add payment option form - Networks shown in the dropdown
  • Add payment option form - tokens shown in the dropdown
  • Add payment option form - Networks shown in the dropdown
  • Add payment option form - searching for a token
  • Add payment option form - invalid stream rate values ( negative , 0 , letters , scientific notion )
  • Add payment option form - invalid upfront payment amount values ( negative , 0 , letters , scientific notion )

Others

  • Total payment option count shown in the page
  • No payment options message shown
  • Replace with demo data hyperlink adding demo options
  • Using magic wand to generate payment options
  • Address tooltips shown in the payment list
  • Back button in the footer leading to product page
  • Next button leading to styling page
  • Token icons shown correctly in the payment options cards
  • Fixed and User defined rate explanation shown
  • Clearing the selected token with the x button

Styling tab:

  • View types - Inline
  • View types - Dialog
  • View types - Drawer
  • View types - Full-screen
  • View types - Close full screen widget view
  • Turning dark mode on
  • Turning dark mode off
  • Changing container border radius
  • Changing field border radius
  • Changing button border radius
  • Changing primary color by typing color in the field
  • Changing secondary color by typing color in the field
  • Changing primary color by using the color picker
  • Changing secondary color by using the color picker
  • Changing the font of the widget
  • Changing the stepper to vertical
  • Changing the stepper to horizontal
  • Choosing the same stepper positioning does not crash the page [SUBS] Clicking on the selected stepper rotation toggle button crashes the page #188
  • Using the magic wand button to generate styling
  • Back button at the footer leading to payment tab
  • Next button at the footer leading to export tab

Export tab:

  • Download JSON
  • Export to IPFS
  • Book a demo button
  • Next button not existing
  • Back button leading to styling tab

Gating tab

  • NFT Symbol tooltip
  • Inputing invalid values in the symbol field? Are there any?
  • NFT Name tooltip
  • Inputing invalid values in the name field? Are there any?
  • Contract owner tooltip
  • Inputing invalid values in the contract owner field should not enable the create nft button ( not working like that at the moment )
  • Uploading an nft image
  • Uploading an invalid format nft image
  • Networks shown in the NFT selection
  • Deploying an NFT with an image
  • Deploying an NFT without an image
  • Mocked - deployment api call gets an error
  • NFT image tooltip
  • NFT success screen - documentation
  • NFT sucesss screen close with x
  • NFT success screen - export addresses
  • Opening NFT tab from the header
  • Opening NFT tab with the bottom next button

Others

Might need to think of scope of JSON editor tests, for now focusing on best bang for buck

  • JSON editor - Edit the JSON ( Change name,description,image all payment detail types on all chains )
  • JSON editor - error shown when invalid json is present
  • JSON editor - schema errors shown in the editor
  • Terms of Use Hyperlink
  • Privacy policy link

Widget

Widget details:

  • Showing the correct product description
  • Showing the correct product name
  • Showing the correct amount per month
  • Showing the product image correctly
  • Showing the correct amount per month - user defined
  • Showing the correct amount per month - upfront payment
  • Showing the selected token symbol correctly
  • Powered by Superfluid button leading to superfluid.finance
  • Details not visible if user has not set product name, description and image
  • Network banner shown by the product information depending on the selected option

Select network and token tab:

  • All available payment options networks showing up
  • All available tokens payment options showing up
  • User rejecting wallet connection
  • User who already had connected to the page revisiting the site
  • User changing their network
  • Opening the "Choose network and token" form from the step component
  • User switching their wallet to a different address
  • Selecting a payment option ( more than 8 [SUBS] User unable to select payment options if there are more than 8 #92 )
  • Searching for a network
  • Searching for a payment option

Wrap tab:

  • Opening the wrap tab from the step component
  • Token icons showing up for the selected token
  • User disconnecting their wallet during the review
  • User switching their wallet to a different address during the review
  • Wrap screen not shown for pure super tokens
  • Wrap screen shown for native tokens
  • Reviewing the wrap amount if user does not have enough funds for the wrap
  • Why do I need to wrap tokens hyperlink
  • Skip this step button showing up for a user who has enough super token balance
  • Recommendation message showing up after user types in a wrap amount
  • Reviewing the wrap for user who already has the super token balance necessary
  • Continue button leading to the next review step
  • Wrapping a token with less than 18 decimals ( USDC )
  • Invalid inputs into the wrap fields ( negative, text , more than 18 decimals , scientific notion )
  • Wrap input fields mirroring the input
  • Super token balance shown correctly
  • Underlying token balance shown correctly

Reviewing tab:

  • Collapsing and opening the "Review the transactions" form
  • Sender and Receiver addresses showing correctly in the transaction preview
  • Animation flowing in between Sender and Receiver addresses
  • Copy buttons by the Sender and Receiver addresses
  • Reviewing the transactions when user does not have enough balance for the deposit
  • Reviewing the transactions when user does not have enough balance for 24 hours of stream
  • Reviewing the transactions when user does not have enough balance to wrap the tokens
  • Reviewing the transactions with a pure super token
  • User disconnecting their wallet during the review
  • Reviewing the transaction with a token with less/more than 18 decimals
  • User switching their wallet to a different address during the review
  • Data shown in the stream preview ( Network, flow rate , start date , liquidation date? )
  • Continue button leading to the next step
  • Wrap amount shown in the review screen
  • Super token balance shown correctly
  • Token symbols shown correctly

Transaction screens ( Approvals ):

  • Allowance tx not being asked for a user who already has given enough allowance
  • Allowance tx
  • Allowance tx for a token with less/more than 18 decimals
  • Rejecting the allowance tx
  • Wrap tx
  • Wrap tx for a token with less/more than 18 decimals
  • Rejecting wrap tx
  • Wrap tx for a token with less/more than 18 decimals
  • Transfer tx
  • Transfer tx for a token with less/more than 18 decimals
  • Rejecting transfer tx
  • Send stream tx
  • Canceling send stream tx
  • Modify stream tx
  • Cancelling modify stream tx
  • Transaction counter showing up correctly
  • Going back to the review step with "X" button
  • Transfer transaction not being asked for a user who has sent a transfer in the last 5k blocks

Success screen:

  • Streamed amount message flowing and correct token shown
  • Sender and Receiver addresses showing correctly in the transaction preview
  • Animation flowing in between Sender and Receiver addresses
  • Copy buttons by the Sender and Receiver addresses
  • Open superfluid dashboard button opening
  • Data shown in the transaction details [Stream rate, network ]
    -[ ] Upfront payment amount shown in the success screen

Transaction related tests:

  • Make sure that the gas estimation by the SDK will not create transactions with not enough gas ( Polygon , Mumbai )
  • Make sure transactions can be executed by AA contracts ( Gnosis Safe )
  • Test if transactions can be executed by multiple wallet providers - Metamask, WalletConnect , Rainbow

Modify stream behavior:

  • Reviewing the transactions if the user already has an outgoing stream to the receiver
    • Add ( default behaviour )
    • Set
    • Ensure
    • Set - you are already subscribed error
    • Ensure - you are already subscribed error
    • Set - Creating wrap transactions
    • Ensure - Creating wrap transactions
    • Transfer already done - user should not be asked to do a transfer is one was done in the last 10000 blocks

Landing page:

  • Book a demo button
  • Enter builder button
  • Footer urls not leading to dead links
  • Make sure smaller viewports can access the enter builder and book a demo buttons
@elvijsTDL elvijsTDL added the Type: Testing Testing cases or harness improvements label May 17, 2023
@elvijsTDL elvijsTDL linked a pull request Sep 20, 2023 that will close this issue
@elvijsTDL elvijsTDL removed a link to a pull request Sep 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Testing Testing cases or harness improvements
Projects
None yet
Development

No branches or pull requests

2 participants