Commit 1523ef81 authored by Reilly Grant's avatar Reilly Grant Committed by Chromium LUCI CQ

Assert that RenderViewHostTestHarness::TearDown() is called

If a test inherits from RenderViewHostTestHarness but provides its own
implementation of TearDown() it may forget to call the version from its
parent class. This DCHECK provides a better error message to alert the
developer to their error.

Bug: 1163761
Change-Id: Ia2341253e511a28dd6a6bad695a9bccc5abafed8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2616963
Commit-Queue: Reilly Grant <reillyg@chromium.org>
Reviewed-by: default avatarScott Violet <sky@chromium.org>
Auto-Submit: Reilly Grant <reillyg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#841764}
parent 55c5edfb
...@@ -76,7 +76,10 @@ class AddressAccessoryControllerTest : public ChromeRenderViewHostTestHarness { ...@@ -76,7 +76,10 @@ class AddressAccessoryControllerTest : public ChromeRenderViewHostTestHarness {
web_contents(), mock_manual_filling_controller_.AsWeakPtr()); web_contents(), mock_manual_filling_controller_.AsWeakPtr());
} }
void TearDown() override { personal_data_manager()->ClearProfiles(); } void TearDown() override {
personal_data_manager()->ClearProfiles();
ChromeRenderViewHostTestHarness::TearDown();
}
AddressAccessoryController* controller() { AddressAccessoryController* controller() {
return AddressAccessoryControllerImpl::FromWebContents(web_contents()); return AddressAccessoryControllerImpl::FromWebContents(web_contents());
......
...@@ -124,12 +124,13 @@ class CreditCardAccessoryControllerTest ...@@ -124,12 +124,13 @@ class CreditCardAccessoryControllerTest
CreditCardAccessoryControllerImpl::CreateForWebContentsForTesting( CreditCardAccessoryControllerImpl::CreateForWebContentsForTesting(
web_contents(), mock_mf_controller_.AsWeakPtr(), &data_manager_, web_contents(), mock_mf_controller_.AsWeakPtr(), &data_manager_,
&af_manager_, &mock_af_driver_); &af_manager_, &mock_af_driver_);
data_manager_.SetPrefService(profile_.GetPrefs()); data_manager_.SetPrefService(profile()->GetPrefs());
} }
void TearDown() override { void TearDown() override {
data_manager_.SetPrefService(nullptr); data_manager_.SetPrefService(nullptr);
data_manager_.ClearCreditCards(); data_manager_.ClearCreditCards();
ChromeRenderViewHostTestHarness::TearDown();
} }
CreditCardAccessoryController* controller() { CreditCardAccessoryController* controller() {
...@@ -152,7 +153,6 @@ class CreditCardAccessoryControllerTest ...@@ -152,7 +153,6 @@ class CreditCardAccessoryControllerTest
MockAutocompleteHistoryManager history_; MockAutocompleteHistoryManager history_;
testing::NiceMock<MockManualFillingController> mock_mf_controller_; testing::NiceMock<MockManualFillingController> mock_mf_controller_;
TestAutofillManager af_manager_; TestAutofillManager af_manager_;
TestingProfile profile_;
}; };
TEST_F(CreditCardAccessoryControllerTest, RefreshSuggestions) { TEST_F(CreditCardAccessoryControllerTest, RefreshSuggestions) {
......
...@@ -217,6 +217,7 @@ class PasswordAccessoryControllerTest : public ChromeRenderViewHostTestHarness { ...@@ -217,6 +217,7 @@ class PasswordAccessoryControllerTest : public ChromeRenderViewHostTestHarness {
void TearDown() override { void TearDown() override {
if (mock_password_store_) if (mock_password_store_)
mock_password_store_->ShutdownOnUIThread(); mock_password_store_->ShutdownOnUIThread();
ChromeRenderViewHostTestHarness::TearDown();
} }
void CreateSheetController( void CreateSheetController(
...@@ -869,9 +870,9 @@ class PasswordAccessoryControllerWithTestStoreTest ...@@ -869,9 +870,9 @@ class PasswordAccessoryControllerWithTestStoreTest
} }
void TearDown() override { void TearDown() override {
PasswordAccessoryControllerTest::TearDown();
test_store_->ShutdownOnUIThread(); test_store_->ShutdownOnUIThread();
task_environment()->RunUntilIdle(); task_environment()->RunUntilIdle();
PasswordAccessoryControllerTest::TearDown();
} }
void DisableFeature() { void DisableFeature() {
...@@ -882,14 +883,13 @@ class PasswordAccessoryControllerWithTestStoreTest ...@@ -882,14 +883,13 @@ class PasswordAccessoryControllerWithTestStoreTest
protected: protected:
PasswordStore* CreateInternalPasswordStore() override { PasswordStore* CreateInternalPasswordStore() override {
test_store_ = CreateAndUseTestPasswordStore(profile());
return test_store_.get(); return test_store_.get();
} }
private: private:
base::test::ScopedFeatureList scoped_feature_list_; base::test::ScopedFeatureList scoped_feature_list_;
TestingProfile profile_; scoped_refptr<TestPasswordStore> test_store_;
scoped_refptr<TestPasswordStore> test_store_ =
CreateAndUseTestPasswordStore(&profile_);
}; };
TEST_F(PasswordAccessoryControllerWithTestStoreTest, AddsShowOtherPasswords) { TEST_F(PasswordAccessoryControllerWithTestStoreTest, AddsShowOtherPasswords) {
......
...@@ -143,7 +143,10 @@ class ControllerTest : public content::RenderViewHostTestHarness { ...@@ -143,7 +143,10 @@ class ControllerTest : public content::RenderViewHostTestHarness {
controller_->AddObserver(&mock_observer_); controller_->AddObserver(&mock_observer_);
} }
void TearDown() override { controller_->RemoveObserver(&mock_observer_); } void TearDown() override {
controller_->RemoveObserver(&mock_observer_);
RenderViewHostTestHarness::TearDown();
}
protected: protected:
static SupportedScriptProto* AddRunnableScript( static SupportedScriptProto* AddRunnableScript(
......
...@@ -87,7 +87,10 @@ class TriggerScriptCoordinatorTest : public content::RenderViewHostTestHarness { ...@@ -87,7 +87,10 @@ class TriggerScriptCoordinatorTest : public content::RenderViewHostTestHarness {
SimulateNavigateToUrl(GURL(kFakeDeepLink)); SimulateNavigateToUrl(GURL(kFakeDeepLink));
} }
void TearDown() override { coordinator_->RemoveObserver(&mock_observer_); } void TearDown() override {
coordinator_->RemoveObserver(&mock_observer_);
RenderViewHostTestHarness::TearDown();
}
void SimulateWebContentsVisibilityChanged(content::Visibility visibility) { void SimulateWebContentsVisibilityChanged(content::Visibility visibility) {
coordinator_->OnVisibilityChanged(visibility); coordinator_->OnVisibilityChanged(visibility);
......
...@@ -103,6 +103,7 @@ class WebsiteLoginManagerImplTest : public content::RenderViewHostTestHarness { ...@@ -103,6 +103,7 @@ class WebsiteLoginManagerImplTest : public content::RenderViewHostTestHarness {
protected: protected:
void SetUp() override { void SetUp() override {
RenderViewHostTestHarness::SetUp();
profile_store_ = new password_manager::MockPasswordStore; profile_store_ = new password_manager::MockPasswordStore;
ON_CALL(*profile_store_, IsAccountStore()).WillByDefault(Return(false)); ON_CALL(*profile_store_, IsAccountStore()).WillByDefault(Return(false));
ASSERT_TRUE(profile_store_->Init(/*prefs=*/nullptr)); ASSERT_TRUE(profile_store_->Init(/*prefs=*/nullptr));
...@@ -129,6 +130,7 @@ class WebsiteLoginManagerImplTest : public content::RenderViewHostTestHarness { ...@@ -129,6 +130,7 @@ class WebsiteLoginManagerImplTest : public content::RenderViewHostTestHarness {
account_store_->ShutdownOnUIThread(); account_store_->ShutdownOnUIThread();
} }
profile_store_->ShutdownOnUIThread(); profile_store_->ShutdownOnUIThread();
RenderViewHostTestHarness::TearDown();
} }
WebsiteLoginManagerImpl* manager() { return manager_.get(); } WebsiteLoginManagerImpl* manager() { return manager_.get(); }
......
...@@ -169,6 +169,7 @@ RenderViewHostTestEnabler::~RenderViewHostTestEnabler() { ...@@ -169,6 +169,7 @@ RenderViewHostTestEnabler::~RenderViewHostTestEnabler() {
// RenderViewHostTestHarness -------------------------------------------------- // RenderViewHostTestHarness --------------------------------------------------
RenderViewHostTestHarness::~RenderViewHostTestHarness() { RenderViewHostTestHarness::~RenderViewHostTestHarness() {
DCHECK(!task_environment_) << "TearDown() was not called.";
} }
NavigationController& RenderViewHostTestHarness::controller() { NavigationController& RenderViewHostTestHarness::controller() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment