brave / brave-browser

Brave browser for Android, iOS, Linux, macOS, Windows.
https://brave.com
Mozilla Public License 2.0
17.63k stars 2.3k forks source link

QA Issue for tracking Multi-device Refresh tests #39132

Closed mattmcalister closed 2 weeks ago

mattmcalister commented 3 months ago

See test plan https://github.com/brave/qa-resources/wiki/Multi%E2%80%90device-Refresh-(MDR)-Test-Plan-(desktop)

stephendonner commented 3 months ago

Verification PASSED using

Brave | 1.68.92 Chromium: 126.0.6478.71 (Official Build) beta (64-bit)
-- | --
Revision | 393b9968e233540a48f04d74bc4601a05d3a0169
OS | Windows 10 Version 22H2 (Build 19045.4529)

Purchases - PASSED

### purchase `Leo Premium` - `PASSED`
### Steps: 1. install `1.68.92` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter `issue39132-leo@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` button 10. complete Stripe checkout 11. confirm `You have active credentials loaded!` green banner and messaging 12. clicked to open `Leo` in the sidebar 13. clicked on `Summarize this page` 14. clicked on `I understand` ### Confirmed page summarization over `Premium` via `Mixtral` example | example ----------|--------- ![image](https://github.com/brave/brave-browser/assets/387249/6e8bdfe7-a072-4025-8cba-2ad5685da695) | ![image](https://github.com/brave/brave-browser/assets/387249/0b62927e-c29e-4a13-ba83-0e1847cfb8e7)
### purchase `VPN` + `Leo` - `PASSED`
### Steps: 1. install `1.68.92` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter `issue39132-vpnleo@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` button on the `Brave VPN` section 10. complete Stripe checkout 11. confirm `You have active credentials loaded!` green banner and messaging 12. click on `Plans` 13. click on `Start free trial` on the `Leo Premium` section 14. complete Stripe checkout ### Confirmed page summarization over `Premium` using `Mixtral` ### Confirmed `Brave VPN` successfully connected to a POP in `Canada` example | example | example ----------|-----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/00006c2b-1680-428c-8c11-c429efb1da69) | ![image](https://github.com/brave/brave-browser/assets/387249/a03d9db1-2c07-4dcb-983c-12944fbf200a) | ![image](https://github.com/brave/brave-browser/assets/387249/526afe9a-f868-4a12-8d72-4cd052723f5b)
### purchase `Brave Talk Premium` - `PASSED`
### Steps: 1. install `1.68.92` 2. load `account.bravesoftware.com` 3. enter basic auth username/password 4. enter `issue39132-talk@mailinator.com` test address 5. click `Get login link` 6. click on the `Log in to Brave` link in the resulting email 7. click on `Browse plans` 8. click on `Start free trial` button for the `Brave Talk Premium` product 8. complete Stripe checkout 10. confirm `Brave Talk Premium` page, with `Start Premium call` button ### Confirmed `Brave Talk Premium` experience (including recording) example | example | example ---------|-----------|----------- ![image](https://github.com/brave/brave-browser/assets/387249/8d1e46c6-3048-41c8-9e3d-5be01a48888c) | ![image](https://github.com/brave/brave-browser/assets/387249/28542d73-45ee-4145-afad-8e515ad7aee7) | ![image](https://github.com/brave/brave-browser/assets/387249/6b0fd9c1-eba6-4a82-8607-b9a9f01f57d3)
### purchase `Brave Search Premium` - `PASSED`
### Steps: 1. install `1.68.92` 2. load `account.brave.software.com` 3. enter basic auth username/password 4. enter `issue39132-search@mailinator.com` test address 5. click `Get login link` 6. click on the `Log in to Brave` link in the resulting email 7. click on `Browse plans` 8. click on `Buy now` button for the `Brave Search Premium` product 8. complete Stripe checkout ### Confirmed `Thanks for supporting independent search! You now have full access to Brave Search Premium, and ad-free search results. Enjoy!` messaging **NOTE**: Search was also purchased via `account.bravesoftware.com` (`staging`) but there is no `search` env. on `staging`, so `development` was used for the above example | example ----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/40aa0b3e-dd2d-4793-8793-d97d628742c7) | ![image](https://github.com/brave/brave-browser/assets/387249/bbe516c8-ddce-4a16-8a63-31db4096e912)
### purchase all Premium products - `PASSED`
1. install `1.68.92` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter `issue39132-all@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` button on the `Brave VPN` section 10. complete Stripe checkout 11. confirm `You have active credentials loaded!` green banner and messaging 12. click on `Plans` 13. click on `Start free trial` on the `Leo Premium` section 14. complete Stripe checkout 19. click on `Plans` 20. click on `Start free trial` on the `Brave Talk Premium` section 21. complete Stripe checkout 22. click on `Plans` 23. click on `Buy now` on the `Brave Search Premium` section ### Confirmed working credentials for `Leo`, `Brave VPN`, and `Brave Talk Premium` (search has no staging; verified separately on `account.brave.software.com` (`dev`) `Leo Premium` | `Brave VPN` | `Brave Talk Premium` | `Brave Search Premium` ----------|-----------|----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/34ca57b1-46ec-48c2-bb33-816edfc60f53) | ![image](https://github.com/brave/brave-browser/assets/387249/8a730ffc-812c-4ff2-bd09-0fbb33fef93d) | ![image](https://github.com/brave/brave-browser/assets/387249/0b5e083c-b9ef-42f3-9f28-0739f3daf500) | ![image](https://github.com/brave/brave-browser/assets/387249/6e9e75ac-468b-4305-98ba-c4cff477e545) `Leo Premium` | `Brave VPN` | `Brave Talk Premium` -----------------|--------------|----------------------- ![image](https://github.com/brave/brave-browser/assets/387249/8393d4e0-8b5b-471b-96cb-e88e5152183f) | ![image](https://github.com/brave/brave-browser/assets/387249/9d40565e-0cfe-4f92-a0dc-e599c2980d67) | ![image](https://github.com/brave/brave-browser/assets/387249/a94748e2-5d07-408d-9c42-a7d34d0ebdab) ### purchase (a) specific combination(s) of the above - `PENDING`

Refresh (redeem) credentials - PASSED

### Steps: 1. install `1.68.94` 2. launch Brave on `device A` 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter `issue39132-creds@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` for `Brave VPN` 10. complete Stripe checkout 11. confirm working `Brave VPN` 12. quit Brave 13. switch to a new device, `device B` (`Android 9, same `beta` build) 14. launch Brave 15. log in to `account.bravesoftware.com` using the same @mailinator.com address you used for `device A` 16. click on `Refresh Brave VPN` ### Expected Results: The credentials on `device B` should be valid (`ActiveCredentials`) and mirror those of `device A` (same `expires_at`) ### `device A` `issue39132-creds@...` | `ActiveCredentials`| `expires_at` ----------|-----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/7d6693ca-bc9b-4df9-ba05-11371cba0e65) | ![image](https://github.com/brave/brave-browser/assets/387249/20a31227-20c2-46e9-93f8-74757bba380b) | ![image](https://github.com/brave/brave-browser/assets/387249/02f1d732-7f85-416e-9f2f-215df1c2fe8e) ### `device B` `issue39132-creds@...` | `ActiveCredentials`| `expires_at` ----------|-----------|---------- ![Screenshot_20240620-131921](https://github.com/brave/brave-browser/assets/387249/93103277-074f-42ca-85dc-fac47f47c8e7) | ![Screenshot_20240620-133432](https://github.com/brave/brave-browser/assets/387249/95aab68c-a982-42a8-abc5-5c48daf82578) | ![Screenshot_20240620-133456](https://github.com/brave/brave-browser/assets/387249/158e7ba6-3f60-49ec-8abc-d900b2164e2c) `Brave VPN` example | example | example | example | example ----------|-----------|----------|-----------|----------- ![Screenshot_20240620-132106](https://github.com/brave/brave-browser/assets/387249/557f0a35-98b4-409d-85cb-9cf41fee1f25) | ![Screenshot_20240620-132114](https://github.com/brave/brave-browser/assets/387249/bc0d190a-a90b-4350-837d-d2bbae51025e) | ![Screenshot_20240620-132408](https://github.com/brave/brave-browser/assets/387249/c5973500-80ab-4576-9b8e-4bc9381bb7fa) | ![Screenshot_20240620-132446](https://github.com/brave/brave-browser/assets/387249/3609dd79-1f25-4eee-97b2-6ef1fcc9c95c) | ![Screenshot_20240620-132456](https://github.com/brave/brave-browser/assets/387249/08c2beb1-db43-4ed9-a544-e1e7daa27e6e)

