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

Disable send route when sending is locked #1115

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

youngkidwarrior
Copy link
Collaborator

No description provided.

Copy link
Collaborator Author

youngkidwarrior commented Feb 19, 2025

This stack of pull requests is managed by Graphite. Learn more about stacking.

@youngkidwarrior youngkidwarrior marked this pull request as ready for review February 19, 2025 11:04
Copy link
Contributor

@0xBigBoss 0xBigBoss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. My only gripe with the useCoins and useCoin hook is w don't provide an easy way for the caller to invalidate the queries so that we refetch. But that can be a follow up, things mostly work for the users cuz they refetch on mount.

@youngkidwarrior youngkidwarrior force-pushed the disable_send_route_when_sending_is_locked branch from 6b3787f to fce1f69 Compare February 19, 2025 19:32
Copy link

Copy link

Playwright Report

Summary

Expected Skipped Unexpected Flaky Duration
72 6 7 5 338.93s

Suites

account-rewards.onboarded.spec.ts

can visit rewards page

  • chromium: ✅
  • firefox: ✅

account-sendtag-checkout.onboarded.spec.ts

can visit checkout page

  • chromium: ✅
  • firefox: ✅

can add a pending tag

  • chromium: ✅
  • firefox: ✅

cannot add an invalid tag name

  • chromium: ✅
  • firefox: ✅

can confirm a tag

  • chromium: ✅
  • firefox: ✅

can refer a tag

  • chromium: 🚨
  • firefox: ✅

can refer multiple tags in separate transactions

  • chromium: ✅
  • firefox: ✅

cannot confirm a tag without paying

  • chromium: ✅
  • firefox: ✅

cannot add more than 5 tags

  • chromium: ✅
  • firefox: ✅

account-settings-backup.onboarded.spec.ts

can backup account

  • chromium: ✅
  • firefox: ✅

can remove a signer

  • chromium: ✅
  • firefox: ✅

account.logged-in.spec.ts

can visit account page

  • chromium: ✅
  • firefox: ✅

can update profile

  • chromium: ✅
  • firefox: ✅

activity.onboarded.spec.ts

can visit activity page and see correct activity feed

  • chromium: ✅
  • firefox: ✅

can search on activity page

  • chromium: ✅
  • firefox: ✅

home.onboarded.spec.ts

can visit token detail page

  • chromium: ✅
  • firefox: ✅

leaderboard.logged-in.spec.ts

can visit leaderboard page

  • chromium: ✅
  • firefox: ✅

onboarding.logged-in.spec.ts

can visit onboarding page

  • chromium: ✅
  • firefox: ✅

profile.anon.spec.ts

