From 85eb0505a721cec3db3d19de893563f81d05767f Mon Sep 17 00:00:00 2001 From: srirambv Date: Sun, 4 Sep 2022 15:24:19 -0400 Subject: [PATCH] Add Crypto Tests & Reorganize files --- .../brave_sorted_1000.html | 0 .../brave_sorted_3000.html | 0 .../brave_sorted_4000.html | 0 .../brave_sorted_5000.html | 0 .../Android/wikitemplate-ReducedAndroid.md | 0 .../Android/wikitemplate-android.md | 0 .../wikitemplate-minorCRbumpAndroid.md | 0 .../Crypto/wikitemplate-cryptoAndroid.md | 71 +++++++ .../Crypto/wikitemplate-cryptoDesktop.md | 156 ++++++++++++++++ WikiTemplate/Crypto/wikitemplate-cryptoiOS.md | 70 +++++++ .../wikitemplate-majorChromiumBumpUpgrades.md | 44 ++--- .../wikitemplate-minorCRbump-macOS-arm64.md | 0 .../wikitemplate-minorCRbumpDesktop.md | 0 .../Desktop/wikitemplate-ReducedDesktop.md | 0 .../Desktop/wikitemplate-macOS-arm64.md | 0 .../Goupdater/wikitemplate-goupdate.md | 0 .../IPFS/wikitemplate-IPFS.md | 0 .../Tor/wikitemplate-tor-Linux.md | 0 .../Tor/wikitemplate-tor-Windows.md | 0 .../Tor/wikitemplate-tor-macOS(Intel).md | 0 .../Tor/wikitemplate-tor-macOS(arm64).md | 0 .../Tor/wikitemplate-tor.md | 0 .../iOS/wikitemplate-ios.md | 0 .../wikitemplate.md | 6 - brave_testrun_generator.py | 175 +++++++++++++++--- wikitemplate-crypto.md | 43 ----- 26 files changed, 467 insertions(+), 98 deletions(-) rename brave_sorted_1000.html => SampleBookmarks/brave_sorted_1000.html (100%) rename brave_sorted_3000.html => SampleBookmarks/brave_sorted_3000.html (100%) rename brave_sorted_4000.html => SampleBookmarks/brave_sorted_4000.html (100%) rename brave_sorted_5000.html => SampleBookmarks/brave_sorted_5000.html (100%) rename wikitemplate-ReducedAndroid.md => WikiTemplate/Android/wikitemplate-ReducedAndroid.md (100%) rename wikitemplate-android.md => WikiTemplate/Android/wikitemplate-android.md (100%) rename wikitemplate-minorCRbumpAndroid.md => WikiTemplate/Android/wikitemplate-minorCRbumpAndroid.md (100%) create mode 100644 WikiTemplate/Crypto/wikitemplate-cryptoAndroid.md create mode 100644 WikiTemplate/Crypto/wikitemplate-cryptoDesktop.md create mode 100644 WikiTemplate/Crypto/wikitemplate-cryptoiOS.md rename wikitemplate-majorChromiumBumpUpgrades => WikiTemplate/Desktop/Major_CR_Bump/wikitemplate-majorChromiumBumpUpgrades.md (60%) rename wikitemplate-minorCRbump-macOS-arm64.md => WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbump-macOS-arm64.md (100%) rename wikitemplate-minorCRbumpDesktop.md => WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbumpDesktop.md (100%) rename wikitemplate-ReducedDesktop.md => WikiTemplate/Desktop/wikitemplate-ReducedDesktop.md (100%) rename wikitemplate-macOS-arm64.md => WikiTemplate/Desktop/wikitemplate-macOS-arm64.md (100%) rename wikitemplate-goupdate.md => WikiTemplate/Goupdater/wikitemplate-goupdate.md (100%) rename wikitemplate-IPFS.md => WikiTemplate/IPFS/wikitemplate-IPFS.md (100%) rename wikitemplate-tor-Linux.md => WikiTemplate/Tor/wikitemplate-tor-Linux.md (100%) rename wikitemplate-tor-Windows.md => WikiTemplate/Tor/wikitemplate-tor-Windows.md (100%) rename wikitemplate-tor-macOS(Intel).md => WikiTemplate/Tor/wikitemplate-tor-macOS(Intel).md (100%) rename wikitemplate-tor-macOS(arm64).md => WikiTemplate/Tor/wikitemplate-tor-macOS(arm64).md (100%) rename wikitemplate-tor.md => WikiTemplate/Tor/wikitemplate-tor.md (100%) rename wikitemplate-ios.md => WikiTemplate/iOS/wikitemplate-ios.md (100%) rename wikitemplate.md => WikiTemplate/wikitemplate.md (98%) delete mode 100644 wikitemplate-crypto.md diff --git a/brave_sorted_1000.html b/SampleBookmarks/brave_sorted_1000.html similarity index 100% rename from brave_sorted_1000.html rename to SampleBookmarks/brave_sorted_1000.html diff --git a/brave_sorted_3000.html b/SampleBookmarks/brave_sorted_3000.html similarity index 100% rename from brave_sorted_3000.html rename to SampleBookmarks/brave_sorted_3000.html diff --git a/brave_sorted_4000.html b/SampleBookmarks/brave_sorted_4000.html similarity index 100% rename from brave_sorted_4000.html rename to SampleBookmarks/brave_sorted_4000.html diff --git a/brave_sorted_5000.html b/SampleBookmarks/brave_sorted_5000.html similarity index 100% rename from brave_sorted_5000.html rename to SampleBookmarks/brave_sorted_5000.html diff --git a/wikitemplate-ReducedAndroid.md b/WikiTemplate/Android/wikitemplate-ReducedAndroid.md similarity index 100% rename from wikitemplate-ReducedAndroid.md rename to WikiTemplate/Android/wikitemplate-ReducedAndroid.md diff --git a/wikitemplate-android.md b/WikiTemplate/Android/wikitemplate-android.md similarity index 100% rename from wikitemplate-android.md rename to WikiTemplate/Android/wikitemplate-android.md diff --git a/wikitemplate-minorCRbumpAndroid.md b/WikiTemplate/Android/wikitemplate-minorCRbumpAndroid.md similarity index 100% rename from wikitemplate-minorCRbumpAndroid.md rename to WikiTemplate/Android/wikitemplate-minorCRbumpAndroid.md diff --git a/WikiTemplate/Crypto/wikitemplate-cryptoAndroid.md b/WikiTemplate/Crypto/wikitemplate-cryptoAndroid.md new file mode 100644 index 0000000..dd29fda --- /dev/null +++ b/WikiTemplate/Crypto/wikitemplate-cryptoAndroid.md @@ -0,0 +1,71 @@ + +## Onboarding + +- [ ] Verify able to create a wallet by following onboarding +- [ ] Verify not able to take screenshots during onboarding screens +- [ ] Verify able to back up wallet seed phrase during onboarding +- [ ] Verify able to skip back up wallet seed screen to complete onboarding +- [ ] Verify onboarding is shown when trying to interact with Dapp without creating wallet + +## Panel + +- [ ] Verify panel is only shown in URL when a Dapp is trying to interact +- [ ] Verify able to change default network from panel +- [ ] Verify able to change accounts from panel +- [ ] Verify notification dot is shown on wallet icon when an action is pending for Wallet + +## Ethereum + +- [ ] Verify Ethereum account is created as soon as onboarding is completed +- [ ] Verify able to create an Ethereum account can be created from accounts tab +- [ ] Verify able to create an Ethereum account can be created from accounts list screen +- [ ] Verify able to import an Ethereum account via Private Key/JSON file +- [ ] Verify able to submit a Buy ETH transaction +- [ ] Verify able to submit a Send ETH transaction +- [ ] Verify able to perform Swap ETH transaction +- [ ] Verify send transactions using different OS locale. (Refer [brave/brave-browser#24909](https://github.com/brave/brave-browser/issues/24909) for more info) + +## Solana + +- [ ] Verify able to create a Solana account when Solana Mainnet Beta is selected from network picker +- [ ] Verify able to create a Solana account from accounts tab +- [ ] Verify able to create a Solana account can be created from accounts list screen +- [ ] Verify able to send tokens from one Solana account to another +- [ ] Verify able to submit a SOL transaction + +## Network Settings + +- [ ] Verify able to add a custom network via Settings +- [ ] Verify able to change active network to a custom network via portfolio + +## Custom Tokens + +- [ ] Verify able to manually add a custom token +- [ ] Verify able to manually add ERC721 tokens +- [ ] Verify able to add custom tokens via webpage (Coingecko/CoinMarketCap) + +## Dapp Support (Ethereum) + +- [ ] Verify able to connect to a Dapp +- [ ] Verify when a Dapp is trying to interact a toast notification is shown when wallet is locked/wallet icon is not yet shown in URL +- [ ] Verify clicking on the Dapp interaction notification, opens the Panel for Dapp interaction +- [ ] Verify able to connect multiple accounts to a Dapp +- [ ] Verify able to connect/disconnect to Dapp from Panel +- [ ] Verify able to approve/reject Dapp request to change network via panel +- [ ] Verify able to approve/cancel transaction request via panel when interacting with a Dapp +- [ ] Verify able to add a custom network via panel when connected to a Dapp +- [ ] Verify able to switch networks via panel when a Dapp requests network change +- [ ] Verify able to sign messages from Dapp via Wallet panel +- [ ] Verify able to get public encryption key from Dapp via panel +- [ ] Verify able to view decrypt message form Dapp on panel + +## Settings + +- [ ] Verify able to set custom timer on auto-lock +- [ ] Verify able to add/remove a custom network +- [ ] Verify able to set added custom network as default via settings +- [ ] Verfiy able to set/disable Web3 Notification +- [ ] Verify when Web3 Notification settings is disabled, there is no notification dot shown on wallet during Dapp interaction +- [ ] Verify able to clear transactions and nonce information +- [ ] Verify able to reset wallet +- [ ] Verify recreating wallet after reset creates a new account \ No newline at end of file diff --git a/WikiTemplate/Crypto/wikitemplate-cryptoDesktop.md b/WikiTemplate/Crypto/wikitemplate-cryptoDesktop.md new file mode 100644 index 0000000..f00c70c --- /dev/null +++ b/WikiTemplate/Crypto/wikitemplate-cryptoDesktop.md @@ -0,0 +1,156 @@ + +## Onboarding + +- [ ] Verify loading `brave://wallet` on a clean profile shows onboarding flow +- [ ] Verify you are able to complete the onboarding flow to Ethereum create wallet by default +- [ ] Verify you are able to complete the backup seed phrase during onboarding itself +- [ ] Verify you can skip the onboarding from backup wallet screen and still create a wallet +- [ ] Verify when a Dapp interacts without creating wallet opens a new tab and shows onboarding + +## Importing Wallet + +- [ ] Verify with MetaMask extension installed and wallet created, visiting `brave://wallet/crypto/onboarding/import-or-restore` shows option to import account from MetaMask during onboarding +- [ ] Verify error message is shown when trying to use same password as MetaMask and it doesn't meet Brave Wallet's password criteria +- [ ] Verify able to successfully import MetaMask wallet into Brave Wallet +- [ ] Verify with Crypto Wallet Extension installed and wallet created, visiting `brave://wallet/crypto/onboarding/import-or-restore` shows option to import account from old Crypto Wallet Extension +- [ ] Verify error message is shown when trying to use same password as Crypto Wallet Extension and it doesn't meet Brave Wallet's password criteria +- [ ] Verify able to successfully import Crypto Wallet Extension with 12-seed into Brave Wallet +- [ ] Verify able to successfully import Crypto Wallet Extension with 24-seed word into Brave Wallet + +## Panel + +- [ ] Verify when wallet is not created opening the wallet panel shows `Learn More` message. Clicking on it opens `brave://wallet` in a new tab +- [ ] Verify when wallet is created, opening the panel shows default account and selected network and account balance +- [ ] Verify Buy/Send/Swap buttons are available and loads corresponding screens to perform action +- [ ] Verify transaction history button is shown and lists recent transactions for selected network when clicked +- [ ] Verify changing network in panel updates the corresponding account in panel and in portfolio page +- [ ] Verify changing account in panel updates the corresponding network in panel and in portfolio page +- [ ] Verify when a Dapp is connected to wallet account, panel shows a `Connected` state notification +- [ ] Verify when a Dapp connection is revoked, panel shows a `Disconnected` state notification +- [ ] Verify selecting `Connected Sites` from panel menu loads `brave://settings/content/` for Ethereum/Solana based on selected account +- [ ] Verify selecting `View on Block explorer` from panel loads the corresponding account's details on the network block explorer +- [ ] Verify selecting `Help Center` opens a new tab and loads `https://support.brave.com/hc/en-us/articles/4415497656461-Brave-Walllet-FAQ` +- [ ] Verify you are able to lock the wallet from panel menu +- [ ] Verify clicking on the expand button on the top-left of panel loads the wallet page in a new tab + +## Portfolio & Accounts + +- [ ] Verify after creating a wallet it loads portfolio screen by default +- [ ] Verify portfolio page shows balance of all accounts +- [ ] Verify able to show/hide balance on portfolio screen +- [ ] Verify able to search for token in portfolio screen +- [ ] Verify able to filter assets list by specific network via the network dropdown +- [ ] Verify able to sort NFT's and Assets list by balance amount +- [ ] Verify able to add or remove assets from view via `Visible assets` button +- [ ] Verify able to add a new custom asset for specific network +- [ ] Verify able to add hide/remove custom asset via `Visible assets` list +- [ ] Verify able to create a new primary account for Ethereum/Solana/Filecoin via `Create Account` in accounts tab +- [ ] Verify able to import Ethereum/Solana/Filecoin accounts via `Import` option +- [ ] Verify imported accounts are listed under `Secondary Accounts` +- [ ] Verify able to import Ethereum/Solana/Filecoin accounts via `Import from hardware wallet` +- [ ] Verify imported hardware wallet accounts are listed under `Secondary Accounts` +- [ ] Verify Wallet backup message is shown on both portfolio and accounts tab if skipped during onboarding +- [ ] Verify Brave Wallet is not default message is shown when MetaMask is installed and `Brave Wallet (Prefer extensions)` is set as default wallet provider + +## Ethereum + +- [ ] Verify when a new wallet is created Ethereum Account is created but not set as default +- [ ] Verify for a newly created Ethereum wallet, `ETH` and `BAT` tokens are added by default on portfolio screen +- [ ] Verify the account address is same for Ethereum Mainnet and other EVM's +- [ ] Verify able to add a new Ethereum account via the Accounts tab +- [ ] Verify able to import an Ethereum account via `Private Key` or `JSON file` under the import section +- [ ] Verify able to import Ethereum account via hardware keys +- [ ] Verify able to resolve UD/ENS Domains on `Send To` tab + +## Solana + +- [ ] Verify when a new wallet is created Solana Account is created and set as default +- [ ] Verify when `Solana Mainnet Beta` is selected in network dropdown in panel or in widget, it prompts to create a new Solana account +- [ ] Verify selecting `Yes` in the create Solana account modal creates a new Solana account +- [ ] Verify selecting `No` in the create Solana account doesn't create a new Solana account +- [ ] Verify able to add a new Solana account via the Accounts tab +- [ ] Verify able to import an Solana account via `Private Key` under the import section +- [ ] Verify able to import Solana account via hardware keys + +## Filecoin + +- [ ] Verify when a new wallet is created there is no Filecoin account created by default +- [ ] Verify when `Filecoin` is selected in network dropdown in panel or in widget, it prompts to create a new Filecoin account +- [ ] Verify selecting `Yes` in the create Filecoin account modal creates a new Filecoin account +- [ ] Verify selecting `No` in the create Filecoin account modal doesn't create a new Filecoin account +- [ ] Verify able to add a new Filecoin account via the Accounts tab +- [ ] Verify able to import an Filecoin account via `Private Key` under the import section +- [ ] Verify able to import Filecoin account via hardware keys + +## Hardware + +- [ ] Verify able to connect Ledger and import Ethereum accounts +- [ ] Verify able to connect Ledger and import Solana accounts +- [ ] Verify able to connect Ledger and import Filecoin accounts +- [ ] Verify able to connect Trezor and import Ethereum accounts + +## Custom Tokens + +- [ ] Verify able to manually add a ERC721 token +- [ ] Verify able to manually add a custom token for Ethereum/EVM network +- [ ] Verify able to manually add a custom token for Solana network +- [ ] Verify able to add a custom token via webpage (Coingecko/Coinmarketcap) + +## Wallet Settings + +- [ ] Verify Default Ethereum Wallet dropdown is set to `Brave Wallet` as default +- [ ] Verify Default Solana Wallet dropdown is set to `Brave Wallet (prefer extensions)` as default +- [ ] Verify Default Ethereum/Solana Wallet allows to set Brave Wallet as default +- [ ] Verify Default Ethereum/Solana Wallet allows to set it to None +- [ ] Verify with Crypto Wallets Extension flag enabled `Crypto Wallet (deprecated)` is only shown for Default Ethereum Wallet +- [ ] Verify able to change default base currency (USD -> Other) +- [ ] Verify able to change default base cryptocurrency from BTC to other (ETH/LTC/BCH etc) +- [ ] Verify able to update default wallet lock time and works as expected +- [ ] Verify able to clear wallet transaction & nonce information +- [ ] Verify able to add custom network +- [ ] Verify able to set a network as active network from settings +- [ ] Verify able to delete added custom network +- [ ] Verify able to edit pre-loaded default networks +- [ ] Verify able to enable/disable test networks +- [ ] Verify able to reset default networks when edited + +## Dapp Support (Ethereum & Solana) + +- [ ] Verify able to connect to an Ethereum Dapp +- [ ] Verify after connecting to an Ethereum Dapp the connected state is saved in `brave://settings/content/ethereum` +- [ ] Verify able to connect to an Solana Dapp +- [ ] Verify after connecting to an Solana Dapp the connected state is saved in `brave://settings/content/ethereum` +- [ ] Verify able to connect multiple accounts to Dapp (Both Ethereum & Solana) +- [ ] Verify able to submit transactions when wallet is connected to Dapp (Both Ethereum & Solana) +- [ ] Verify able to add a custom token from Dapp +- [ ] Verify able to Sign Transactions for both Ethereum & Solana accounts +- [ ] Verify able to add a custom network via Dapp +- [ ] Verify network switch prompt is shown when adding a new network or changing network in Dapp + +## Restore & Reset + +- [ ] Verify able to restore a wallet using seed words from the onboarding screen (No wallet created) +- [ ] Verify able to restore a wallet using seed words from wallet lock screen (Wallet created & Locked) +- [ ] Verify when a wallet is restored, there is no "Backup wallet" message is shown +- [ ] Verify when a wallet is restored, all the accounts that have a transaction are restored +- [ ] Verify when a wallet is restored it restores all Ethereum & Solana accounts that have a send transaction +- [ ] Verify able to reset wallet from `brave://settings/wallet` +- [ ] Verify wallet tab is reloaded when wallet is reset from settings + +## Transactions + +- [ ] Verify Buy ETH works with different on-ramp providers +- [ ] Verify Buy Solana works with different on-ramp providers +- [ ] Verify Buy Filecoin works +- [ ] Verify able to submit Send ETH transaction +- [ ] Verify able to submit Send SOL transaction +- [ ] Verify able to submit Send FIL transaction +- [ ] Verify able to perform Swap ETH transaction +- [ ] Verify able to perform Swap SOL transaction +- [ ] Verify able to perform Swap on different pre-loaded EVM chains +- [ ] Verify transaction notification is shown for confirmed/error/rejected transactions +- [ ] Verify clicking on the transaction notification opens a new tab and loads the token details to view the current transaction +- [ ] Verify able to submit and approve Ethereum transactions via imported Ethereum account on Ledger +- [ ] Verify able to submit and approve Solana transactions via imported Solana account on Ledger +- [ ] Verify able to submit and approve Filecoin transactions via imported Filecoin account on Ledger +- [ ] Verify able to submit and approve transactions via imported Ethereum account on Trezor diff --git a/WikiTemplate/Crypto/wikitemplate-cryptoiOS.md b/WikiTemplate/Crypto/wikitemplate-cryptoiOS.md new file mode 100644 index 0000000..f4fdf2a --- /dev/null +++ b/WikiTemplate/Crypto/wikitemplate-cryptoiOS.md @@ -0,0 +1,70 @@ + +## Onboarding + +- [ ] Verify able to create a wallet by following onboarding +- [ ] Verify not able to take screenshots during onboarding screens +- [ ] Verify able to back up wallet seed phrase during onboarding +- [ ] Verify able to skip back up wallet seed screen to complete onboarding +- [ ] Verify onboarding is shown when trying to interact with Dapp without creating wallet + +## Panel + +- [ ] Verify panel is only shown in URL bar when a Dapp is trying to interact +- [ ] Verify able to change default network from panel +- [ ] Verify able to change accounts from panel +- [ ] Verify notification dot is shown on wallet icon when an action is pending for Wallet + +## Ethereum + +- [ ] Verify Ethereum account is created as soon as onboarding is completed +- [ ] Verify able to create an Ethereum account from accounts tab +- [ ] Verify able to create an Ethereum account from accounts list screen +- [ ] Verify able to import an Ethereum account via Private Key/JSON file +- [ ] Verify able to submit a Buy ETH transaction +- [ ] Verify able to submit a Send ETH transaction +- [ ] Verify able to perform a Swap ETH transaction + +## Solana + +- [ ] Verify able to create a Solana account when Solana Mainnet Beta is selected from network picker +- [ ] Verify able to create a Solana account from accounts tab +- [ ] Verify able to create a Solana account can be created from accounts list screen +- [ ] Verify able to send tokens from one Solana account to another +- [ ] Verify able to submit a SOL transaction + +## Network Settings + +- [ ] Verify able to add a custom network via Settings +- [ ] Verify able to change active network to a custom network via portfolio + +## Custom Tokens + +- [ ] Verify able to manually add a custom token +- [ ] Verify able to manually add ERC721 tokens (Yet to be implmented) +- [ ] Verify able to add custom tokens via webpage (Coingecko/CoinMarketCap) + +## Dapp Support (Ethereum) + +- [ ] Verify able to connect to a Dapp +- [ ] Verify when a Dapp is trying to interact a toast notification is shown when wallet is locked/wallet icon is not yet shown in URL bar +- [ ] Verify clicking on the Dapp interaction notification, opens the Panel for Dapp interaction +- [ ] Verify able to connect multiple accounts to a Dapp +- [ ] Verify able to connect/disconnect to Dapp from Panel +- [ ] Verify able to approve/reject Dapp request to change network via panel +- [ ] Verify able to approve/cancel transaction request via panel when interacting with a Dapp +- [ ] Verify able to add a custom network via panel when connected to a Dapp +- [ ] Verify able to switch networks via panel when a Dapp requests network change +- [ ] Verify able to sign messages from Dapp via Wallet panel +- [ ] Verify able to get public encryption key from Dapp via panel +- [ ] Verify able to view decrypt message form Dapp on panel + +## Settings + +- [ ] Verify able to set custom timer on auto-lock +- [ ] Verify able to add/remove a custom network +- [ ] Verify able to set added custom network as default via settings +- [ ] Verfiy able to set/disable Web3 Notification +- [ ] Verify when Web3 Notification settings is disabled, there is no notification dot shown on wallet during Dapp interaction +- [ ] Verify able to clear transactions and nonce information +- [ ] Verify able to reset wallet +- [ ] Verify recreating wallet after reset creates a new account \ No newline at end of file diff --git a/wikitemplate-majorChromiumBumpUpgrades b/WikiTemplate/Desktop/Major_CR_Bump/wikitemplate-majorChromiumBumpUpgrades.md similarity index 60% rename from wikitemplate-majorChromiumBumpUpgrades rename to WikiTemplate/Desktop/Major_CR_Bump/wikitemplate-majorChromiumBumpUpgrades.md index f69f97f..e40342f 100644 --- a/wikitemplate-majorChromiumBumpUpgrades +++ b/WikiTemplate/Desktop/Major_CR_Bump/wikitemplate-majorChromiumBumpUpgrades.md @@ -18,25 +18,25 @@ As per process, QA runs through the following cases to ensure that the major chr ### Upgrade -- [x] Make sure that data from the last version appears in the new version OK -- [x] Ensure that `brave://version` lists the expected Brave & Chromium versions -- [x] With data from the last version, verify that: - - [x] Bookmarks on the bookmark toolbar and bookmark folders can be opened - - [x] Cookies are preserved - - [x] Installed extensions are retained and work correctly - - [x] Opened tabs can be reloaded - - [x] Stored passwords are preserved - - [x] Sync chain created in previous version is retained - - [x] Social media-blocking buttons changes are retained - - [x] Rewards - - [x] BAT balance is retained - - [x] Auto-contribute list is retained - - [x] Both Tips and Monthly Contributions are retained - - [x] Panel transactions list is retained - - [x] Changes to rewards settings are retained - - [x] Ensure that Auto Contribute is not being enabled when upgrading to a new version if AC was disabled - - [x] Ads - - [x] Both `Estimated pending rewards` & `Ad notifications received this month` are retained - - [x] Changes to ads settings are retained - - [x] Ensure that ads are not being enabled when upgrading to a new version if they were disabled - - [x] Ensure that ads are not disabled when upgrading to a new version if they were enabled +- [ ] Make sure that data from the last version appears in the new version OK +- [ ] Ensure that `brave://version` lists the expected Brave & Chromium versions +- [ ] With data from the last version, verify that: + - [ ] Bookmarks on the bookmark toolbar and bookmark folders can be opened + - [ ] Cookies are preserved + - [ ] Installed extensions are retained and work correctly + - [ ] Opened tabs can be reloaded + - [ ] Stored passwords are preserved + - [ ] Sync chain created in previous version is retained + - [ ] Social media-blocking buttons changes are retained + - [ ] Rewards + - [ ] BAT balance is retained + - [ ] Auto-contribute list is retained + - [ ] Both Tips and Monthly Contributions are retained + - [ ] Panel transactions list is retained + - [ ] Changes to rewards settings are retained + - [ ] Ensure that Auto Contribute is not being enabled when upgrading to a new version if AC was disabled + - [ ] Ads + - [ ] Both `Estimated pending rewards` & `Ad notifications received this month` are retained + - [ ] Changes to ads settings are retained + - [ ] Ensure that ads are not being enabled when upgrading to a new version if they were disabled + - [ ] Ensure that ads are not disabled when upgrading to a new version if they were enabled diff --git a/wikitemplate-minorCRbump-macOS-arm64.md b/WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbump-macOS-arm64.md similarity index 100% rename from wikitemplate-minorCRbump-macOS-arm64.md rename to WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbump-macOS-arm64.md diff --git a/wikitemplate-minorCRbumpDesktop.md b/WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbumpDesktop.md similarity index 100% rename from wikitemplate-minorCRbumpDesktop.md rename to WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbumpDesktop.md diff --git a/wikitemplate-ReducedDesktop.md b/WikiTemplate/Desktop/wikitemplate-ReducedDesktop.md similarity index 100% rename from wikitemplate-ReducedDesktop.md rename to WikiTemplate/Desktop/wikitemplate-ReducedDesktop.md diff --git a/wikitemplate-macOS-arm64.md b/WikiTemplate/Desktop/wikitemplate-macOS-arm64.md similarity index 100% rename from wikitemplate-macOS-arm64.md rename to WikiTemplate/Desktop/wikitemplate-macOS-arm64.md diff --git a/wikitemplate-goupdate.md b/WikiTemplate/Goupdater/wikitemplate-goupdate.md similarity index 100% rename from wikitemplate-goupdate.md rename to WikiTemplate/Goupdater/wikitemplate-goupdate.md diff --git a/wikitemplate-IPFS.md b/WikiTemplate/IPFS/wikitemplate-IPFS.md similarity index 100% rename from wikitemplate-IPFS.md rename to WikiTemplate/IPFS/wikitemplate-IPFS.md diff --git a/wikitemplate-tor-Linux.md b/WikiTemplate/Tor/wikitemplate-tor-Linux.md similarity index 100% rename from wikitemplate-tor-Linux.md rename to WikiTemplate/Tor/wikitemplate-tor-Linux.md diff --git a/wikitemplate-tor-Windows.md b/WikiTemplate/Tor/wikitemplate-tor-Windows.md similarity index 100% rename from wikitemplate-tor-Windows.md rename to WikiTemplate/Tor/wikitemplate-tor-Windows.md diff --git a/wikitemplate-tor-macOS(Intel).md b/WikiTemplate/Tor/wikitemplate-tor-macOS(Intel).md similarity index 100% rename from wikitemplate-tor-macOS(Intel).md rename to WikiTemplate/Tor/wikitemplate-tor-macOS(Intel).md diff --git a/wikitemplate-tor-macOS(arm64).md b/WikiTemplate/Tor/wikitemplate-tor-macOS(arm64).md similarity index 100% rename from wikitemplate-tor-macOS(arm64).md rename to WikiTemplate/Tor/wikitemplate-tor-macOS(arm64).md diff --git a/wikitemplate-tor.md b/WikiTemplate/Tor/wikitemplate-tor.md similarity index 100% rename from wikitemplate-tor.md rename to WikiTemplate/Tor/wikitemplate-tor.md diff --git a/wikitemplate-ios.md b/WikiTemplate/iOS/wikitemplate-ios.md similarity index 100% rename from wikitemplate-ios.md rename to WikiTemplate/iOS/wikitemplate-ios.md diff --git a/wikitemplate.md b/WikiTemplate/wikitemplate.md similarity index 98% rename from wikitemplate.md rename to WikiTemplate/wikitemplate.md index 3094523..7a5e103 100644 --- a/wikitemplate.md +++ b/WikiTemplate/wikitemplate.md @@ -244,9 +244,3 @@ - [ ] Changes to ads settings are retained - [ ] Ensure that ads are not being enabled when upgrading to a new version if they were disabled - [ ] Ensure that ads are not disabled when upgrading to a new version if they were enabled - -## Hardware Wallet Test (To be checked on each major CR bump) - -- [ ] Verify you can link hardware wallet using Trezor and unlock the wallet -- [ ] Verify you can link hardware wallet using Ledger Nano and unlock the wallet -- [ ] Verify you can perform a transaction with hardware wallet using Ledger Nano or Trezor diff --git a/brave_testrun_generator.py b/brave_testrun_generator.py index cf2cf0b..85dbebf 100755 --- a/brave_testrun_generator.py +++ b/brave_testrun_generator.py @@ -48,9 +48,9 @@ def laptop_testruns(milestonever): - wiki_laptop_file = open("wikitemplate.md", "r") + wiki_laptop_file = open("WikiTemplate/Desktop/wikitemplate.md", "r") laptop_template = wiki_laptop_file.read() - wiki_macOS_arm = open("wikitemplate-macOS-arm64.md", "r") + wiki_macOS_arm = open("WikiTemplate/Desktop/wikitemplate-macOS-arm64.md", "r") macOS_arm64 = wiki_macOS_arm.read() for issue in bc_repo.get_issues( @@ -186,9 +186,9 @@ def laptop_testruns(milestonever): def laptop_hf_testruns(milestonever): - wiki_laptop_hf = open("wikitemplate-ReducedDesktop.md", "r") + wiki_laptop_hf = open("WikiTemplate/Desktop/Reduced/wikitemplate-ReducedDesktop.md", "r") laptop_hf_template = wiki_laptop_hf.read() - wiki_macOS_arm = open("wikitemplate-macOS-arm64.md", "r") + wiki_macOS_arm = open("WikiTemplate/Desktop/wikitemplate-macOS-arm64.md", "r") macOS_arm64 = wiki_macOS_arm.read() for issue in bc_repo.get_issues( @@ -319,9 +319,9 @@ def laptop_hf_testruns(milestonever): def laptop_CRminor_testruns(milestonever): - wiki_laptop_CRminor = open("wikitemplate-minorCRbumpDesktop.md", "r") + wiki_laptop_CRminor = open("WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbumpDesktop.md", "r") laptop_CRminor_template = wiki_laptop_CRminor.read() - wiki_macOS_arm = open("wikitemplate-minorCRbump-macOS-arm64.md", "r") + wiki_macOS_arm = open("WikiTemplate/Desktop/Minor_CR_Bump/wikitemplate-minorCRbump-macOS-arm64.md", "r") macOS_arm64 = wiki_macOS_arm.read() for issue in bc_repo.get_issues( @@ -427,9 +427,43 @@ def laptop_CRminor_testruns(milestonever): return 0 +def crypto_desktop(milestonever): + + wiki_laptop_crypto = open("WikiTemplate/Crypto/wikitemplate-cryptoDesktop.md", "r") + laptop_crypto_template = wiki_laptop_crypto.read() + + for issue in bc_repo.get_issues( + milestone=bc_milestone[milestonever], sort="created", + direction="asc", state="closed"): + if("pull" not in issue.html_url): + original_issue_title = issue.title + issue_title = original_issue_title + if(original_issue_title[0].islower()): + lower = original_issue_title[0] + upper = original_issue_title[0].upper() + issue_title = original_issue_title.replace(lower, upper, 1) + + print(laptop_crypto_template) + print("") + + DesktopCryptoTitle = "Desktop Crypto Wallet Regression test run for " + milestonever + DesktopCryptoList = ["OS/Windows", + "release-notes/exclude", + "tests", + "QA/Yes", + "OS/Desktop"] + + if args.test is None: + bc_repo.create_issue(title=DesktopCryptoTitle, + body=laptop_crypto_template, + milestone=bc_milestone[milestonever], + labels=DesktopCryptoList) + + return 0 + def android_testruns(milestonever): - wiki_android_file = open("wikitemplate-android.md", "r") + wiki_android_file = open("WikiTemplate/Android/wikitemplate-android.md", "r") android_template = wiki_android_file.read() for issue in bc_repo.get_issues( @@ -528,7 +562,7 @@ def android_testruns(milestonever): def android_hf_testruns(milestonever): - wiki_android_hf = open("wikitemplate-ReducedAndroid.md", "r") + wiki_android_hf = open("WikiTemplate/Android/wikitemplate-ReducedAndroid.md", "r") android_hf_template = wiki_android_hf.read() for issue in bc_repo.get_issues( @@ -627,7 +661,7 @@ def android_hf_testruns(milestonever): def android_CRminor_testruns(milestonever): - wiki_android_CRminor = open("wikitemplate-minorCRbumpAndroid.md", "r") + wiki_android_CRminor = open("WikiTemplate/Android/wikitemplate-minorCRbumpAndroid.md", "r") android_CRminor_template = wiki_android_CRminor.read() for issue in bc_repo.get_issues( @@ -724,9 +758,46 @@ def android_CRminor_testruns(milestonever): return 0 +def crypto_android(milestonever): + + + wiki_android_crypto = open("WikiTemplate/Crypto/wikitemplate-cryptoAndroid.md", "r") + android_crypto_template = wiki_android_crypto.read() + + for issue in bc_repo.get_issues( + milestone=bc_milestone[milestonever], + sort="created", + direction="asc", + state="closed"): + if("pull" not in issue.html_url): + original_issue_title = issue.title + issue_title = original_issue_title + if(original_issue_title[0].islower()): + lower = original_issue_title[0] + upper = original_issue_title[0].upper() + issue_title = original_issue_title.replace(lower, upper, 1) + + print("Crypto Wallet Android Checklist:") + print(android_crypto_template) + print("") + AndroidCryptotitle = "Android Crypto Wallet Regression test run for " + milestonever + AndroidCryptolist = ["ARM", + "release-notes/exclude", + "tests", + "QA/Yes", + "OS/Android"] + + if args.test is None: + bc_repo.create_issue(title=AndroidCryptotitle, + body=android_crypto_template, + milestone=bc_milestone[milestonever], + labels=AndroidCryptolist) + + return 0 + def iOS_testruns(): - wikitemplate_ios = open("wikitemplate-ios.md", "r") + wikitemplate_ios = open("WikiTemplate/iOS/wikitemplate-ios.md", "r") ios_template = wikitemplate_ios.read() ios_key = sorted(ios_milestone.keys())[0] @@ -780,8 +851,8 @@ def iOS_testruns(): print("\nRelease Notes:") print(release_notes) for line in release_notes: - relline += line +"\n" - print(relline) + line += line +"\n" + print(line) print("") print("\niPad Checklist:") @@ -838,16 +909,51 @@ def iOS_testruns(): return -def tor_testruns(tor_rel): +def crypto_iOS(): + + wiki_iOS_crypto = open("WikiTemplate/Crypto/wikitemplate-cryptoiOS.md", "r") + iOS_crypto_template = wiki_iOS_crypto.read() + ios_key = sorted(ios_milestone.keys())[0] + + + for issue in ios_repo.get_issues(milestone=ios_milestone[ios_key], + sort="created", + direction="asc", + state="closed"): + if("pull" not in issue.html_url): + original_issue_title = issue.title + issue_title = original_issue_title + if(original_issue_title[0].islower()): + lower = original_issue_title[0] + upper = original_issue_title[0].upper() + issue_title = original_issue_title.replace(lower, upper, 1) + + print(iOS_crypto_template) + print("") + CyprotiOS_Title = "iOS Crypto Wallet Regression test run for " + ios_key +\ + " on iPhone" + CryptoiOS_List = ["iphone", + "release-notes/exclude", + "tests", + "QA/Yes"] + + if args.test is None: + ios_repo.create_issue(title=CyprotiOS_Title, + body=iOS_crypto_template, + milestone=ios_milestone[ios_key], + labels=CryptoiOS_List) + + return 0 +def tor_testruns(tor_rel): - macOS_intel_wiki = open("wikitemplate-tor-macOS(Intel).md", "r") + macOS_intel_wiki = open("WikiTemplate/Tor/wikitemplate-tor-macOS(Intel).md", "r") macOS_intel_template = macOS_intel_wiki.read() - macOS_arm64_wiki = open("wikitemplate-tor-macOS(arm64).md", "r") + macOS_arm64_wiki = open("WikiTemplate/Tor/wikitemplate-tor-macOS(arm64).md", "r") macOS_arm64_template = macOS_arm64_wiki.read() - win_tor_wiki = open("wikitemplate-tor-Windows.md", "r") + win_tor_wiki = open("WikiTemplate/Tor/wikitemplate-tor-Windows.md", "r") windows_template = win_tor_wiki.read() - linux_tor_wiki = open("wikitemplate-tor-Linux.md", "r") + linux_tor_wiki = open("WikiTemplate/Tor/wikitemplate-tor-Linux.md", "r") linux_template = linux_tor_wiki.read() print("\nMac Checklist (Intel):") @@ -928,7 +1034,7 @@ def tor_testruns(tor_rel): def ipfs_testruns(ipfs_rel): - ipfs_wiki = open("wikitemplate-IPFS.md", "r") + ipfs_wiki = open("WikiTemplate/IPFS/wikitemplate-IPFS.md", "r") ipfs_template = ipfs_wiki.read() print("\nMac Checklist (Intel/arm64):") @@ -988,6 +1094,7 @@ def ipfs_testruns(ipfs_rel): return 0 + print("\n#######################################################################" "###################################################") print("\n For Desktop or Android minor CR bump only use the basic checks selection to " @@ -1016,18 +1123,19 @@ def ipfs_testruns(ipfs_rel): header = print("\nCreate test runs for:\n") laptop = print("1. Desktop Release (Full manual pass)") -laptop_hf = print("2. Desktop Release (Reduced manual pass for" - " Hotfix)") +laptop_hf = print("2. Desktop Release (Reduced manual pass for Hotfix)") laptop_CRminor = print("3. Desktop Release (Basic checks for" " minor Chromium bump)") android = print("4. Android Release (Full manual pass)") -android_hf = print("5. Android Release (Reduced manual pass for" - " Hotfix)") +android_hf = print("5. Android Release (Reduced manual pass for Hotfix)") android_hf = print("6. Android Release (Basic checks for" " minor Chromium bump)") ios = print("7. iOS Release") -tor = print("8. Tor Release") -ipfs = print("9. IPFS Release") +cyrpto_desktop = print("8. Crypto Wallet - Desktop") +cyrpto_android = print("9. Crypto Wallet - Android") +cyrpto_ios = print("10. Crypto Wallet - iOS") +tor = print("11. Tor Release") +ipfs = print("12. IPFS Release") select_checklist = input("\nChoose the platform for which you want to" + " generate the test run: ") @@ -1056,11 +1164,23 @@ def ipfs_testruns(ipfs_rel): print("\nGenerating test runs for " + str(sorted(bc_milestone.keys())[0])) android_CRminor_testruns(sorted(bc_milestone.keys())[0]) -elif (select_checklist == "7"): +elif(select_checklist == "7"): generate_ios_test = print("\nGenerating test runs for iOS ", sorted(ios_milestone.keys())[0]) iOS_testruns() -elif (select_checklist == "Tor" or select_checklist == "tor"): +elif(select_checklist == "8"): + generate_ios_test = print("\nGenerating Desktop Crypto Wallet Test run for", + sorted(bc_milestone.keys())[0]) + crypto_desktop(sorted(bc_milestone.keys())[0]) +elif(select_checklist == "9"): + generate_ios_test = print("\nGenerating Android Crypto Wallet Test run for", + sorted(bc_milestone.keys())[0]) + crypto_android(sorted(bc_milestone.keys())[0]) +elif(select_checklist == "10"): + generate_ios_test = print("\nGenerating iOS Crypto Wallet Test run for", + sorted(ios_milestone.keys())[0]) + crypto_iOS() +elif(select_checklist == "Tor" or select_checklist == "tor"): tormilestone = [s for s in bc_milestone if "Tor" in s] if (len(tormilestone) == 0): torkey = "" @@ -1071,7 +1191,7 @@ def ipfs_testruns(ipfs_rel): generate_ios_test = print("\nGenerating test runs for Tor", (tormilestone)[0]) tor_testruns(torkey) -elif (select_checklist == "IPFS" or select_checklist == "ipfs"): +elif(select_checklist == "IPFS" or select_checklist == "ipfs"): ipfsmilestone = [i for i in bc_milestone if "IPFS" in i] if (len(ipfsmilestone) == 0): ipfskey = "" @@ -1085,3 +1205,4 @@ def ipfs_testruns(ipfs_rel): else: print("Incorrect selection. " + select_checklist + " is not a valid input\n") exit() + diff --git a/wikitemplate-crypto.md b/wikitemplate-crypto.md deleted file mode 100644 index 14743e1..0000000 --- a/wikitemplate-crypto.md +++ /dev/null @@ -1,43 +0,0 @@ - -## Branding - -- [ ] Verify there are no appearances of the word MetaMask -- [ ] Verify links to MetaMask resources such as websites and email should point to Brave resources -- [ ] Verify all downloadable resources (Seed/Logs) contains Brave file names -- [ ] Verify MetaFox logo is not present on any screen - -## Component - -- [ ] Verify Ethereum client component is downloaded when you open brave://wallet for the first time -- [ ] Verify Ethereum client component is only loaded when brave://wallet page is loaded after install -- [ ] Verify Ethereum client component is successfully updated and doesn't corrupt the browser wallet -- [ ] Delete component folder. Verify the component is downloaded successfully after browser relaunch - -## Ðapps - -- [ ] Verify visiting web3 page triggers a check for setting up Crypto Wallet if not already done -- [ ] Verify Ðapp can successfully connect to your crypto wallets account, signed via a pop-up notification -- [ ] Verify Ðapp transactions where assets are set/received show up in the account activity view within the extension - -## Import & Recovery - -- [ ] Verify you can import Brave Crypto Wallet using 24 seed words -- [ ] Verify you can import MetaMask Wallet using only 12 seed words -- [ ] Verify you can restore Brave CW/MM account from the login screen - -## Transactions - -- [ ] Verify Eth/ERC-20 tokens can be received at the addresses generated for your account -- [ ] Verify Eth/ERC-20 tokens can be sent to other addresses from your account -- [ ] Verify a successful transaction can be done on a restored wallet -- [ ] Verify JS Ethereum Signature work as expected in `https://danfinlay.github.io/js-eth-personal-sign-examples/` - -## Hardware - -- [ ] Verify you can link hardware wallet using Trezor and unlock the wallet -- [ ] Verify you can link hardware wallet using Ledger Nano and unlock the wallet - -## Responsive Screen - -- [ ] Verify vertical scroll bars are shown when browser resolution is smaller than the page viewport -- [ ] Verify all controls/buttons on Crypto Wallet are responsive when browser resolution is changed