Max limit # of actively-linked/recovered devices, 1.68.x - PASSED

### Steps: * run `Refresh (redeem) credentials` testcase * repeat for `9` more devices (totaling `10`) * confirm no errors linking * attempt redeeming `device A` credentials on device # `11` ### Expected Results: Confirm visible, logical error message (`exceeded recovery limit for subscription` from https://github.com/brave-intl/subscriptions/pull/570/files#diff-a5ce247e55d5a20707517e34bef620f2eb369b4f9b8fa44fdfb2c18a702418e8R29)? `issue39132-linking@...` | `1st` link | `2nd` link | `3rd` link | `4th` link | `5th` link --------------------------|---------|----------|----------|----------|--------- ![image](https://github.com/brave/brave-browser/assets/387249/d247729b-1d67-450e-9477-d6eeefc40670) | Screen Shot 2024-06-20 at 2 12 11 PM | Screenshot 2024-06-20 at 2 27 51 PM | Screenshot 2024-06-20 at 2 44 17 PM | ![Screenshot_20240620-145341](https://github.com/brave/brave-browser/assets/387249/4dbb5433-7751-4b94-8415-a07d70422d02) | ![image](https://github.com/brave/brave-browser/assets/387249/8e29a0a0-41a3-40ad-a5ce-2fa47efff68a) `6th` link | `7th` link | `8th` link | `9th` link | `10th` link | `mailinator inbox` ---------|----------|---------|---------|------------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/30fff624-c52d-4706-8a0e-eb55d08b25bb) | Screenshot 2024-06-20 at 4 21 05 PM | Screen Shot 2024-06-20 at 4 38 05 PM | Screenshot 2024-06-20 at 4 47 47 PM | ![Screenshot_20240620-165736](https://github.com/brave/brave-browser/assets/387249/ece931a5-0616-4ced-aaf0-4447e576deac) | ![image](https://github.com/brave/brave-browser/assets/387249/62557dd4-826a-486d-ad21-6422c11cf036) 1 - `macOS-x64` (work laptop) 2 - `macOS-x64` (personal laptop) 3 - `macOS-arm64` (work laptop) 4 - Android 9, Google Pixel XL (work phone) 5 - `Win11-x64` (personal desktop) 6 - `Win10-x64` (work laptop; **original device**) 7 - `macOS-x64` (personal laptop, _new profile_) 8 - `macOS-x64` (work laptop, _new profile_) 9 - `macOS-arm64` (work laptop, _new profile_) 10 - Android 9, Google Pixel XL (work phone)

Max limit # of actively-linked/recovered devices, 1.61.120 - PASSED

### Steps: * run `Refresh (redeem) credentials` testcase * repeat for `9` more devices (totaling `10`) * confirm no errors linking * attempt redeeming `device A` credentials on device # `11` ### Expected Results: Confirm visible, logical error message (`exceeded recovery limit for subscription` from https://github.com/brave-intl/subscriptions/pull/570/files#diff-a5ce247e55d5a20707517e34bef620f2eb369b4f9b8fa44fdfb2c18a702418e8R29)? `issue39132-link161@...` | `1st` link | `2nd` link | `3rd` link | `4th` link | `5th` link --------------------------|---------|----------|----------|----------|--------- ![image](https://github.com/brave/brave-browser/assets/387249/5844bac3-e691-410c-a2c2-69071e77c64a) | Screen Shot 2024-06-21 at 11 15 47 AM | Screenshot 2024-06-21 at 11 58 29 AM | ![Screenshot_20240621-120933](https://github.com/brave/brave-browser/assets/387249/a2403014-bd70-4ee5-a101-157177f5c835) | ![image](https://github.com/brave/brave-browser/assets/387249/103bfffd-e65e-4b4b-9f20-f869dcc1368c) | ![image](https://github.com/brave/brave-browser/assets/387249/32d0cc6c-4b2c-4539-8cba-fc3097423a06) `6th` link | `7th` link | `8th` link | `9th` link | `10th` link | `mailinator inbox` ---------|----------|---------|---------|------------|---------- Screen Shot 2024-06-21 at 12 47 54 PM | Screenshot 2024-06-21 at 12 53 36 PM | ![Screenshot_20240621-130435](https://github.com/brave/brave-browser/assets/387249/1abe8eba-d011-4852-b6c4-8d529d84e3fe) | Screen Shot 2024-06-21 at 1 13 49 PM | ![image](https://github.com/brave/brave-browser/assets/387249/bc484760-2833-4e05-999b-0cf2ed085322) | ![image](https://github.com/brave/brave-browser/assets/387249/3e45148c-c913-4305-8823-b679a096e088) 1 - `macOS-x64` (work laptop) 2 - `macOS-arm64` (work laptop) 3 - Android 9, Google Pixel XL (work phone) 4 - `Win11-x64` (personal desktop) 5 - `Win10-x64` (work laptop; **original device**) 6 - `macOS-x64` (work laptop, _new profile_) 7 - `macOS-arm64` (work laptop, _new profile_) 8 - Android 9, Google Pixel XL (work phone) 9 - `macOS-x64` (work laptop, _new profile_) 10 - `Win10-x64` (work laptop, _new profile_)

Auto-renew (within 5 days of exp.), 1.68x - PASSED

### Steps: 1. install `1.68.94` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic-auth username/password 5. enter `leo-autorenew@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` for `Leo Premium` 10. complete Stripe checkout 11. open `brave://skus-internals` 12. confirm `created_at` and `expires_at` are 1 month apart 13. quit Brave 14. open `Local State.json` in a text editor 15. set all credentials' dates (`valid_from`, `valid_to`, `expires_at`, etc.) to be in the past 16. relaunch Brave 17. wait a couple minutes 18. check `brave://skus-internals` ### `Original launch`: example | example | example | example | example ----------|-----------|----------|-----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/573a4070-d7ea-4101-be51-3c8be74e3896) | ![image](https://github.com/brave/brave-browser/assets/387249/cc484828-b599-42c2-9a87-ece5c04d65af) | ![image](https://github.com/brave/brave-browser/assets/387249/0f3fed9b-a929-4727-8b84-c8bd42513dd6) | ![image](https://github.com/brave/brave-browser/assets/387249/2268ed38-e38d-4e15-aeb3-626715bdf84b) | ![image](https://github.com/brave/brave-browser/assets/387249/b4d5a4c9-49cd-4fa5-b688-26803e56d010) ### `Edited "Local State.json"`: (set all `valid_from`, `valid_to`, and `expires_at` dates to be in the past) ![image](https://github.com/brave/brave-browser/assets/387249/93f61260-585a-49b1-ac31-9ed655194926) ### `After relaunch`: example | example | example | example | example -----------|----------|-----------|----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/f25e6d9d-d1f5-48b0-82b5-916ca07e404a) | ![image](https://github.com/brave/brave-browser/assets/387249/9fc2ade2-b15a-4298-9e34-8bd2fada3b37) | ![image](https://github.com/brave/brave-browser/assets/387249/a9c9fd90-97c1-4447-91c7-1ecc1b7e443e) | ![image](https://github.com/brave/brave-browser/assets/387249/f16ac273-8b67-464d-b5ac-67d38c53a53d) | ![image](https://github.com/brave/brave-browser/assets/387249/ed9c1009-fc0c-4a19-9f40-520a5fec8d7c) ### Confirmed: * `Leo Premium` shows as `ActiveCredentials` in `brave://skus-internals` with a valid, extended `expires_at` value, which is 1 month past the initial `expires_at` * `Leo Premium` summarized a `vox.com` article via `Claude 3 Sonnet` over the `Premium` endpoint