anon user can visit public profile

  • chromium: ❌
    • Error: �[31mTimed out 5000ms waiting for �[39m�[2mexpect(�[22m�[31mlocator�[39m�[2m).�[22mtoBeVisible�[2m()�[22m

Locator: getByRole('link', { name: 'SEND', exact: true })
Expected: visible
Received: <element(s) not found>
Call log:
�[2m- expect.toBeVisible with timeout 5000ms�[22m
�[2m - waiting for getByRole('link', { name: 'SEND', exact: true })�[22m

�[0m �[90m 27 |�[39m �[36mawait�[39m expect(page�[33m.�[39mgetByText(profile�[33m.�[39mname))�[33m.�[39mtoBeVisible()
�[90m 28 |�[39m �[36mconst�[39m profilePage �[33m=�[39m �[36mnew�[39m �[33mProfilePage�[39m(page�[33m,�[39m { name�[33m:�[39m profile�[33m.�[39mname�[33m,�[39m about�[33m:�[39m profile�[33m.�[39mabout })
�[31m�[1m>�[22m�[39m�[90m 29 |�[39m �[36mawait�[39m expect(profilePage�[33m.�[39msendButton)�[33m.�[39mtoBeVisible()
�[90m |�[39m �[31m�[1m^�[22m�[39m
�[90m 30 |�[39m })
�[90m 31 |�[39m
�[90m 32 |�[39m test(�[32m'anon user cannot visit private profile'�[39m�[33m,�[39m �[36masync�[39m ({ page�[33m,�[39m seed }) �[33m=>�[39m {�[0m

at /home/runner/_work/sendapp/sendapp/packages/playwright/tests/profile.anon.spec.ts:29:40
  • firefox: ❌
    • Error: �[31mTimed out 5000ms waiting for �[39m�[2mexpect(�[22m�[31mlocator�[39m�[2m).�[22mtoBeVisible�[2m()�[22m

Locator: getByRole('link', { name: 'SEND', exact: true })
Expected: visible
Received: <element(s) not found>
Call log:
�[2m- expect.toBeVisible with timeout 5000ms�[22m
�[2m - waiting for getByRole('link', { name: 'SEND', exact: true })�[22m

�[0m �[90m 27 |�[39m �[36mawait�[39m expect(page�[33m.�[39mgetByText(profile�[33m.�[39mname))�[33m.�[39mtoBeVisible()
�[90m 28 |�[39m �[36mconst�[39m profilePage �[33m=�[39m �[36mnew�[39m �[33mProfilePage�[39m(page�[33m,�[39m { name�[33m:�[39m profile�[33m.�[39mname�[33m,�[39m about�[33m:�[39m profile�[33m.�[39mabout })
�[31m�[1m>�[22m�[39m�[90m 29 |�[39m �[36mawait�[39m expect(profilePage�[33m.�[39msendButton)�[33m.�[39mtoBeVisible()
�[90m |�[39m �[31m�[1m^�[22m�[39m
�[90m 30 |�[39m })
�[90m 31 |�[39m
�[90m 32 |�[39m test(�[32m'anon user cannot visit private profile'�[39m�[33m,�[39m �[36masync�[39m ({ page�[33m,�[39m seed }) �[33m=>�[39m {�[0m

at /home/runner/_work/sendapp/sendapp/packages/playwright/tests/profile.anon.spec.ts:29:40

anon user cannot visit private profile

  • chromium: ❌
    • Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m

Expected: �[32m"�[7m404 | �[27mSend"�[39m
Received: �[31m"Send"�[39m

�[0m �[90m 36 |�[39m �[36mawait�[39m visitProfile({ page�[33m,�[39m tag�[33m:�[39m tag�[33m.�[39mname })
�[90m 37 |�[39m �[36mconst�[39m title �[33m=�[39m �[36mawait�[39m page�[33m.�[39mtitle()
�[31m�[1m>�[22m�[39m�[90m 38 |�[39m expect(title)�[33m.�[39mtoBe(�[32m'404 | Send'�[39m)
�[90m |�[39m �[31m�[1m^�[22m�[39m
�[90m 39 |�[39m �[36mawait�[39m expect(page�[33m.�[39mgetByRole(�[32m'heading'�[39m�[33m,�[39m { name�[33m:�[39m �[32m'Not found.'�[39m }))�[33m.�[39mtoBeVisible()
�[90m 40 |�[39m �[36mawait�[39m expect(page�[33m.�[39mgetByRole(�[32m'link'�[39m�[33m,�[39m { name�[33m:�[39m �[32m'Need to sign in?'�[39m }))�[33m.�[39mtoBeVisible()
�[90m 41 |�[39m })�[0m

at /home/runner/_work/sendapp/sendapp/packages/playwright/tests/profile.anon.spec.ts:38:17
  • firefox: ✅

profile.logged-in.spec.ts

logged in user needs onboarding before visiting profile

  • chromium: ❌
    • Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m

Expected: �[32m"Send�[7m | Onboarding�[27m"�[39m
Received: �[31m"Send"�[39m

�[0m �[90m 26 |�[39m assert(�[33m!�[39m�[33m!�[39mprofile�[33m.�[39mabout�[33m,�[39m �[32m'profile about not found'�[39m)
�[90m 27 |�[39m �[36mawait�[39m page�[33m.�[39mgoto(�[32m${tag.name}�[39m)
�[31m�[1m>�[22m�[39m�[90m 28 |�[39m expect(�[36mawait�[39m page�[33m.�[39mtitle())�[33m.�[39mtoBe(�[32m'Send | Onboarding'�[39m)
�[90m |�[39m �[31m�[1m^�[22m�[39m
�[90m 29 |�[39m �[36mawait�[39m �[36mnew�[39m �[33mOnboardingPage�[39m(page)�[33m.�[39mcompleteOnboarding(expect)
�[90m 30 |�[39m
�[90m 31 |�[39m �[90m// @todo check that user is redirected back to profile page�[39m�[0m

at /home/runner/_work/sendapp/sendapp/packages/playwright/tests/profile.logged-in.spec.ts:28:30
  • firefox: ❌
    • Error: �[31mTimed out 5000ms waiting for �[39m�[2mexpect(�[22m�[31mlocator�[39m�[2m).�[22mtoBeVisible�[2m()�[22m

Locator: getByText('Rafaela Waters')
Expected: visible
Received: <element(s) not found>
Call log:
�[2m- expect.toBeVisible with timeout 5000ms�[22m
�[2m - waiting for getByText('Rafaela Waters')�[22m

�[0m �[90m 33 |�[39m �[36mconst�[39m profilePage �[33m=�[39m �[36mnew�[39m �[33mProfilePage�[39m(page�[33m,�[39m { name�[33m:�[39m profile�[33m.�[39mname�[33m,�[39m about�[33m:�[39m profile�[33m.�[39mabout })
�[90m 34 |�[39m expect(�[36mawait�[39m page�[33m.�[39mtitle())�[33m.�[39mtoBe(�[32m'Send | Profile'�[39m)
�[31m�[1m>�[22m�[39m�[90m 35 |�[39m �[36mawait�[39m expect(page�[33m.�[39mgetByText(profile�[33m.�[39mname))�[33m.�[39mtoBeVisible()
�[90m |�[39m �[31m�[1m^�[22m�[39m
�[90m 36 |�[39m �[36mawait�[39m expect(profilePage�[33m.�[39msendButton)�[33m.�[39mtoBeVisible()
�[90m 37 |�[39m })
�[90m 38 |�[39m�[0m

at /home/runner/_work/sendapp/sendapp/packages/playwright/tests/profile.logged-in.spec.ts:35:46

profile.onboarded.spec.ts

can visit other user profile and send by tag

  • chromium: ✅
  • firefox: ✅

can visit my own profile

  • chromium: ✅
  • firefox: ✅

can visit private profile

  • chromium: ✅
  • firefox: ✅

can view activities between another profile

  • chromium: ✅
  • firefox: ✅

send-token-upgrade.onboarded.spec.ts

can upgrade their Send Token V0 to Send Token V1

  • chromium: ✅
  • firefox: ✅

send.onboarded.spec.ts

can send USDC starting from profile page

  • chromium: ✅
  • firefox: 🚨

can send USDC using tag starting from home page

  • chromium: ✅
  • firefox: ✅

can send USDC using sendid starting from home page

  • chromium: ✅
  • firefox: ✅

can send USDC using address starting from home page

  • chromium: ✅
  • firefox: ✅

can send ETH starting from profile page

  • chromium: ✅
  • firefox: ✅

can send ETH using tag starting from home page

  • chromium: 🚨
  • firefox: ✅

can send ETH using sendid starting from home page

  • chromium: ✅
  • firefox: 🚨

can send ETH using address starting from home page

  • chromium: ✅
  • firefox: ✅

can send SEND starting from profile page

  • chromium: ✅
  • firefox: ✅

can send SEND using tag starting from home page

  • chromium: ✅
  • firefox: ✅

can send SEND using sendid starting from home page

  • chromium: ✅
  • firefox: ✅

can send SEND using address starting from home page

  • chromium: 🚨
  • firefox: ✅

sign-in.anon.spec.ts

redirect on sign-in

  • chromium: ❌
    • Error: �[31mTimed out 5000ms waiting for �[39m�[2mexpect(�[22m�[31mlocator�[39m�[2m).�[22mtoBeVisible�[2m()�[22m

Locator: getByPlaceholder('Search')
Expected: visible
Received: <element(s) not found>
Call log:
�[2m- expect.toBeVisible with timeout 5000ms�[22m
�[2m - waiting for getByPlaceholder('Search')�[22m

�[0m �[90m 36 |�[39m �[36mawait�[39m signInButton�[33m.�[39mclick()
�[90m 37 |�[39m �[36mconst�[39m sendSearchInput �[33m=�[39m page�[33m.�[39mgetByPlaceholder(�[32m'Search'�[39m)
�[31m�[1m>�[22m�[39m�[90m 38 |�[39m �[36mawait�[39m expect(sendSearchInput)�[33m.�[39mtoBeVisible()
�[90m |�[39m �[31m�[1m^�[22m�[39m
�[90m 39 |�[39m } �[36mfinally�[39m {
�[90m 40 |�[39m �[36mawait�[39m pg�[33m.�[39mquery(�[32m'DELETE FROM auth.users WHERE phone = $1'�[39m�[33m,�[39m [phone])�[33m.�[39m�[36mcatch�[39m((e) �[33m=>�[39m {
�[90m 41 |�[39m log(�[32m'delete failed'�[39m�[33m,�[39m e)�[0m

at /home/runner/_work/sendapp/sendapp/packages/playwright/tests/sign-in.anon.spec.ts:38:35
  • firefox: ❌
    • Error: �[31mTimed out 5000ms waiting for �[39m�[2mexpect(�[22m�[31mlocator�[39m�[2m).�[22mtoBeVisible�[2m()�[22m

Locator: getByPlaceholder('Search')
Expected: visible
Received: <element(s) not found>
Call log:
�[2m- expect.toBeVisible with timeout 5000ms�[22m
�[2m - waiting for getByPlaceholder('Search')�[22m

�[0m �[90m 36 |�[39m �[36mawait�[39m signInButton�[33m.�[39mclick()
�[90m 37 |�[39m �[36mconst�[39m sendSearchInput �[33m=�[39m page�[33m.�[39mgetByPlaceholder(�[32m'Search'�[39m)
�[31m�[1m>�[22m�[39m�[90m 38 |�[39m �[36mawait�[39m expect(sendSearchInput)�[33m.�[39mtoBeVisible()
�[90m |�[39m �[31m�[1m^�[22m�[39m
�[90m 39 |�[39m } �[36mfinally�[39m {
�[90m 40 |�[39m �[36mawait�[39m pg�[33m.�[39mquery(�[32m'DELETE FROM auth.users WHERE phone = $1'�[39m�[33m,�[39m [phone])�[33m.�[39m�[36mcatch�[39m((e) �[33m=>�[39m {
�[90m 41 |�[39m log(�[32m'delete failed'�[39m�[33m,�[39m e)�[0m

at /home/runner/_work/sendapp/sendapp/packages/playwright/tests/sign-in.anon.spec.ts:38:35

redirect to send confirm page on sign-in

  • chromium: ✅
  • firefox: ✅

sign-up.anon.spec.ts

can sign up

  • chromium: ✅
  • firefox: ✅

country code is selected based on geoip

  • chromium: ✅
  • firefox: ✅

skip otp for existing user trying to sign up using already used phone number

  • chromium: ⏭
  • firefox: ⏭

user can sign in with passkey from backing up page

  • chromium: ⏭
  • firefox: ⏭

user can sign in as back up using otp from backing up page

  • chromium: ⏭
  • firefox: ⏭

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants