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

Manage Expired Subscription #2764

Merged
merged 48 commits into from May 3, 2024
Merged

Conversation

afterxleep
Copy link
Collaborator

@afterxleep afterxleep commented Apr 19, 2024

Task/Issue URL: https://app.asana.com/0/1204099484721401/1207112724044306/f

Description:

  • Allows repurchasing an expired subscription, whether it was purchased on Apple or via Stripe or Google
  • Properly caches Settings Subscription-State and uses it by default (Until the backend says otherwise)

Test Repurchase:

  1. Change FE URL to use abrown.duckduckgo.com
  2. Get a Stripe subscription
  3. Restore on iOS using this version
  4. Expire Stripe subscription
  5. Open Settings
  6. Observe the subscription is displayed as expired
  7. Tap View Plans
  8. Purchase a subscription with the app
  9. Observe that the subscription is active after purchase and that the email address is still there.

Test caching

  1. After you have an active subscription
  2. Disable Network Access
  3. Force close app
  4. Open App with network off
  5. Observe Subscription is active in settings
  6. Tap ITP
  7. Observe an error appears and you're taken back to settings
  8. Go to Subscription Settings
  9. Remove from Device
  10. Observe you're signed out
  11. Tap Get Privacy Pro
  12. Observe you get an error message that takes you back to settings
  13. Tap I have a subscription
  14. Tap "Enter Email"
  15. Observe you get an error message that takes you back
  16. Tap "Restore Purchase"
  17. Observe you Get an error message that takes you back to settings

@github-actions github-actions bot added the bot: not in app board Added by automation for pull requests with tasks not added to iOS App Board Asana project label Apr 19, 2024
@afterxleep afterxleep changed the title Daniel/subscription/expired/2.management Manage Expired Subscription Apr 19, 2024
@afterxleep afterxleep marked this pull request as ready for review April 19, 2024 11:02
@afterxleep afterxleep removed the bot: not in app board Added by automation for pull requests with tasks not added to iOS App Board Asana project label Apr 19, 2024
Copy link

github-actions bot commented Apr 23, 2024

Warnings
⚠️ PR has more than 500 lines of code changing. Consider splitting into smaller PRs if possible.

Generated by 🚫 dangerJS against a30cdd0

@afterxleep afterxleep changed the base branch from daniel/subscription/expired/0.integration to main April 23, 2024 13:49
@miasma13 miasma13 force-pushed the daniel/subscription/expired/2.management branch from afaed7c to 8b753bf Compare April 25, 2024 19:48
@afterxleep afterxleep merged commit 3c86f9e into main May 3, 2024
14 checks passed
@afterxleep afterxleep deleted the daniel/subscription/expired/2.management branch May 3, 2024 13:49
samsymons added a commit that referenced this pull request May 6, 2024
* main:
  Enable field validation for Sync payloads (#2807)
  Fix up address bar spoofing tests to match new behaviours. (#2743)
  Release 7.118.0-4 (#2821)
  Settings: onAppear changed to onDisappear (#2817) (#2820)
  Manage Expired Subscription (#2764)
  Replace deprecated tab preview renderer (#2814)
  Release 7.118.0-3 (#2819)
  Update release notes.
  Settings: onAppear changed to onDisappear (#2817)
  Release 7.118.0-2 (#2815)
  Improve VPN underlying error detail (#2813)
  Break the Subscription module’s dependency on BSK (#2804)
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.

None yet

2 participants