Auto-renew (within 5 days of exp.), 1.61.120 - PASSED

### Steps: 1. install `1.61.120` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic-auth username/password 5. enter `leo-autorenew-old@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` for `Leo Premium` 10. complete Stripe checkout 11. open `brave://skus-internals` 12. confirm `created_at` and `expires_at` are 1 month apart 13. quit Brave 14. open `Local State.json` in a text editor 15. set all credentials' dates (`valid_from`, `valid_to`, `expires_at`, etc.) to be in the past 16. relaunch Brave 17. wait a couple minutes 18. check `brave://skus-internals` ### `Original launch`: example | example | example | example | example ----------|-----------|----------|-----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/6851ea22-4ed0-4c24-8ccf-4681ee9d35e7) | ![image](https://github.com/brave/brave-browser/assets/387249/96d0a39d-f0eb-4f20-a67f-aee61383b475) | ![image](https://github.com/brave/brave-browser/assets/387249/f3d0db1f-c276-48d4-88db-3dd20b900665) | ![image](https://github.com/brave/brave-browser/assets/387249/5dafdff8-9f19-423a-9f8a-324754f6d759) | ![image](https://github.com/brave/brave-browser/assets/387249/5c300b65-19d9-45bc-aeec-aabf57a01ef6) ### `Edited "Local State.json"`: (set all `valid_from`, `valid_to`, and `expires_at` dates to be in the past) ![image](https://github.com/brave/brave-browser/assets/387249/130b0f90-1766-41b3-94c6-4542beb51748) ### `After relaunch`: example | example | example | example | example -----------|----------|-----------|----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/fa696bc2-ac83-4b58-a85f-0316cf41d5d6) | ![image](https://github.com/brave/brave-browser/assets/387249/93a65842-789b-4422-bef5-db628f7923de) | ![image](https://github.com/brave/brave-browser/assets/387249/707a8ff1-98a3-4c29-8413-2df7d755d78a) | ![image](https://github.com/brave/brave-browser/assets/387249/b13c3a25-66e8-4d6b-b476-ce92430c21f2) | ![image](https://github.com/brave/brave-browser/assets/387249/3e179bed-22c3-4b18-8eec-d5ce05aabd18) ### Confirmed: * `Leo Premium` shows as `ActiveCredentials` in `brave://skus-internals` with a valid, extended `expires_at` value, which is 1 month past the initial `expires_at` * `Leo Premium` summarized a `vox.com` article via `Claude 3 Sonnet` over the `Premium` endpoint

Cancellation - PASSED

### Steps: 1. install `1.68.94` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic-auth username/password 5. enter `issue39132-cancel@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` button 10. complete Stripe checkout 11. confirm `You have active credentials loaded!` green banner and messaging* cancel VPN 12. click on `Cancel plan` 13. click on `Cancel subscription` 14. confirm `Your plan has been canceled.` message 15. click on `Return to account` ### Confirmed: * Product shows as `Canceled` in `brave://skus-internals`, with an appropriate `expires_at` value 1 month from the original `created_at` date * `Leo Premium` still works example | example | example | example | example | example | example ----------|----------|-----------|-----------|-----------|----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/e79c5a77-893f-4fe7-b8e0-c4560c3a78f5) | ![image](https://github.com/brave/brave-browser/assets/387249/3164d782-3df6-439a-8726-5fbb16f85187) | ![image](https://github.com/brave/brave-browser/assets/387249/43be8c86-7e1d-479c-b6b3-7bef76033afa) | ![image](https://github.com/brave/brave-browser/assets/387249/4e62f9f1-0399-4881-8fb0-45ca3f73f4c4) | ![image](https://github.com/brave/brave-browser/assets/387249/16538eb6-2b18-4724-a471-b82b42a51c96) | ![image](https://github.com/brave/brave-browser/assets/387249/b9fc5140-bedf-47f8-ae04-37f2e6958e8b) | ![image](https://github.com/brave/brave-browser/assets/387249/73efd23b-b841-4638-b45e-bf020b7279c4)

Renewal - PASSED

### Steps: 1. run `Cancellation` test, above 2. click on `Renew plan` 3. finish `Stripe` checkout ### Confirmed: * Product shows as `ActiveCredentials` in `brave://skus-internals` with a valid, extended `expires_at` value * `Leo Premium` works example | example | example | example | example ----------|-----------|----------|-----------|---------- ![image](https://github.com/brave/brave-browser/assets/387249/f09a2479-5db3-4cd1-ac73-a87498176ed1) | ![image](https://github.com/brave/brave-browser/assets/387249/5f4d763e-affa-4008-8944-304c2799f48b) | ![image](https://github.com/brave/brave-browser/assets/387249/373c71de-eff9-42ca-ba15-a82b417f082e) | ![image](https://github.com/brave/brave-browser/assets/387249/309e2981-73d0-4b35-b127-3f8ab1d000a5) | ![image](https://github.com/brave/brave-browser/assets/387249/39f16174-d96e-4285-97e8-52a13ba3b3e9)

Encountered/logged:

MadhaviSeelam commented 3 months ago

Verification PASSED using

Brave | 1.68.94 Chromium: 126.0.6478.114 (Official Build) beta (64-bit)
-- | --
Revision | 8981faf58380240eab6e999e6bf06f9ed9314336
OS | Windows 11 Version 23H2 (Build 22631.3737)

Purchases - PASSED

purchase VPN on device A (Win 11 x64) 1. install [appropriate Brave version] 2. launch Brave on `device A` (with flags: --env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev) 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter @mailinator.com test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` for `Brave VPN` 10. complete Stripe checkout 11. confirm `Brave VPN` working as expected - subscribed to VPN on device A - subscriber: refresh39132vpn1@mailinator.com - created_at:"2024-06-27T23:32:48.061516", - expires_at:"2024-07-27T23:33:18.274897" - id:"0e9c3bcb-d978-4041-b802-940c8b3f3d8f" #### Confirmed successful VPN subscription created credentials loaded | vpn connection | brave://skus-internals | creds | active_credentials| order info | ------ | ------ | ------- | ------- | ------ | ------- ![image](https://github.com/brave/brave-browser/assets/98358127/b780fede-0f35-46f7-bffe-925c029d36b8)|![image](https://github.com/brave/brave-browser/assets/98358127/aa1b3398-fed0-409b-ad9d-034c8ba7d5da)|![image](https://github.com/brave/brave-browser/assets/98358127/a2074023-7226-42e4-947d-84d2de43c29c)|![image](https://github.com/brave/brave-browser/assets/98358127/ed87d67e-e503-4ca4-82eb-f71964f6b8d9)|![image](https://github.com/brave/brave-browser/assets/98358127/a1504afa-428d-4ba3-8809-7e48d7ee3bb2)|![image](https://github.com/brave/brave-browser/assets/98358127/2f2457e2-b673-40a4-af5e-ac1008d6086a)
purchase Leo on device B (Win 11 x64) 1. install [appropriate Brave version] 2. launch Brave on `device A` (with flags: --env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev) 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter @mailinator.com test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` for `Leo Premium` 10. complete Stripe checkout 11. confirm `Leo Premium` working as expected - subscribed to Leo on device B - subscriber: refresh39132leo627@mailinator.com - created_at:"2024-06-27T21:55:50.692320", - expires_at:"2024-07-27T21:56:19.519496" #### Confirmed able to summarize with Leo premium subscription Leo subscription| expires_at| active_credentials| order info ------ | ------ | ------- | ------- ![image](https://github.com/brave/brave-browser/assets/98358127/3fe38700-06ae-4ca5-89e2-18d56d34bbaf)|![image](https://github.com/brave/brave-browser/assets/98358127/d30f1487-16df-4190-ae55-bca27ebc7209)|![image](https://github.com/brave/brave-browser/assets/98358127/3eec428c-2aaf-4f68-a0d7-f941513f4d55)|![image](https://github.com/brave/brave-browser/assets/98358127/6d292b06-add1-4ecc-ac2f-098090fece2d)

