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

[HOLD for payment 2023-09-18] [$500] Web - App triggers Pay button for request money on selection of emoji #23804

Closed
1 of 6 tasks
kbecciv opened this issue Jul 28, 2023 · 70 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor

Comments

@kbecciv
Copy link

kbecciv commented Jul 28, 2023

If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!


Action Performed:

  1. Open the app and login with user A
  2. Open user B report
  3. From another device, send request money request from user B to user A
  4. Open emoji picker from user A device and search for any emoji
  5. Press enter to select the emoji and observe that along with emoji selection, app also approves the request money request

Expected Result:

App should not approve request money on selection of emoji from emoji picker

Actual Result:

App approves request money on selection of emoji from emoji picker

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android / native
  • Android / Chrome
  • iOS / native
  • iOS / Safari
  • MacOS / Chrome / Safari
  • MacOS / Desktop

Version Number: 1.3.47-2
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

selecting.emoji.triggers.pay.in.chat.mp4
Recording.3974.mp4

Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1690539769279639

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~019246b5e6c84e3e9d
  • Upwork Job ID: 1697646674207739904
  • Last Price Increase: 2023-09-01
  • Automatic offers:
    • Ollyws | Reviewer | 26516786
    • huzaifa-99 | Contributor | 26516787
    • dhanashree-sawant | Reporter | 26516788
@kbecciv kbecciv added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Jul 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 28, 2023

Triggered auto assignment to @muttmuure (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

@melvin-bot
Copy link

melvin-bot bot commented Jul 28, 2023

Bug0 Triage Checklist (Main S/O)

  • This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
  • This bug is not a duplicate report (check E/App issues and #expensify-bugs)
    • If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead
  • This bug is reproducible using the reproduction steps in the OP. S/O
    • If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
    • If the reproduction steps aren't clear and you determine the correct steps, please update the OP.
  • This issue is filled out as thoroughly and clearly as possible
    • Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.
  • I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

@huzaifa-99
Copy link
Contributor

Proposal

Please re-state the problem that we are trying to solve in this issue.

We want the request money action to not get approved when we press enter key, it doesn't matter if we press enter inside the emoji picker input or in other places of the app.

What is the root cause of that problem?

We are passing pressOnEnter to the button in ButtonWithDropDownMenu. Which will listen for enter key press and will submit the money request button.

What changes do you think we should make in order to solve the problem?

I think for money request actions we should not approve them on enter key press. We can remove the pressOnEnter here or pass it conditionally via a new prop (that ButtonWithDropdownMenu will receive)

What alternative solutions did you explore? (Optional)

N/A

@kbecciv
Copy link
Author

kbecciv commented Jul 28, 2023

Only reproduced with public account, not expensifail

@melvin-bot melvin-bot bot added the Overdue label Jul 31, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 31, 2023

@muttmuure Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@muttmuure
Copy link
Contributor

Wow this is really weird

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Aug 1, 2023
@melvin-bot
Copy link

melvin-bot bot commented Aug 4, 2023

@muttmuure Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@melvin-bot
Copy link

melvin-bot bot commented Aug 8, 2023

@muttmuure 6 days overdue. This is scarier than being forced to listen to Vogon poetry!

@muttmuure muttmuure added the Needs Reproduction Reproducible steps needed label Aug 9, 2023
@muttmuure
Copy link
Contributor

Can't reproduce this one.

@melvin-bot melvin-bot bot removed the Overdue label Aug 9, 2023
@dhanashree-sawant
Copy link

Hi @muttmuure, I could still reproduce on latest staging, can you let me know what do you see after trying to recreate? maybe I can help

@huzaifa-99
Copy link
Contributor

This is still reproducible, following these steps

  1. Login with 2 users
  2. From User A request money from User B
  3. From User B, open the chat and make sure you blur any input that is focused (you can click on the 'Expensify' icon for this)
  4. Now Press enter and notice the money request gets paid.

@kbecciv mentioned here, that it is only reproduced with public accounts.

mrp.paid.mp4

cc: @muttmuure

@luacmartins luacmartins reopened this Sep 1, 2023
@luacmartins luacmartins removed the Needs Reproduction Reproducible steps needed label Sep 1, 2023
@luacmartins
Copy link
Contributor

This is still happening and can be easily reproducible using a public domain account, e.g. @gmail.com

@muttmuure
Copy link
Contributor

I wasn't able to reproduce it myself

@muttmuure
Copy link
Contributor

Seems kinda sporadic

@muttmuure
Copy link
Contributor

If you can reproduce it then I'll just go ahead and add external

@muttmuure muttmuure added the External Added to denote the issue can be worked on by a contributor label Sep 1, 2023
@melvin-bot melvin-bot bot changed the title Web - App triggers Pay button for request money on selection of emoji [$500] Web - App triggers Pay button for request money on selection of emoji Sep 1, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 1, 2023

Job added to Upwork: https://www.upwork.com/jobs/~019246b5e6c84e3e9d

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Sep 1, 2023
@luacmartins
Copy link
Contributor

@Ollyws could you please complete the BZ checklist above?

@melvin-bot melvin-bot bot removed the Overdue label Sep 21, 2023
@muttmuure
Copy link
Contributor

Offers updated

@muttmuure
Copy link
Contributor

Just waiting for everyone to accept

@huzaifa-99
Copy link
Contributor

huzaifa-99 commented Sep 21, 2023

@muttmuure just confirming if the offer is for $500?

Update: I see issue was created before the compensation changes.

@dhanashree-sawant
Copy link

Thanks @muttmuure, I have accepted the offer.

@Ollyws
Copy link
Contributor

Ollyws commented Sep 21, 2023

@muttmuure I've been offered $1000, this one is only $500 I think.

@melvin-bot melvin-bot bot added the Overdue label Sep 25, 2023
@muttmuure
Copy link
Contributor

It was created before August 30th so the offers are $1000

@melvin-bot melvin-bot bot removed the Overdue label Sep 25, 2023
@muttmuure
Copy link
Contributor

Paid @huzaifa-99 and @dhanashree-sawant

@muttmuure
Copy link
Contributor

Just waiting for @Ollyws

@huzaifa-99
Copy link
Contributor

huzaifa-99 commented Sep 25, 2023

@muttmuure Thanks for the payments.

Can I request the 3-day merge bonus? The PR was C+ Reviewed on the same PR creation day (Sep 6 Wednesday) and was merged by the internal engineer on Sep 11, Monday. Also, there was a merge freeze that ended on Sep 11, Monday. I am happy either way, just wanted to bring this up. Thank you!

@Ollyws
Copy link
Contributor

Ollyws commented Sep 25, 2023

@muttmuure Offer accepted, thanks.

@melvin-bot melvin-bot bot added the Overdue label Sep 28, 2023
@luacmartins
Copy link
Contributor

Still working through payments

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Sep 29, 2023
@melvin-bot
Copy link

melvin-bot bot commented Oct 2, 2023

@Ollyws, @luacmartins, @muttmuure, @huzaifa-99 Whoops! This issue is 2 days overdue. Let's get this updated quick!

@muttmuure
Copy link
Contributor

Looks like this is eligible for bonuses after all, I will apply those now

@melvin-bot melvin-bot bot removed the Overdue label Oct 3, 2023
@muttmuure
Copy link
Contributor

bonuses paid out

@muttmuure
Copy link
Contributor

@Ollyws do we need a regression test for this?

@Ollyws
Copy link
Contributor

Ollyws commented Oct 4, 2023

Yeah I think a regression test would be good here because it's an important flow and could result in a user sending money by accident.

@Ollyws
Copy link
Contributor

Ollyws commented Oct 4, 2023

Regression Test Proposal

1. Login with 2 users
2. Request Money from User B to User A
3. From User A, open the chat with User B, make sure you see the IOUPreview message with a Pay button.
4. Click on any blank text on the screen Ex: the Expensify logo, and press enter. Verify that pressing enter does not submit the money request report.
5. Open the emoji picker, and search for any emoji. 
6. While the focus is on text input, press enter to select the searched emoji. Verify that pressing enter when selecting the emoji does not submit the money request report.

Do we agree 👍 or 👎

@luacmartins
Copy link
Contributor

Sounds good to me

@melvin-bot melvin-bot bot added the Overdue label Oct 9, 2023
@muttmuure
Copy link
Contributor

https://github.com/Expensify/Expensify/issues/324583 regression test requested

@melvin-bot melvin-bot bot removed the Overdue label Oct 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor
Projects
None yet
Development

No branches or pull requests

10 participants