diff --git a/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.cc b/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.cc index 41100d441589..809aa509e74a 100644 --- a/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.cc +++ b/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.cc @@ -11,6 +11,7 @@ #include "brave/browser/ui/views/location_bar/brave_location_bar_view.h" #include "brave/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.h" #include "brave/components/brave_rewards/browser/test/common/rewards_browsertest_context_util.h" +#include "brave/components/brave_rewards/browser/test/common/rewards_browsertest_util.h" #include "brave/components/brave_rewards/common/pref_names.h" #include "chrome/browser/ui/views/frame/browser_view.h" #include "chrome/test/base/ui_test_utils.h" @@ -208,6 +209,31 @@ void RewardsBrowserTestContextHelper::LoadURL(GURL url) { WaitForLoadStop(contents); } +void RewardsBrowserTestContextHelper::LoadRewardsPage() { + GURL url = rewards_browsertest_util::GetRewardsUrl(); + auto* tab_strip = browser_->tab_strip_model(); + + // Activate the rewards page if it's already loaded into a tab. + bool found = false; + for (int index = 0; index < tab_strip->count(); ++index) { + auto* contents = tab_strip->GetWebContentsAt(index); + if (contents->GetLastCommittedURL() == url) { + found = true; + tab_strip->ActivateTabAt(index); + break; + } + } + + // Otherwise, load the rewards page into a new tab. + if (!found) { + LoadURL(url); + } + + // Wait for the content to be fully rendered before continuing. + rewards_browsertest_util::WaitForElementToAppear( + tab_strip->GetActiveWebContents(), "[data-test-id=rewards-balance-text]"); +} + void RewardsBrowserTestContextHelper::ReloadCurrentSite() { auto* contents = browser_->tab_strip_model()->GetActiveWebContents(); contents->GetController().Reload(content::ReloadType::NORMAL, true); diff --git a/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.h b/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.h index 516967f74a8d..72b0bd65e1bf 100644 --- a/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.h +++ b/components/brave_rewards/browser/test/common/rewards_browsertest_context_helper.h @@ -38,6 +38,8 @@ class RewardsBrowserTestContextHelper { void LoadURL(GURL url); + void LoadRewardsPage(); + void ReloadCurrentSite(); private: diff --git a/components/brave_rewards/browser/test/common/rewards_browsertest_contribution.cc b/components/brave_rewards/browser/test/common/rewards_browsertest_contribution.cc index dd2aeb58c8b6..b65b36e77775 100644 --- a/components/brave_rewards/browser/test/common/rewards_browsertest_contribution.cc +++ b/components/brave_rewards/browser/test/common/rewards_browsertest_contribution.cc @@ -208,7 +208,7 @@ void RewardsBrowserTestContribution::VerifyTip( } // Load rewards page - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); if (should_contribute) { // Make sure that balance is updated correctly @@ -220,8 +220,7 @@ void RewardsBrowserTestContribution::VerifyTip( : "[data-test-id=rewards-summary-one-time]"; rewards_browsertest_util::WaitForElementToContain( - contents(), selector, - "-" + base::StringPrintf("%.2f", amount) + " BAT"); + contents(), selector, base::StringPrintf("-%.2f BAT", amount)); return; } @@ -245,8 +244,7 @@ void RewardsBrowserTestContribution::IsBalanceCorrect() { void RewardsBrowserTestContribution::IsPendingBalanceCorrect() { rewards_browsertest_util::WaitForElementToContain( - contents(), - "[data-test-id='pending-contribution-box']", + contents(), "[data-test-id=rewards-summary-pending]", GetStringPendingBalance()); } @@ -436,9 +434,7 @@ std::string RewardsBrowserTestContribution::GetStringBalance() { } std::string RewardsBrowserTestContribution::GetStringPendingBalance() { - const std::string balance = - rewards_browsertest_util::BalanceDoubleToString(pending_balance_); - return balance + " BAT"; + return base::StringPrintf("%.2f BAT", pending_balance_); } ledger::type::Result RewardsBrowserTestContribution::GetACStatus() { diff --git a/components/brave_rewards/browser/test/common/rewards_browsertest_util.cc b/components/brave_rewards/browser/test/common/rewards_browsertest_util.cc index 92bc4e32383d..b4531c544395 100644 --- a/components/brave_rewards/browser/test/common/rewards_browsertest_util.cc +++ b/components/brave_rewards/browser/test/common/rewards_browsertest_util.cc @@ -107,6 +107,11 @@ void WaitForLedgerStop(brave_rewards::RewardsServiceImpl* rewards_service) { void CreateWallet(brave_rewards::RewardsServiceImpl* rewards_service) { DCHECK(rewards_service); + + // Ensure that the utility process is started before attempting to create a + // rewards payment ID. + StartProcess(rewards_service); + base::RunLoop run_loop; bool success = false; rewards_service->CreateWallet( diff --git a/components/brave_rewards/browser/test/rewards_browsertest.cc b/components/brave_rewards/browser/test/rewards_browsertest.cc index d97cd9969433..e1b2ae06db19 100644 --- a/components/brave_rewards/browser/test/rewards_browsertest.cc +++ b/components/brave_rewards/browser/test/rewards_browsertest.cc @@ -29,6 +29,7 @@ #include "chrome/test/base/testing_profile.h" #include "chrome/test/base/ui_test_utils.h" #include "components/network_session_configurator/common/network_switches.h" +#include "content/public/browser/notification_types.h" #include "content/public/test/browser_test.h" #include "net/dns/mock_host_resolver.h" @@ -127,6 +128,22 @@ class RewardsBrowserTest : public InProcessBrowserTest { return total; } + void WaitForNavigation(const std::string& url_substring) { + content::WindowedNotificationObserver window_observer( + content::NOTIFICATION_LOAD_COMPLETED_MAIN_FRAME, + base::BindLambdaForTesting( + [&](const content::NotificationSource& source, + const content::NotificationDetails&) { + auto contents_source = + static_cast&>( + source); + std::string url = contents_source->GetLastCommittedURL().spec(); + return url.find(url_substring) != std::string::npos; + })); + + window_observer.Wait(); + } + base::test::ScopedFeatureList feature_list_; raw_ptr rewards_service_ = nullptr; std::unique_ptr https_server_; @@ -136,9 +153,8 @@ class RewardsBrowserTest : public InProcessBrowserTest { std::unique_ptr context_helper_; }; -// https://github.com/brave/brave-browser/issues/12632 -IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, DISABLED_ActivateSettingsModal) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); +IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, ActivateSettingsModal) { + context_helper_->LoadRewardsPage(); rewards_browsertest_util::WaitForElementThenClick( contents(), "[data-test-id=manage-wallet-button]"); @@ -147,34 +163,8 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, DISABLED_ActivateSettingsModal) { "#modal"); } -// https://github.com/brave/brave-browser/issues/12988 -IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, DISABLED_ToggleAutoContribute) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - // toggle auto contribute back on - rewards_browsertest_util::WaitForElementThenClick( - contents(), - "[data-test-id2='autoContribution']"); - std::string value = rewards_browsertest_util::WaitForElementThenGetAttribute( - contents(), - "[data-test-id2='autoContribution']", - "data-toggled"); - ASSERT_STREQ(value.c_str(), "true"); - - // toggle auto contribute off - rewards_browsertest_util::WaitForElementThenClick( - contents(), - "[data-test-id2='autoContribution']"); - value = - rewards_browsertest_util::WaitForElementThenGetAttribute( - contents(), - "[data-test-id2='autoContribution']", - "data-toggled"); - ASSERT_STREQ(value.c_str(), "false"); -} - IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, SiteBannerDefaultTipChoices) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_browsertest_util::NavigateToPublisherPage( browser(), https_server_.get(), @@ -194,9 +184,8 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, SiteBannerDefaultTipChoices) { ASSERT_EQ(tip_options, std::vector({ 1, 10, 100 })); } -IN_PROC_BROWSER_TEST_F( - RewardsBrowserTest, - SiteBannerDefaultPublisherAmounts) { +IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, SiteBannerDefaultPublisherAmounts) { + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_browsertest_util::NavigateToPublisherPage( browser(), https_server_.get(), @@ -210,49 +199,39 @@ IN_PROC_BROWSER_TEST_F( ASSERT_EQ(tip_options, std::vector({ 5, 10, 20 })); } -// Disabled in https://github.com/brave/brave-browser/issues/10789 -IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, DISABLED_NotVerifiedWallet) { +IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, NotVerifiedWallet) { + rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->IsBalanceCorrect(); - // Click on verify button rewards_browsertest_util::WaitForElementThenClick( - contents(), - "#verify-wallet-button"); + contents(), "[data-test-id=verify-rewards-button]"); - // Click on verify button in on boarding rewards_browsertest_util::WaitForElementThenClick( - contents(), - "#on-boarding-verify-button"); + contents(), "[data-test-id=connect-continue-button]"); + + rewards_browsertest_util::WaitForElementThenClick( + contents(), "[data-test-id=connect-provider-button]"); // Check if we are redirected to uphold - { - const GURL current_url = contents()->GetURL(); - ASSERT_TRUE(base::StartsWith( - current_url.spec(), - ledger::uphold::GetUrl() + "/authorize/", - base::CompareCase::INSENSITIVE_ASCII)); - } + WaitForNavigation(ledger::uphold::GetUrl() + "/authorize/"); + + response_->SetVerifiedWallet(true); // Fake successful authentication ui_test_utils::NavigateToURLBlockUntilNavigationsComplete( browser(), uphold_auth_url(), 1); - // Check if we are redirected to KYC page - { - const GURL current_url = contents()->GetURL(); - ASSERT_TRUE(base::StartsWith( - current_url.spec(), - ledger::uphold::GetUrl() + "/signup/step2", - base::CompareCase::INSENSITIVE_ASCII)); - } + rewards_browsertest_util::WaitForElementToContain( + contents(), "[data-test-id=external-wallet-status-text]", "Verified"); } IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, ShowACPercentInThePanel) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); context_helper_->VisitPublisher( rewards_browsertest_util::GetUrl(https_server_.get(), "3zsistemi.si"), true); @@ -276,7 +255,7 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, ShowACPercentInThePanel) { IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, ZeroBalanceWalletClaimNotCalled_Uphold) { response_->SetVerifiedWallet(true); - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); response_->ClearRequests(); @@ -310,7 +289,7 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, response_->SetVerifiedWallet(true); auto* prefs = browser()->profile()->GetPrefs(); prefs->SetBoolean(brave_rewards::prefs::kFetchOldBalance, false); - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); contribution_->SetUpGeminiWallet(rewards_service_, 50.0); response_->ClearRequests(); @@ -338,17 +317,13 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, run_loop.Run(); } -// https://github.com/brave/brave-browser/issues/12987 -IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, - DISABLED_BackupRestoreModalHasNotice) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); +IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, BackupRestoreModalHasNotice) { rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); rewards_browsertest_util::WaitForElementToEqual( - contents(), - "[data-test-id='balance']", - "30.000 BAT"); + contents(), "[data-test-id='rewards-balance-text']", "30.000 BAT"); // Click the settings button and wait for the backup modal to appear rewards_browsertest_util::WaitForElementThenClick( @@ -365,9 +340,8 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, BackupRestoreModalHasNoNotice) { response_->SetUserFundsBalance(20.0); - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); rewards_browsertest_util::WaitForElementToEqual( contents(), "[data-test-id=rewards-balance-text]", "20.000 BAT"); @@ -385,7 +359,8 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, BackupRestoreModalHasNoNotice) { } IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, ResetRewards) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); rewards_browsertest_util::WaitForElementThenClick( contents(), "[data-test-id=manage-wallet-button]"); @@ -402,10 +377,9 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, ResetRewards) { "Your Rewards data will"); } -// https://github.com/brave/brave-browser/issues/12607 -IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, DISABLED_ResetRewardsWithBAT) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); +IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, ResetRewardsWithBAT) { rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); rewards_browsertest_util::WaitForElementThenClick( @@ -424,32 +398,24 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, DISABLED_ResetRewardsWithBAT) { "Your 30 BAT and other Rewards"); } -// https://github.com/brave/brave-browser/issues/12704 -IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, DISABLED_UpholdLimitNoBAT) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); +IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, UpholdLimitNoBAT) { + rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); + rewards_browsertest_util::WaitForElementThenClick( - contents(), - "#verify-wallet-button"); + contents(), "[data-test-id=verify-rewards-button]"); rewards_browsertest_util::WaitForElementThenClick( - contents(), - "#cancel-login-button"); + contents(), "[data-test-id=connect-continue-button]"); rewards_browsertest_util::WaitForElementThenClick( - contents(), - "#verify-wallet-button"); + contents(), "[data-test-id=connect-provider-button]"); rewards_browsertest_util::WaitForElementThenClick( - contents(), - "#login-button"); + contents(), "[data-test-id=connect-login-button]"); // Check if we are redirected to uphold - { - const GURL current_url = contents()->GetURL(); - - auto found = current_url.spec().find("intention=login"); - ASSERT_TRUE(found != std::string::npos); - } + WaitForNavigation("intention=login"); } IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, EnableRewardsWithBalance) { @@ -459,7 +425,6 @@ IN_PROC_BROWSER_TEST_F(RewardsBrowserTest, EnableRewardsWithBalance) { prefs->SetBoolean(brave_rewards::prefs::kAutoContributeEnabled, false); // Load a balance into the user's wallet - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->FetchPromotions(); promotion_->WaitForPromotionInitialization(); diff --git a/components/brave_rewards/browser/test/rewards_contribution_browsertest.cc b/components/brave_rewards/browser/test/rewards_contribution_browsertest.cc index 6679c24b2741..72dddd10b8f2 100644 --- a/components/brave_rewards/browser/test/rewards_contribution_browsertest.cc +++ b/components/brave_rewards/browser/test/rewards_contribution_browsertest.cc @@ -110,13 +110,13 @@ class RewardsContributionBrowserTest : public InProcessBrowserTest { // The tip summary page formats 2.4999 as 2.4, so we do the same here. double truncated_amount = floor(contribution_->GetReconcileTipTotal() * 10) / 10; - return rewards_browsertest_util::BalanceDoubleToString(-truncated_amount); + return base::StringPrintf("%.2f BAT", -truncated_amount); } void RefreshPublisherListUsingRewardsPopup() { rewards_browsertest_util::WaitForElementThenClick( context_helper_->OpenRewardsPopup().get(), - "[data-test-id='unverified-check-button']"); + "[data-test-id=refresh-publisher-button]"); } raw_ptr rewards_service_ = nullptr; @@ -128,10 +128,9 @@ class RewardsContributionBrowserTest : public InProcessBrowserTest { }; IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, AutoContribution) { - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); context_helper_->VisitPublisher( @@ -149,13 +148,11 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, AutoContribution) { contents(), "[data-test-id=rewards-summary-ac]", "-20.00 BAT"); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - AutoContributionMultiplePublishers) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + AutoContributionMultiplePublishers) { rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); context_helper_->VisitPublisher( @@ -211,10 +208,9 @@ IN_PROC_BROWSER_TEST_F( RewardsContributionBrowserTest, AutoContributionMultiplePublishersUphold) { response_->SetVerifiedWallet(true); - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); ledger::type::SKUOrderItemList items; @@ -255,13 +251,11 @@ IN_PROC_BROWSER_TEST_F( contents(), "[data-test-id=rewards-summary-ac]", "-20.00 BAT"); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - AutoContributeWhenACOff) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + AutoContributeWhenACOff) { rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); context_helper_->VisitPublisher( @@ -281,12 +275,9 @@ IN_PROC_BROWSER_TEST_F( rewards_service_->StartMonthlyContributionForTest(); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - TipVerifiedPublisher) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, TipVerifiedPublisher) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipPublisher( @@ -297,9 +288,8 @@ IN_PROC_BROWSER_TEST_F( IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, TipVerifiedPublisherWithCustomAmount) { - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipPublisher( @@ -307,12 +297,9 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, rewards_browsertest_util::TipAction::OneTime, 1, 0, 1.25); } -// https://github.com/brave/brave-browser/issues/12607 -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - DISABLED_TipUnverifiedPublisher) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, TipUnverifiedPublisher) { rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipPublisher( @@ -320,13 +307,10 @@ IN_PROC_BROWSER_TEST_F( rewards_browsertest_util::TipAction::OneTime); } -// Enable when https://github.com/brave/brave-browser/issues/12556 is fixed -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - DISABLED_RecurringTipForVerifiedPublisher) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + RecurringTipForVerifiedPublisher) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipPublisher( @@ -335,13 +319,10 @@ IN_PROC_BROWSER_TEST_F( 1); } -// Enable when https://github.com/brave/brave-browser/issues/12295 is fixed -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - DISABLED_RecurringTipForUnverifiedPublisher) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + RecurringTipForUnverifiedPublisher) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipPublisher( @@ -350,12 +331,10 @@ IN_PROC_BROWSER_TEST_F( } // Check pending contributions -IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, - DISABLED_PendingContributionTip) { +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, PendingContributionTip) { const std::string publisher = "example.com"; - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); // Tip unverified publisher @@ -365,8 +344,7 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, // Check that link for pending is shown and open modal rewards_browsertest_util::WaitForElementThenClick( - contents(), - "[data-test-id='reservedAllLink']"); + contents(), "[data-test-id=view-pending-button]"); // Make sure that table is populated rewards_browsertest_util::WaitForElementToContain( @@ -376,10 +354,9 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, } IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, - DISABLED_ProcessPendingContributions) { - rewards_browsertest_util::StartProcess(rewards_service_); + ProcessPendingContributions) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); response_->SetAlternativePublisherList(true); // Tip unverified publisher contribution_->TipViaCode( @@ -435,7 +412,7 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, // Check that wallet summary shows the appropriate tip amount rewards_browsertest_util::WaitForElementToEqual( - contents(), "[data-test-id=rewards-summary-ac]", + contents(), "[data-test-id=rewards-summary-one-time]", ExpectedTipSummaryAmountString()); // Make sure that pending contribution box shows the correct @@ -451,20 +428,15 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, rewards_browsertest_util::WaitForElementToContain(popup_contents.get(), "#root", "3zsistemi.si"); - // Close notification - rewards_browsertest_util::WaitForElementThenClick( - popup_contents.get(), "[data-test-id=notification-close]"); - // Check if insufficient funds notification is shown rewards_browsertest_util::WaitForElementToContain( - popup_contents.get(), "#root", "Insufficient Funds"); + popup_contents.get(), "#root", "Insufficient funds"); } IN_PROC_BROWSER_TEST_F( RewardsContributionBrowserTest, TipWithVerifiedWallet) { response_->SetVerifiedWallet(true); - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); @@ -474,12 +446,14 @@ IN_PROC_BROWSER_TEST_F( contribution_->VerifyTip(amount, true, false, true); } -// Enable when https://github.com/brave/brave-browser/issues/12555 is fixed +// TODO(https://github.com/brave/brave-browser/issues/12555): This test is known +// to fail intermittently. The likely cause is that after waiting for tips to +// reconcile, one or both of the generated fees may have already been removed +// from the ExternalWallet data. IN_PROC_BROWSER_TEST_F( RewardsContributionBrowserTest, DISABLED_MultipleTipsProduceMultipleFeesWithVerifiedWallet) { response_->SetVerifiedWallet(true); - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); @@ -508,12 +482,10 @@ IN_PROC_BROWSER_TEST_F( contribution_->VerifyTip(total_amount, true, false, true); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - TipConnectedPublisherAnon) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + TipConnectedPublisherAnon) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); const double amount = 5.0; @@ -529,10 +501,9 @@ IN_PROC_BROWSER_TEST_F( RewardsContributionBrowserTest, TipConnectedPublisherAnonAndConnected) { response_->SetVerifiedWallet(true); - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); const double amount = 5.0; @@ -544,13 +515,12 @@ IN_PROC_BROWSER_TEST_F( contribution_->VerifyTip(amount, true, false, true); } -// https://github.com/brave/brave-browser/issues/12985 -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - DISABLED_TipConnectedPublisherVerified) { +// Reenable when https://github.com/brave/brave-browser/issues/19982 is fixed. +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + DISABLED_TipConnectedPublisherVerified) { response_->SetVerifiedWallet(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); const double amount = 5.0; @@ -571,9 +541,8 @@ IN_PROC_BROWSER_TEST_F( // Ensure that we can make a one-time tip of a non-integral amount. IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, TipNonIntegralAmount) { - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); rewards_service_->OnTip("duckduckgo.com", 2.5, false, base::DoNothing()); @@ -583,13 +552,11 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, TipNonIntegralAmount) { } // Ensure that we can make a recurring tip of a non-integral amount. -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - RecurringTipNonIntegralAmount) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + RecurringTipNonIntegralAmount) { rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); const bool verified = true; @@ -605,13 +572,11 @@ IN_PROC_BROWSER_TEST_F( ASSERT_EQ(contribution_->GetReconcileTipTotal(), 2.5); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - RecurringAndPartialAutoContribution) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + RecurringAndPartialAutoContribution) { rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); // Visit verified publisher @@ -648,13 +613,11 @@ IN_PROC_BROWSER_TEST_F( contents(), "[data-test-id=rewards-summary-ac]", "-5.00 BAT"); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - MultipleRecurringOverBudgetAndPartialAutoContribution) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + MultipleRecurringOverBudgetAndPartialAutoContribution) { rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->TipViaCode("duckduckgo.com", 5.0, ledger::type::PublisherStatus::UPHOLD_VERIFIED, 0, true); @@ -696,14 +659,12 @@ IN_PROC_BROWSER_TEST_F( contents(), "[data-test-id=rewards-summary-ac]", "-5.00 BAT"); } -// TODO(zenparsing): Reimplement this as a unit test (#20473) IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, - DISABLED_SplitProcessorAutoContribution) { + SplitProcessorAutoContribution) { response_->SetVerifiedWallet(true); - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); @@ -763,13 +724,11 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, "-20.000BAT"); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - CheckIfReconcileWasReset) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + CheckIfReconcileWasReset) { rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); uint64_t current_stamp = 0; base::RunLoop run_loop_first; @@ -799,12 +758,10 @@ IN_PROC_BROWSER_TEST_F( run_loop_second.Run(); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - CheckIfReconcileWasResetACOff) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, + CheckIfReconcileWasResetACOff) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); uint64_t current_stamp = 0; base::RunLoop run_loop_first; @@ -829,14 +786,11 @@ IN_PROC_BROWSER_TEST_F( run_loop_second.Run(); } -// TODO(zenparsing): Reimplement this as a unit test (#20473) -IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, - DISABLED_SplitProcessOneTimeTip) { +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, SplitProcessOneTimeTip) { response_->SetVerifiedWallet(true); - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); contribution_->SetUpUpholdWallet(rewards_service_, 50.0); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipPublisher( @@ -848,7 +802,7 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, 1); // Load rewards page - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); // Wait for UI to update with contribution rewards_browsertest_util::WaitForElementToContain( @@ -874,12 +828,9 @@ IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, "30.000BAT42.90 USD"); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - PanelMonthlyTipAmount) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, PanelMonthlyTipAmount) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); rewards_browsertest_util::NavigateToPublisherPage( @@ -900,12 +851,9 @@ IN_PROC_BROWSER_TEST_F( ASSERT_EQ(tip_amount, 10.0); } -IN_PROC_BROWSER_TEST_F( - RewardsContributionBrowserTest, - PanelMonthlyTipActions) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsContributionBrowserTest, PanelMonthlyTipActions) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); rewards_browsertest_util::NavigateToPublisherPage( diff --git a/components/brave_rewards/browser/test/rewards_notification_browsertest.cc b/components/brave_rewards/browser/test/rewards_notification_browsertest.cc index b146646d64e2..5e043de51c91 100644 --- a/components/brave_rewards/browser/test/rewards_notification_browsertest.cc +++ b/components/brave_rewards/browser/test/rewards_notification_browsertest.cc @@ -314,7 +314,7 @@ IN_PROC_BROWSER_TEST_F( IN_PROC_BROWSER_TEST_F( RewardsNotificationBrowserTest, InsufficientNotificationForZeroAmountZeroPublishers) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); CheckInsufficientFundsForTesting(); WaitForInsufficientFundsNotification(); const auto& notifications = rewards_service_->GetAllNotifications(); @@ -330,9 +330,9 @@ IN_PROC_BROWSER_TEST_F( IN_PROC_BROWSER_TEST_F( RewardsNotificationBrowserTest, InsufficientNotificationForACNotEnoughFunds) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); // Visit publishers const bool verified = true; context_helper_->VisitPublisher( @@ -358,12 +358,10 @@ IN_PROC_BROWSER_TEST_F( EXPECT_FALSE(is_showing_notification); } -IN_PROC_BROWSER_TEST_F( - RewardsNotificationBrowserTest, - InsufficientNotificationForInsufficientAmount) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsNotificationBrowserTest, + InsufficientNotificationForInsufficientAmount) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipViaCode("duckduckgo.com", 20.0, @@ -389,12 +387,10 @@ IN_PROC_BROWSER_TEST_F( EXPECT_FALSE(is_showing_notification); } -IN_PROC_BROWSER_TEST_F( - RewardsNotificationBrowserTest, - InsufficientNotificationForVerifiedInsufficientAmount) { - rewards_browsertest_util::StartProcess(rewards_service_); +IN_PROC_BROWSER_TEST_F(RewardsNotificationBrowserTest, + InsufficientNotificationForVerifiedInsufficientAmount) { rewards_browsertest_util::CreateWallet(rewards_service_); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); contribution_->TipViaCode("duckduckgo.com", 50.0, diff --git a/components/brave_rewards/browser/test/rewards_p3a_browsertest.cc b/components/brave_rewards/browser/test/rewards_p3a_browsertest.cc index 1608223db720..e8b5edce74ea 100644 --- a/components/brave_rewards/browser/test/rewards_p3a_browsertest.cc +++ b/components/brave_rewards/browser/test/rewards_p3a_browsertest.cc @@ -132,6 +132,14 @@ class RewardsP3ABrowserTest : public InProcessBrowserTest, return; } + void TurnOnRewards() { + rewards_service_->SetAutoContributeEnabled(true); + // It is expected that |SetAdsEnabled| will start the Rewards utility + // process if necessary and create a Rewards payment ID for the profile. + rewards_service_->SetAdsEnabled(true); + WaitForRewardsEnable(); + } + content::WebContents* contents() { return browser()->tab_strip_model()->GetActiveWebContents(); } @@ -170,7 +178,6 @@ using brave_rewards::p3a::AdsEnabledDuration; IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, RewardsDisabled) { rewards_browsertest_util::StartProcess(rewards_service_); - WaitForRewardsInitialization(); histogram_tester_->ExpectBucketCount("Brave.Rewards.WalletBalance.3", 1, 1); @@ -188,8 +195,7 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, Duration) { PrefService* prefs = browser()->profile()->GetPrefs(); // Turn rewards on. - rewards_service_->SetAdsEnabled(true); - WaitForRewardsEnable(); + TurnOnRewards(); histogram_tester_->ExpectBucketCount("Brave.Rewards.AdsEnabledDuration", AdsEnabledDuration::kStillEnabled, 1); @@ -260,27 +266,15 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, Duration) { IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletStateWalletCreatedNoGrantsClaimedNoFundsAdded) { - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); FetchBalance(); - histogram_tester_->ExpectBucketCount("Brave.Rewards.WalletState", 1, 1); } IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletStateWalletCreatedGrantsClaimedNoFundsAdded) { - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); FetchBalance(); @@ -291,15 +285,7 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletStateWalletCreatedNoGrantsClaimedFundsAdded) { response_->SetUserFundsBalance(20.0); - - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); FetchBalance(); EXPECT_GT(histogram_tester_->GetBucketCount("Brave.Rewards.WalletState", 3), @@ -310,14 +296,8 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletStateWalletCreatedGrantsClaimedFundsAdded) { response_->SetUserFundsBalance(20.0); - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); + context_helper_->LoadRewardsPage(); contribution_->AddBalance(promotion_->ClaimPromotionViaCode()); FetchBalance(); @@ -328,7 +308,6 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletStateWalletDisabledAfterCreation) { - rewards_browsertest_util::StartProcess(rewards_service_); rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAdsEnabled(false); @@ -340,14 +319,7 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletBalanceZeroBAT) { response_->SetUserFundsBalance(0.0); - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); FetchBalance(); EXPECT_GT( @@ -357,14 +329,7 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletBalanceZeroBAT) { IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletBalanceLessThan10BAT) { response_->SetUserFundsBalance(9.0); - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); FetchBalance(); EXPECT_GT( @@ -374,14 +339,7 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletBalanceLessThan10BAT) { IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletBalanceLessThan50BAT) { response_->SetUserFundsBalance(20.0); - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); FetchBalance(); EXPECT_GT( @@ -391,14 +349,7 @@ IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletBalanceLessThan50BAT) { IN_PROC_BROWSER_TEST_F(RewardsP3ABrowserTest, WalletBalanceMoreThan50BAT) { response_->SetUserFundsBalance(60.0); - rewards_browsertest_util::StartProcess(rewards_service_); - rewards_browsertest_util::CreateWallet(rewards_service_); - - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - - rewards_service_->SetAutoContributeEnabled(true); - rewards_service_->SetAdsEnabled(true); - + TurnOnRewards(); FetchBalance(); EXPECT_GT( diff --git a/components/brave_rewards/browser/test/rewards_promotion_browsertest.cc b/components/brave_rewards/browser/test/rewards_promotion_browsertest.cc index ed7d87f96d13..8b6ce9b3ac71 100644 --- a/components/brave_rewards/browser/test/rewards_promotion_browsertest.cc +++ b/components/brave_rewards/browser/test/rewards_promotion_browsertest.cc @@ -95,26 +95,14 @@ class RewardsPromotionBrowserTest : public InProcessBrowserTest { response); } - double ClaimPromotion(bool use_panel, const bool should_finish = true) { - // Use the appropriate WebContents - base::WeakPtr contents = - use_panel ? context_helper_->OpenRewardsPopup() - : browser() - ->tab_strip_model() - ->GetActiveWebContents() - ->GetWeakPtr(); + double ClaimPromotion(bool should_finish = true) { + auto contents = context_helper_->OpenRewardsPopup(); // Wait for promotion to initialize promotion_->WaitForPromotionInitialization(); - // Claim promotion via settings page or panel, as instructed - if (use_panel) { - rewards_browsertest_util::WaitForElementThenClick( - contents.get(), "[data-test-id=notification-action-button"); - } else { - rewards_browsertest_util::WaitForElementThenClick( - contents.get(), "[data-test-id='claimGrant']"); - } + rewards_browsertest_util::WaitForElementThenClick( + contents.get(), "[data-test-id=notification-action-button"); // Wait for CAPTCHA rewards_browsertest_util::WaitForElementToAppear( @@ -143,21 +131,13 @@ class RewardsPromotionBrowserTest : public InProcessBrowserTest { EXPECT_EQ(promotion->expires_at, 1740816427ull); // Check that promotion notification shows the appropriate amount - const std::string selector = use_panel - ? "[id='root']" - : "[data-test-id='newTokenGrant']"; + const std::string selector = "[id='root']"; + rewards_browsertest_util::WaitForElementToContain(contents.get(), selector, "Free Token Grant"); rewards_browsertest_util::WaitForElementToContain(contents.get(), selector, "30.000 BAT"); - // Dismiss the promotion notification - if (use_panel) { - rewards_browsertest_util::WaitForElementThenClick(contents.get(), - "#" - "grant-completed-ok"); - } - return 30; } @@ -188,25 +168,16 @@ class RewardsPromotionBrowserTest : public InProcessBrowserTest { bool removed_ = false; }; -// https://github.com/brave/brave-browser/issues/12605 -IN_PROC_BROWSER_TEST_F(RewardsPromotionBrowserTest, - DISABLED_ClaimViaSettingsPage) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); - double balance = ClaimPromotion(false); +IN_PROC_BROWSER_TEST_F(RewardsPromotionBrowserTest, ClaimViaPanel) { + rewards_browsertest_util::CreateWallet(rewards_service_); + double balance = ClaimPromotion(); ASSERT_EQ(balance, 30.0); } -// https://github.com/brave/brave-browser/issues/12605 -IN_PROC_BROWSER_TEST_F(RewardsPromotionBrowserTest, DISABLED_ClaimViaPanel) { - double balance = ClaimPromotion(true); - ASSERT_EQ(balance, 30.0); -} - -IN_PROC_BROWSER_TEST_F( - RewardsPromotionBrowserTest, - PromotionHasEmptyPublicKey) { +IN_PROC_BROWSER_TEST_F(RewardsPromotionBrowserTest, + PromotionHasEmptyPublicKey) { response_->SetPromotionEmptyKey(true); - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); base::WeakPtr popup = context_helper_->OpenRewardsPopup(); @@ -218,16 +189,15 @@ IN_PROC_BROWSER_TEST_F( IN_PROC_BROWSER_TEST_F(RewardsPromotionBrowserTest, PromotionGone) { gone_ = true; - rewards_browsertest_util::StartProcess(rewards_service_); - ClaimPromotion(true, false); + rewards_browsertest_util::CreateWallet(rewards_service_); + ClaimPromotion(false); CheckPromotionStatus("Over"); } -// https://github.com/brave/brave-browser/issues/12632 -IN_PROC_BROWSER_TEST_F( - RewardsPromotionBrowserTest, - DISABLED_PromotionRemovedFromEndpoint) { - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); +IN_PROC_BROWSER_TEST_F(RewardsPromotionBrowserTest, + PromotionRemovedFromEndpoint) { + rewards_browsertest_util::CreateWallet(rewards_service_); + context_helper_->LoadRewardsPage(); promotion_->WaitForPromotionInitialization(); removed_ = true; context_helper_->ReloadCurrentSite(); @@ -240,7 +210,7 @@ IN_PROC_BROWSER_TEST_F( } IN_PROC_BROWSER_TEST_F(RewardsPromotionBrowserTest, PromotionNotQuiteOver) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->FetchPromotions(); promotion_->WaitForPromotionInitialization(); diff --git a/components/brave_rewards/browser/test/rewards_publisher_browsertest.cc b/components/brave_rewards/browser/test/rewards_publisher_browsertest.cc index 685cdca9214c..adfb4673de05 100644 --- a/components/brave_rewards/browser/test/rewards_publisher_browsertest.cc +++ b/components/brave_rewards/browser/test/rewards_publisher_browsertest.cc @@ -97,10 +97,9 @@ class RewardsPublisherBrowserTest : public InProcessBrowserTest { std::unique_ptr context_helper_; }; -// https://github.com/brave/brave-browser/issues/12986 -IN_PROC_BROWSER_TEST_F( - RewardsPublisherBrowserTest, - DISABLED_PanelShowsCorrectPublisherData) { +IN_PROC_BROWSER_TEST_F(RewardsPublisherBrowserTest, + PanelShowsCorrectPublisherData) { + rewards_browsertest_util::CreateWallet(rewards_service_); // Navigate to a verified site in a new tab const std::string publisher = "duckduckgo.com"; rewards_browsertest_util::NavigateToPublisherPage( @@ -115,10 +114,11 @@ IN_PROC_BROWSER_TEST_F( // Retrieve the inner text of the wallet panel and verify that it // looks as expected + std::string card_selector = "[data-test-id=publisher-card]"; rewards_browsertest_util::WaitForElementToContain( - popup_contents.get(), "[id='wallet-panel']", "Brave Verified Creator"); - rewards_browsertest_util::WaitForElementToContain( - popup_contents.get(), "[id='wallet-panel']", publisher); + popup_contents.get(), card_selector, "Verified Creator"); + rewards_browsertest_util::WaitForElementToContain(popup_contents.get(), + card_selector, publisher); // Retrieve the inner HTML of the wallet panel and verify that it // contains the expected favicon @@ -126,23 +126,23 @@ IN_PROC_BROWSER_TEST_F( const std::string favicon = "chrome://favicon/size/64@1x/https://" + publisher; rewards_browsertest_util::WaitForElementToContainHTML( - popup_contents.get(), "#wallet-panel", favicon); + popup_contents.get(), card_selector, favicon); } } IN_PROC_BROWSER_TEST_F(RewardsPublisherBrowserTest, VisitVerifiedPublisher) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); context_helper_->VisitPublisher( rewards_browsertest_util::GetUrl(https_server_.get(), "duckduckgo.com"), true); } IN_PROC_BROWSER_TEST_F(RewardsPublisherBrowserTest, VisitUnverifiedPublisher) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); context_helper_->VisitPublisher( rewards_browsertest_util::GetUrl(https_server_.get(), "brave.com"), false); @@ -150,9 +150,9 @@ IN_PROC_BROWSER_TEST_F(RewardsPublisherBrowserTest, VisitUnverifiedPublisher) { // Registered publishers without a wallet address are displayed as verified IN_PROC_BROWSER_TEST_F(RewardsPublisherBrowserTest, VisitRegisteredPublisher) { - rewards_browsertest_util::StartProcess(rewards_service_); + rewards_browsertest_util::CreateWallet(rewards_service_); rewards_service_->SetAutoContributeEnabled(true); - context_helper_->LoadURL(rewards_browsertest_util::GetRewardsUrl()); + context_helper_->LoadRewardsPage(); context_helper_->VisitPublisher( rewards_browsertest_util::GetUrl( https_server_.get(), diff --git a/components/brave_rewards/resources/page/components/connect_wallet_modal.tsx b/components/brave_rewards/resources/page/components/connect_wallet_modal.tsx index ce02d92840d8..08585241980b 100644 --- a/components/brave_rewards/resources/page/components/connect_wallet_modal.tsx +++ b/components/brave_rewards/resources/page/components/connect_wallet_modal.tsx @@ -82,7 +82,10 @@ export function ConnectWalletModal (props: Props) { {getString('connectWalletInfoNote')} - @@ -133,7 +136,11 @@ export function ConnectWalletModal (props: Props) { ]) } @@ -165,6 +172,7 @@ export function ConnectWalletModal (props: Props) { return ( } diff --git a/components/brave_rewards/resources/shared/components/wallet_card/external_wallet_view.tsx b/components/brave_rewards/resources/shared/components/wallet_card/external_wallet_view.tsx index ead10317992f..114b31e1d6d5 100644 --- a/components/brave_rewards/resources/shared/components/wallet_card/external_wallet_view.tsx +++ b/components/brave_rewards/resources/shared/components/wallet_card/external_wallet_view.tsx @@ -52,7 +52,11 @@ export function ExternalWalletView (props: Props) { if (!externalWallet) { return ( - ,