purchase VPN + Leo ### Steps: 1. install `1.68.92` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter `leo39132vpn630@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` button on the `Brave VPN` section 10. complete Stripe checkout 11. confirm `You have active credentials loaded!` green banner and messaging 12. click on `Plans` 13. click on `Start free trial` on the `Leo Premium` section 14. complete Stripe checkout ### Confirmed page summarization over `Premium` using `Mixtral` ### Confirmed `Brave VPN` successfully connected to default location example | example | example | example | example | example ----------|-----------|----------|-------- | ------ | -------- ![image](https://github.com/brave/brave-browser/assets/98358127/72244224-05a3-4da4-a151-2a1665c2d644)|![image](https://github.com/brave/brave-browser/assets/98358127/172a376f-e059-4c91-8d09-0b67fb534ca4)|![image](https://github.com/brave/brave-browser/assets/98358127/1b0f094e-98fe-4ecb-8cfd-29732929e105)|![image](https://github.com/brave/brave-browser/assets/98358127/10aa3c12-76e2-4627-8eac-f6e463503715)|![image](https://github.com/brave/brave-browser/assets/98358127/1e40f1d2-8f0b-4ee2-af9a-a85a76bc7a88)|![image](https://github.com/brave/brave-browser/assets/98358127/a5ab32d8-270e-4282-966c-12f9ce29e558)
purchase Brave Talk Premium ### Steps: 1. install `1.68.92` 2. load `account.bravesoftware.com` 3. enter basic auth username/password 4. enter `talk39132subscriber630@mailinator.com` test address 5. click `Get login link` 6. click on the `Log in to Brave` link in the resulting email 7. click on `Browse plans` 8. click on `Start free trial` button for the `Brave Talk Premium` product 8. complete Stripe checkout 10. confirm `Brave Talk Premium` page, with `Start Premium call` button -Confirmed `Brave Talk Premium` experience (including recording) example | example | example | example ---------|-----------|-----------|------ ![image](https://github.com/brave/brave-browser/assets/98358127/df79c9d9-5224-40e4-b7d6-541cc71addf5)|![image](https://github.com/brave/brave-browser/assets/98358127/3b75995d-7094-424d-87dc-ca1b3dbb8f77)|![image](https://github.com/brave/brave-browser/assets/98358127/27071f22-1222-48e4-87f9-5f8b3717e8af)|![image](https://github.com/brave/brave-browser/assets/98358127/0ae372bb-534d-4609-b826-bc24dd99db22)
purchase Brave Search Premium ### Steps: 1. install `1.68.94` 2. load `account.brave.software.com` 3. enter basic auth username/password 4. enter `search71brave39132@mailinator.com` test address 5. click `Get login link` 6. click on the `Log in to Brave` link in the resulting email 7. click on `Browse plans` 8. click on `Buy now` button for the `Brave Search Premium` product 8. complete Stripe checkout ### Confirmed `Thanks for supporting independent search! You now have full access to Brave Search Premium, and ad-free search results. Enjoy!` messaging **NOTE**: Search was also purchased via `account.bravesoftware.com` (`staging`) but there is no `search` env. on `staging`, so `development` was used for the above example | example ----------|---------- ![image](https://github.com/brave/brave-browser/assets/98358127/f12c3499-6870-4514-b7b8-ab2fcfdb5a13)|![image](https://github.com/brave/brave-browser/assets/98358127/3e36b439-f170-4042-8046-53ba4b7242fb)

purchase all Premium products - PASSED

1. install `1.68.94` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic auth username/password 5. enter `issue39132-all@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. click on `Browse plans` 9. click on `Start free trial` button on the `Brave VPN` section 10. complete Stripe checkout 11. confirm `You have active credentials loaded!` green banner and messaging 12. click on `Plans` 13. click on `Start free trial` on the `Leo Premium` section 14. complete Stripe checkout 19. click on `Plans` 20. click on `Start free trial` on the `Brave Talk Premium` section 21. complete Stripe checkout 22. click on `Plans` 23. click on `Buy now` on the `Brave Search Premium` section ### Confirmed working credentials for `Leo`, `Brave VPN`, and `Brave Talk Premium` (search has no staging; verified separately on `account.brave.software.com` (`dev`) `Leo Premium` | `Brave VPN` | `Brave Talk Premium` | `Brave Search Premium` ----------|-----------|----------|---------- ![image](https://github.com/brave/brave-browser/assets/98358127/afe680e2-b0ce-453d-a914-d14c80d7e8d6)|![image](https://github.com/brave/brave-browser/assets/98358127/65b87a5b-d6fc-4565-93d7-31e547a0dcf2)|![image](https://github.com/brave/brave-browser/assets/98358127/6c791a49-202b-4fdd-a93d-0df4d334f6fd)|![image](https://github.com/brave/brave-browser/assets/98358127/f12c3499-6870-4514-b7b8-ab2fcfdb5a13) `Leo Premium` | `Brave VPN` | `Brave Talk Premium` -----------------|--------------|----------------------- ![image](https://github.com/brave/brave-browser/assets/98358127/9af1aebb-17be-411f-84f6-d95bcb48e695)|![image](https://github.com/brave/brave-browser/assets/98358127/b8533ada-1a9e-4994-84ec-52506865a6b3)|![image](https://github.com/brave/brave-browser/assets/98358127/dda5d98e-e0c3-41fc-859a-637f0b2207ae)

Refresh (redeem) credentials - PASSED

Redeem VPN credentials on device B (Win 11 x64) 1. Continue from VPN subscription Purchase 2. switch to a new device, `device B` 3. launch Brave 4. log in to `account.bravesoftware.com` using the same `refresh39132vpn1@mailinator.com` address you used for `device A` 5. click on `Refresh VPN` ### Expected Results: Confirmed VPN credentials on `device B` are valid (`ActiveCredentials`) and mirror those of `device A - VPN ` (same `expires_at`) - expires_at:"2024-07-27T23:33:18.274897" VPN subscription refresh| credentials loaded | vpn connection | brave://skus-internals | creds | active_credentials| order info ------ | ------ | ------- | ------- | ------ | ------- | ------- ![image](https://github.com/brave/brave-browser/assets/98358127/2c3c5e07-d30a-4e4f-9d4f-f6e2a21b7d12)|![image](https://github.com/brave/brave-browser/assets/98358127/8a788fcd-2e07-42c5-81a1-184cf4d59d39)|![image](https://github.com/brave/brave-browser/assets/98358127/6a9e9eba-0ed9-4e5e-97a1-e936e80e3e77)|![image](https://github.com/brave/brave-browser/assets/98358127/d9421c59-4afd-40fb-b94b-3a2d90b2825f)|![image](https://github.com/brave/brave-browser/assets/98358127/8bc92885-eed7-468d-ba03-b2ae31cf65bb)|![image](https://github.com/brave/brave-browser/assets/98358127/46bccbb9-d2b8-4e36-a59d-a87789a77650)|![image](https://github.com/brave/brave-browser/assets/98358127/b7ec3f9b-a8c2-4bb8-b7aa-279b3aa85e74)
Redeem Leo credentials from device B on device A (Win 11 x64) #### Confirmed Leo credentials on `device A` are valid (`ActiveCredentials`) and mirror those of `device B - Leo` (same `expires_at`) - `expires_at:"2024-07-27T21:56:19.519496"` Leo subscription refresh| credentials loaded | Leo summary| brave://skus-internals| active_credentials| order info ------ | ------ | ------- | ------- | ------ | ------- ![image](https://github.com/brave/brave-browser/assets/98358127/61ec0d37-4472-4b46-b0a8-50d5b5de23d2)|![image](https://github.com/brave/brave-browser/assets/98358127/d73e6df3-6112-4998-a516-b462269398f6)|![image](https://github.com/brave/brave-browser/assets/98358127/62461497-dc0f-4693-a473-ebb2d8ce1af6)|![image](https://github.com/brave/brave-browser/assets/98358127/09f44d85-366a-4b8f-bcb5-e15aed29695c)|![image](https://github.com/brave/brave-browser/assets/98358127/d55b8e40-d573-44ca-80d9-fda120eb47c5)|![image](https://github.com/brave/brave-browser/assets/98358127/b3b8cd8c-9bca-40ac-8f1e-2a6ba16d533c)
Redeem VPN & Leo credentials on Android 14 device - PASSED 1. Installed 1.68.94 2. launched Brave on Android 3. opened account.bravesoftware.com and authenticated with basic auth 4. linked `device A VPN credentials` - `refreshvpn39132mdrtest@mailinator.com` 5. linked `device B Leo credentials` - `refresh39132leo627@mailinator.com` example | example | example ------- | ------- | ------ ![screenshot_20240621_093839_brave_-_beta_920](https://github.com/brave/brave-browser/assets/98358127/0fb2c8d4-94e9-431e-933d-083e774c2fe4)|![screenshot_20240621_164828_brave_-_beta_120](https://github.com/brave/brave-browser/assets/98358127/a7e15789-d19c-400c-8819-e46a2575398c)|![screenshot_20240621_132134_brave_-_beta_920](https://github.com/brave/brave-browser/assets/98358127/01a63683-95dc-47e0-97c7-524a744784fc) - Linked `device B Leo credentials` - `refresh39132leo627@mailinator.com` - PASSED Leo subscription refresh| credentials loaded | Leo summary| brave://skus-internals| active_credentials| order info ------ | ------ | ------- | ------- | ------ | ------- ![screenshot_20240629_085736_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/c26a39b6-12ff-4963-9a7f-806cf6839b78)|![screenshot_20240629_085754_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/8dadfaad-1186-41d7-8c51-a0707d2334da)|![screenshot_20240629_085926_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/25760517-709a-46ef-bb7e-2d4b5fe12004)|![screenshot_20240629_090024_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/0b761f5c-414a-4835-9988-487087410db8)|![screenshot_20240629_090927_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/191c6758-34da-48cc-a6d2-4161e9557e76)|![screenshot_20240629_090303_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/0ec95383-dffb-41ce-a4f1-737996349e65)

Max limit # of actively-linked/recovered devices, 1.68.x - Passed

Redeem credentials `refresh39132leo627@mailinator.com` within 24 hours on below devices Device 1 - Win 11 x64 Device 2 - Android 14 Device 3 - Win 11 arm64 Device 4 - macOS arm64 Device 5 - Win 11 x64 Device 6 - Win 10 x64 (personal laptop) Device 7 - macOS intel (personal laptop) Device 8 - Win 11 x64 (new install & new profile) Iteration 1: Redeem failed after Device 6. Device 1 | Device 2| Device 3 | Device 4 | Device 5 | Device 6 | Device 7 | Device 8 | ----- | ----- | ----- | ----- | ----- | ----- | -------- | ------ ![image](https://github.com/brave/brave-browser/assets/98358127/67ffbd79-9bfc-47d8-a04e-03a3423cd191)|![screenshot_20240701_091054_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/fbc16f83-7df5-46bc-94c0-4d661bb7a820)|image|image|![image](https://github.com/brave/brave-browser/assets/98358127/3d5c496b-3eed-45f4-a8a8-cb1b925b336f)|![image](https://github.com/brave/brave-browser/assets/98358127/0b11d8ca-e960-4e5c-b76d-d7a915c27e00)|![image](https://github.com/brave/brave-browser/assets/98358127/1f43809a-4e3f-4aa1-b0bd-89407667a42a)|![image](https://github.com/brave/brave-browser/assets/98358127/ecc71078-fb19-4651-a64a-69985229f94c) ---- iteration 2: Device 1: Win 11 x64 Device 2: macOS x64 (personal) Device 3: macOS arm64 Device 4: Win 10 x64 (personal) Device 5: Android 14 Device 6: Win 11 arm64 Device 7: Win 11 x 64 Device 8: Win 11 x64 (new install and new profile) Device 9: macOS arm74 (New profile) Device 10: Win 11 arm64 Device 11: Win 11 x64 (new install & new profile) Device 1 | Device 2| Device 3 | Device 4 | Device 5 | Device 6 | Device 7 | Device 8 | Device 9 | Device 10 | Device 11| email ----- | ----- | ----- | ----- | ----- | ----- | -------- | ------ | ----- | ------ | ----- | ---- ![image](https://github.com/brave/brave-browser/assets/98358127/3a4472e0-f6e7-4ddd-9381-9a5610dc8176)|image|image|![image](https://github.com/brave/brave-browser/assets/98358127/a95c692a-0492-4cbb-a3d2-a037e3719a30)|![screenshot_20240701_143726_brave_-_beta_720](https://github.com/brave/brave-browser/assets/98358127/448e5a19-c81c-4d39-b85e-7125874534e0)|image|![image](https://github.com/brave/brave-browser/assets/98358127/ef581fee-ac22-4497-ae9c-42293031bab2)|![image](https://github.com/brave/brave-browser/assets/98358127/acabec45-75a6-4fcf-9ebb-fdabe3572591)|image|image|![image](https://github.com/brave/brave-browser/assets/98358127/96e97336-c999-4e95-bb65-7bf2ec3d1c33)|![image](https://github.com/brave/brave-browser/assets/98358127/ff8667fc-af0d-4471-9af6-5182de34fa96)

Auto-renew (within 5 days of exp.), 1.68x - PASSED

### Steps: 1. install `1.68.94` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic-auth username/password 5. enter `refresh39132mdrtest1@mailinator.com` test address which was created on 6/ 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. clicked Leo icon in the sidebar 9. Leo AI label shows Premium 11. open `brave://skus-internals` 12. confirm `Active credentials` are shown 13. confirmed created date shows: created_at:"2024-06-20T17:15:52.804698", 14. confirmed expiry date shows: expires_at:"2024-07-27T18:17:26.841464" which is 1 month (7/20) plus 7 days trial. 15. confirmed `Leo Premium` summarized a `usatoday.com.com` article via `Claude 3 Sonnet` over the `Premium` endpoint 16. quit Brave 17. open Local State.json in a text editor 18. set all credentials' dates (valid_from, valid_to, expires_at, etc.) to be in the past 19. relaunch Brave 20. wait a couple minutes 21. check brave://skus-internals Initial launch: Leo credentials loaded| Leo summarization|Leo expiration| brave://skus-internals| example | example | example ----------|-----------|----------|----------- |------ | ---------|-------- ![image](https://github.com/brave/brave-browser/assets/98358127/5a510e48-343e-406e-8aba-c5185faaf54e)|![image](https://github.com/brave/brave-browser/assets/98358127/e8cab993-c064-4ac7-a2b9-3a17fd15b204)|![image](https://github.com/brave/brave-browser/assets/98358127/4cdaba75-461b-4e16-a1f5-0af24751b007)|![image](https://github.com/brave/brave-browser/assets/98358127/b9159b15-5f29-4540-9683-8b47751a2a39)|![image](https://github.com/brave/brave-browser/assets/98358127/9f7c6f43-22f9-44cc-8af6-4e0f9b190042)|![image](https://github.com/brave/brave-browser/assets/98358127/0cdeb6c9-e797-47b5-98dc-aea6a487cf6b)|![image](https://github.com/brave/brave-browser/assets/98358127/4d431fc3-d9a9-4cb9-b5bb-6e0f3144d8b8) After relaunch: example | example | example | example ------ | ------- | ---- | -------- ![image](https://github.com/brave/brave-browser/assets/98358127/e7020531-b72b-49d6-8ffc-e8eb3ac6d234)|![image](https://github.com/brave/brave-browser/assets/98358127/2a0a0526-9e8d-4141-8784-992404937b20)|![image](https://github.com/brave/brave-browser/assets/98358127/33f460b7-607d-4930-be30-71279fc03a49)|![image](https://github.com/brave/brave-browser/assets/98358127/9896e26f-e87d-44c7-8ece-eccc3c1f1e92) Confirmed: - Leo Premium shows as ActiveCredentials in brave://skus-internals with a valid, extended expires_at value, which is 1 month past the initial expires_at - Leo Premium summarized a usatoday.com article via Mistral over the Premium endpoint

Auto-renew (within 5 days of exp.), 1.61.120 - PASSED

### Steps: 1. install `1.61.120` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic-auth username/password 5. enter existing `leo3brave@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. subscription page shows `Refresh Leo` button 9. open `brave://skus-internals` 10. confirm created_at and expires_at are 1 month apart - "created_at\":\"2024-06-05T21:09:41.296494\ - "expires_at\":\"2024-07-12T22:10:59.009337\" 11. quit Brave 12. open `Local State.json` in a text editor 13. set all credentials' dates (`valid_from`, `valid_to`, `expires_at`, etc.) to be in the past 14. relaunch Brave 15. wait a couple minutes 16. check `brave://skus-internals` ### `Original launch`: example | example | example | example | example | example ----------|-----------|----------|-----------|----------|--------- image|![image](https://github.com/brave/brave-browser/assets/98358127/7f2b4b70-1803-4d3e-9132-a90f332101be)|![image](https://github.com/brave/brave-browser/assets/98358127/47d1ede2-7e4e-4621-b172-52e662786afc)|![image](https://github.com/brave/brave-browser/assets/98358127/f8f11111-70f3-4f9d-8abe-fa2fdf07188e)|![image](https://github.com/brave/brave-browser/assets/98358127/88479d0c-3ff7-4801-8682-1ab4dcfa9a58)|![image](https://github.com/brave/brave-browser/assets/98358127/4fa86598-6e24-4b48-ab48-92c23476e4ec) ### `Edited "Local State.json"`: (set all `valid_from`, `valid_to`, and `expires_at` dates to be in the past) example | example ----- | ------ image|image ### `After relaunch`: example | example | example | example | example -----------|----------|-----------|----------|---------- ![image](https://github.com/brave/brave-browser/assets/98358127/cd87779d-0070-4a58-8a11-2f6faec51dc2)|![image](https://github.com/brave/brave-browser/assets/98358127/5910947f-67d7-4bc3-9829-154cc2a96980)|![image](https://github.com/brave/brave-browser/assets/98358127/15839259-f111-423d-a7d1-3cba9c2c806a)|![image](https://github.com/brave/brave-browser/assets/98358127/dc829288-dccc-477f-8307-8fd74023cd25)|![image](https://github.com/brave/brave-browser/assets/98358127/18a17ac5-1d78-44ad-bda0-7589dbe935f1) ### Confirmed: * `Leo Premium` shows as `ActiveCredentials` in `brave://skus-internals` with a valid, `expires_at` value, which is the original `expires_at` * `Leo Premium` summarized a `vox.com` article via `Claude 3 Sonnet` over the `Premium` endpoint

Verify VPN & Leo credentials work as expected after upgrade from1.67.x to 1.68.x - PASSED

VPN credentials on upgrade 1. installed 1.67.119 2. launched Brave with flags 3. opened account.bravesoftware.com and entered basic auth 4. entered `refresh39132vpn1@mailinator.com` test address 5. clicked Get login link 6. clicked on the Log in button to Brave link in the resulting email 7. clicked `Refreshed Brave VPN` button 8. verified Active credentials loaded 9. enabled VPN and confirmed VPN works as expected via https://whatismyipaddress.com 10. closed Brave and renamed the profile `Brave-Browser-Beta` 11. installed 1.68.101 12. relaunched Brave 13. opened subscription page 14. opened `brave://skus-internals` page Confirmed VPN credentials (`ActiveCredentials`) work as expected upon upgrade example | example | example | example | example | example | example ----- | ----- | ----- | ----- | ----- | ----- | ------- ![image](https://github.com/brave/brave-browser/assets/98358127/998e1065-cd19-452a-99f3-75fca696d016)|![image](https://github.com/brave/brave-browser/assets/98358127/b6ce89ce-c6a2-484f-9611-0bc702ea27a6)|![image](https://github.com/brave/brave-browser/assets/98358127/c80114b0-78bc-49a1-a155-1ddca8c49047)|image|![image](https://github.com/brave/brave-browser/assets/98358127/470105d6-51c9-4a1f-9047-c120bbbd9b78)|image|image
Leo credentials on upgrade 1. installed 1.67.119 2. launched Brave with flags 3. opened account.bravesoftware.com and entered basic auth 4. redeemed device B Leo credentials `refresh39132mdrtest1@mailinator.com` 5. closed Brave and renamed the profile `Brave-Browser-Beta` 6. installed 1.68.x 7. relaunched Brave 8. opened subscription page 9. opened `brave://skus-internals` page Confirmed Leo credentials (`ActiveCredentials`) work as expected upon upgrade example | example | example | example | example | example ----- | ----- | ----- | ----- | ----- | ----- ![image](https://github.com/brave/brave-browser/assets/98358127/3c147b88-72ea-4e8b-b5b0-fb6369c4e1f9)|![image](https://github.com/brave/brave-browser/assets/98358127/c191d1c3-9231-47dd-ade1-801da85ad2b7)|![image](https://github.com/brave/brave-browser/assets/98358127/5bfd534e-c5b8-46f6-8699-3b10c0e41f47)|![image](https://github.com/brave/brave-browser/assets/98358127/821488c8-53e7-4479-acdd-96834ff645e6)|![image](https://github.com/brave/brave-browser/assets/98358127/b7d9b1f9-4045-427d-b9d8-7c43e0e125a7)|![image](https://github.com/brave/brave-browser/assets/98358127/6c464f40-67d1-4d14-806d-51c9050646f1)

Cancellation - PASSED

### Steps: 1. install `1.68.94` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic-auth username/password 5. enter existing subscription email address `leo2brave31@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. clicked `Refresh Leo` button 9. confirm `You have active credentials loaded!` green banner and messaging* cancel VPN 10. click on `Cancel plan` 11. click on `Cancel subscription` 12. confirm `Your plan has been canceled.` message 13. click on `Return to account` 14. closed Brave and relaunched ### Confirmed: * Product shows as `Canceled` in `brave://skus-internals`, with an appropriate `expires_at` value 1 month from the original `created_at` date * `Leo Premium` still works with Claude 3 Sonnet example | example | example | example | example | example | example ----------|----------|-----------|-----------|-----------|----------|---------- ![image](https://github.com/brave/brave-browser/assets/98358127/a2a1149d-64b1-4125-92b1-4ec18b386bcc)|![image](https://github.com/brave/brave-browser/assets/98358127/9a69581f-ab7f-42b0-bb15-03ec46b05c4d)|![image](https://github.com/brave/brave-browser/assets/98358127/00a226bd-62bd-4a5e-a3a9-b5bab1e76877)|![image](https://github.com/brave/brave-browser/assets/98358127/856a3b79-917e-4822-bd06-e0aba88609bd)|![image](https://github.com/brave/brave-browser/assets/98358127/88b5b0b5-d7dd-45d2-bf02-e9bca1d91131)|![image](https://github.com/brave/brave-browser/assets/98358127/dd15f9ce-ba96-49d3-a476-4abddba72931)|![image](https://github.com/brave/brave-browser/assets/98358127/09def74b-5927-4be0-8972-bd538e38fbc1)

Renewal - PASSED

### Steps: 1. install `1.68.94` 2. launch Brave using `--env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. load `account.bravesoftware.com` 4. enter basic-auth username/password 5. enter existing subscription email address `leo3brave35742@mailinator.com` test address 6. click `Get login link` 7. click on the `Log in to Brave` link in the resulting email 8. clicked Browse plans button 9. got yellow banner on top of Leo Premium plan with the message `Your subscription expired on May 02, 2024` message on Plans 10. clicked `Renew plan for Leo` 11. completed `Stripe` checkout 12. Got green banner with `You have active credentials loaded!` message 13. Plans page show green banner `Your current plan` for Leo premium ### Confirmed: * Product shows as `ActiveCredentials` in `brave://skus-internals` with a valid, extended `expires_at` value expires_at:"2024-07-30T19:45:00.277330", * `Leo Premium` works * Confirmed separate order created with new `created_at` and `expires_at dates` example | example | example | example | example | example ----------|-----------|----------|-----------|----------|--------- ![image](https://github.com/brave/brave-browser/assets/98358127/ad70130d-5dd8-47f1-ac7c-b1426edef2b5)|![image](https://github.com/brave/brave-browser/assets/98358127/aee340f6-46e5-4a8b-9f51-176f72a235d3)|![image](https://github.com/brave/brave-browser/assets/98358127/58875b19-c41a-48ed-b943-37ea45e1b05c)|![image](https://github.com/brave/brave-browser/assets/98358127/0d1fa5d4-5386-4979-84cb-b45b5329549d)|![image](https://github.com/brave/brave-browser/assets/98358127/499f7ae5-21a7-43c9-9be7-36731e885417)|![image](https://github.com/brave/brave-browser/assets/98358127/840e4bb4-13a6-4670-8509-17834867ba12)
stephendonner commented 3 months ago

Verification PASSED using

Brave | 1.68.105 Chromium: 126.0.6478.126 (Official Build) beta (arm64)
-- | --
Revision | 0f19763468e437ae45d4603935bce4bb0a941333
OS | macOS Version 13.6.4 (Build 22G513)

Shared Steps:

1. installed `1.68.105` 2. launched Brave using `--enable-logging=stder --rewards=staging=true,debug=true --env-leo=staging --env-ai-chat.bsg=dev --env-ai-chat-premium.bsg=dev` 3. loaded `account.bravesoftware.com` 4. entered `july01@mailinator.com` 5. clicked on `Get login link` 6. clicked on `Log in to Brave` in the resulting email

Purchase VPN - PASSED

### Steps: 1. (continued from `Shared Steps`) 2. on `account.bravesoftware.com`, clicked on `Start free trial` for the `Brave VPN` product 3. finished the `Stripe`-checkout flow 4. confirmed I was prompted to add the `Brave Beta VPN` interface on `macOS` 5. clicked `Add` 6. connected/switched servers/POPs example | example | example | example | example | example | example | example ---------|----------|---------|----------|--------|-----------|---------|----------- Screenshot 2024-07-01 at 12 57 21 PM | Screenshot 2024-07-01 at 12 58 10 PM | Screenshot 2024-07-01 at 12 58 14 PM | Screenshot 2024-07-01 at 12 59 23 PM | Screenshot 2024-07-01 at 12 59 27 PM | Screenshot 2024-07-01 at 12 59 31 PM | Screenshot 2024-07-01 at 12 59 36 PM | Screenshot 2024-07-01 at 12 59 53 PM

Cancellation - PASSED

### Steps: 1. (continued from `Purchase VPN`, above) 2. loaded `account.bravesoftware.com` using the `july01@mailinator.com` account 3. clicked on `Cancel plan` 4. clicked on `Cancel subscription` 5. clicked on `Return to account` ### Confirmed `Your plan has been canceled...` text and new `Renew plan` link example | example | example | example ---------|---------|----------|--------- Screenshot 2024-07-01 at 2 43 52 PM | Screenshot 2024-07-01 at 2 43 58 PM | Screenshot 2024-07-01 at 2 44 01 PM | Screenshot 2024-07-01 at 2 44 04 PM example | example | example | example | example ---------|---------|----------|---------|---------- Screenshot 2024-07-01 at 2 44 15 PM | Screenshot 2024-07-01 at 2 44 25 PM | Screenshot 2024-07-01 at 2 45 00 PM | Screenshot 2024-07-01 at 2 45 06 PM | Screenshot 2024-07-01 at 2 45 22 PM

Renewal - PASSED

### Steps: 1. (continued from `Cancellation`, above) 2. returned to `account.bravesoftware.com` 3. clicked `Renew plan` 4. completed `Stripe` checkout flow ### Confirmed `"You have active credentials loaded!" messaging, as well as `valid_from` and `expires_at` dates example | example | example | example ---------|----------|---------|---------- Screenshot 2024-07-01 at 2 44 04 PM | Screenshot 2024-07-01 at 2 54 11 PM | Screenshot 2024-07-01 at 2 54 28 PM | Screenshot 2024-07-01 at 2 54 39 PM
stephendonner commented 3 months ago

I consider myself done with Win10-x64 (after conferring with @pavelbrm in Slack threads), but am leaving open until @MadhaviSeelam is able to finish to her satisfaction on Win11-x64 👍

I'm moving on to macOS-arm64 / macOS-x64 (dogfooded heavily) coverage /cc @brave/qa-team esp. @hffvld and @Uni-verse @kjozwiak LMK when/if I can help additionally on mobile 👍

mattmcalister commented 3 months ago

If we could get someone to check the happy path for Auto-renew (within 5 days of exp.), 1.68x on either or both Android and iOS then we could make a call on whether to move ahead and push this. cc @kjozwiak @stephendonner @MadhaviSeelam @pavelbrm @bbondy

Uni-verse commented 3 months ago

Verification completed on Samsung Galaxy S21 & Samsung Galaxy Tab S7 using version:

Brave   1.68.101 Chromium: 126.0.6478.126 (Official Build) beta (64-bit) 
Revision    ffa8411f4c8fe36c0e399f60ef7c24b3cf7d7402
OS  Android 13; Build/TP1A.220624.014; 33; REL

Case: VPN - IAP

- Ensured installing profile and enabling VPN is successful after purchasing via IAP. - Ensured disabling and then re-enabling VPN is working. Example | Example | Example -|-|- ![Screenshot 2024-07-03 at 10 55 56 AM](https://github.com/brave/brave-browser/assets/17885425/4dc3543e-9789-4181-bd0c-f96cfa9bc15a) | ![Screenshot 2024-07-03 at 10 56 01 AM](https://github.com/brave/brave-browser/assets/17885425/cf3d0ee2-d806-4163-8d12-748c5b902566) | ![Screenshot 2024-07-03 at 10 56 12 AM](https://github.com/brave/brave-browser/assets/17885425/42e17cf6-d505-47ac-81c0-b7f22606793e) | ![Screenshot 2024-07-03 at 10 56 24 AM](https://github.com/brave/brave-browser/assets/17885425/ac795b35-9000-4854-b52c-60dde5611557)

Case: Leo - IAP

- Ensured Leo premium status is enabled after completing purchase via IAP. - Ensured premium models are accessible and user is not rate limited. Example | Example | Example -|-|- ![Screenshot 2024-07-02 at 12 33 43 PM](https://github.com/brave/brave-browser/assets/17885425/1e111449-7358-47a1-b524-2b6f33cfde66) | ![Screenshot 2024-07-02 at 12 33 54 PM](https://github.com/brave/brave-browser/assets/17885425/f4c22c40-9185-43f9-9558-f79377172aa5) | ![Screenshot 2024-07-02 at 12 34 06 PM](https://github.com/brave/brave-browser/assets/17885425/bca735de-e54e-4500-9910-4030f27e23ef) | ![Screenshot 2024-07-03 at 11 03 05 AM](https://github.com/brave/brave-browser/assets/17885425/55bb3a54-8052-4044-8e82-dcdc69209a1d)

Case: Linking Receipts

- Ensured linking to staging site (account.bravesoftware.com) is successful for Leo and VPN. Example | Example | Example -|-|- ![Screenshot 2024-07-02 at 2 47 27 PM](https://github.com/brave/brave-browser/assets/17885425/8b0275d0-c48d-4a25-930b-074c2a1a32b7) | ![Screenshot 2024-07-02 at 2 48 23 PM](https://github.com/brave/brave-browser/assets/17885425/4a0c143d-c71c-4e36-a694-77604cc147b9) | ![Screenshot 2024-07-02 at 6 30 50 PM](https://github.com/brave/brave-browser/assets/17885425/f9b69ca4-3800-4aa0-8190-c755d28f5a9d)

Case: Restore Credentials on Android (Purchased on Desktop)

- Ensured loading credentials enables premium for Leo on Android using desktop account. - Ensured that expiration value in the SKU State matches the original order. Example | Example | Example | Example -|-|-|- ![Screenshot 2024-07-02 at 3 41 34 PM](https://github.com/brave/brave-browser/assets/17885425/db32c5df-0e0d-496c-8a04-99a2197dce40) | ![Screenshot 2024-07-02 at 3 43 01 PM](https://github.com/brave/brave-browser/assets/17885425/7073f668-99f0-4658-84cc-e9bda98777f0) | ![Screenshot 2024-07-02 at 3 43 11 PM](https://github.com/brave/brave-browser/assets/17885425/93c5e3cd-75da-4c13-b7e3-5d9574f80ef5) | ![Screenshot 2024-07-02 at 5 01 33 PM](https://github.com/brave/brave-browser/assets/17885425/22c197dc-4b72-4eb0-a01b-2913c0fc6c29)

Case: Restore Credentials on Android (Purchased on Android)

- Ensured loading credentials for Leo and VPN is successful from account site (account.bravesoftware.com) - Ensured that `expires_at` value in SKU State matches the original purchase receipt under `brave://skus-internals` Example | Example | Example | Example | Example -|-|-|-|- ![Screenshot 2024-07-02 at 6 44 11 PM](https://github.com/brave/brave-browser/assets/17885425/f7a7d900-65f7-4853-95b8-720c94dd26bd) | ![Screenshot 2024-07-02 at 6 44 24 PM](https://github.com/brave/brave-browser/assets/17885425/0ae4d980-96f7-4d4f-9657-fcf0a1405fa8) | ![Screenshot 2024-07-02 at 6 44 34 PM](https://github.com/brave/brave-browser/assets/17885425/08f8b945-e77a-4f71-abf0-7aaf06c00a75) | ![Screenshot 2024-07-02 at 6 44 40 PM](https://github.com/brave/brave-browser/assets/17885425/f15cbd98-9efc-466a-8af1-4258ac70e94a) | ![Screenshot 2024-07-02 at 6 45 11 PM](https://github.com/brave/brave-browser/assets/17885425/2261aaaa-f562-4db3-a9c0-7dc77f7eace5) Device A | Device B -|- ![Screenshot 2024-07-02 at 6 34 41 PM](https://github.com/brave/brave-browser/assets/17885425/d2fb590a-86bb-44af-93e8-c508438f828f) | ![Screenshot 2024-07-03 at 11 35 16 AM](https://github.com/brave/brave-browser/assets/17885425/042b87e2-ac49-4524-bab7-a9127a6e7e1e)

Case: Restore Credentials on iOS (Purchased on Android)

- Ensured loading credentials for Leo purchased on Android from staging account site (account.bravesoftware.com) - Ensured that `expires_at` value in SKU State matches the original purchase receipt under `brave://skus-internals` Example | Example | Example | Example -|-|-|- ![IMG_6624](https://github.com/brave/brave-browser/assets/17885425/9e6ed618-c63d-4305-9381-76cbd3ed7640) | ![IMG_6625](https://github.com/brave/brave-browser/assets/17885425/4b8201d7-21c8-4643-8ce3-ba41f4dcba5f) | ![IMG_6626](https://github.com/brave/brave-browser/assets/17885425/ec1c7fd6-1d67-4484-9f63-66eab3a8446b) | ![IMG_6627](https://github.com/brave/brave-browser/assets/17885425/116b7015-1af3-4d97-b56b-ecd0c8c8c0cf)

Case: Verify VPN & Leo credentials work as expected after upgrade

- Ensured VPN and Leo are active after upgrading from `1.67.108` to `1.68.106` with credentials loaded from account site (account.bravesoftware.com) - Ensured that the SKU state is the same after upgrading account site | skus-internals before | skus-internals after | VPN | Leo -|-|-|-|- ![Screenshot 2024-07-03 at 5 02 44 PM](https://github.com/brave/brave-browser/assets/17885425/d295d836-b14b-474a-ae9a-3920609f372d) | ![Screenshot 2024-07-03 at 5 03 07 PM](https://github.com/brave/brave-browser/assets/17885425/3c4c171c-6895-4970-b44b-3baa212b28ea) | ![Screenshot 2024-07-03 at 5 06 18 PM](https://github.com/brave/brave-browser/assets/17885425/c4a65c09-a15c-49cd-9a1d-4c2d0454fbfc) | ![Screenshot 2024-07-03 at 5 06 43 PM](https://github.com/brave/brave-browser/assets/17885425/7c10a992-8ea9-42ab-9754-f8b93c64d5ca) | ![Screenshot 2024-07-03 at 4 37 58 PM](https://github.com/brave/brave-browser/assets/17885425/d6cd48d5-fe89-4ecf-ae44-72f9d63dd299)

Case: Max limit # of actively-linked/recovered devices

- Ensured that exceeding the max limit of recover attempts for an account (original purchased on Android) will show error on account page. Limit was reached using a new profile on an iOS device. Example | Example -|- ![IMG_6639 2](https://github.com/brave/brave-browser/assets/17885425/2b228534-6507-45ef-abc9-15bd88530804) | ![IMG_6640 2](https://github.com/brave/brave-browser/assets/17885425/844e1163-db44-4cc1-947f-e4f0a8b16218)

Case: Auto-renew (within 5 days of exp.), 1.68.x

N/A
Uni-verse commented 3 months ago

Verified on iPhone 12 running iOS 17.5.1 using version 1.68.109

Preconditions:

Enable debug menu and set 3 custom switches in BraveCore Switches to enable staging environment.

--env-leo=staging
--env-ai-chat.bsg=dev
--env-ai-chat-premium.bsg=dev
debug_menu

Case: Loading Credentials:

Example Example Example Example Example
IMG_6646 IMG_6647 IMG_6648 IMG_6649 IMG_6650

Case: Verify VPN & Leo credentials work as expected after upgrade

Example Example Example
IMG_6655 IMG_6656 IMG_6651

Case: Max limit # of actively-linked/recovered devices

Example Example
IMG_6639 3 IMG_6640 3
kjozwiak commented 1 month ago

@mattmcalister believe the above work as been completed and has been shipped/pushed into production. Can we close this one off? Or is there still some pending QA that needs to be completed?