Commit 07ae978e authored by Alice Wang's avatar Alice Wang Committed by Commit Bot

[Signin][Android] Teardown AccountManagerFacade in AccountManagerTestRule

This CL resets the AccountManagerFacade test instance to null in
AccountManagerTestRule teardown.

Bug: 1066800
Change-Id: I670cb1b4741ddfd6f5f126b21f17ae5b9c346887
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2135698Reviewed-by: default avatarTheresa  <twellington@chromium.org>
Reviewed-by: default avatarBoris Sazonov <bsazonov@chromium.org>
Commit-Queue: Alice Wang <aliceywang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#758142}
parent 12f8bf48
...@@ -171,8 +171,10 @@ import java.util.List; ...@@ -171,8 +171,10 @@ import java.util.List;
onView(withId(R.id.signin_promo_view_container)).check(matches(isDisplayed())); onView(withId(R.id.signin_promo_view_container)).check(matches(isDisplayed()));
// Reset states. // Reset states.
TestThreadUtils.runOnUiThreadBlocking( TestThreadUtils.runOnUiThreadBlocking(() -> {
() -> recyclerView.setDescendantFocusability(descendantFocusability)); mNtp.getMediatorForTesting().destroy();
recyclerView.setDescendantFocusability(descendantFocusability);
});
} }
@Test @Test
......
...@@ -25,6 +25,7 @@ import org.chromium.chrome.browser.settings.MainSettings; ...@@ -25,6 +25,7 @@ import org.chromium.chrome.browser.settings.MainSettings;
import org.chromium.chrome.browser.settings.SettingsActivity; import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsLauncher; import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.sync.ProfileSyncService; import org.chromium.chrome.browser.sync.ProfileSyncService;
import org.chromium.chrome.test.util.ApplicationTestUtils;
import org.chromium.components.browser_ui.settings.ChromeBasePreference; import org.chromium.components.browser_ui.settings.ChromeBasePreference;
import org.chromium.components.signin.AccountUtils; import org.chromium.components.signin.AccountUtils;
import org.chromium.components.signin.test.util.AccountHolder; import org.chromium.components.signin.test.util.AccountHolder;
...@@ -78,8 +79,9 @@ public class PasswordViewingTypeTest { ...@@ -78,8 +79,9 @@ public class PasswordViewingTypeTest {
} }
@After @After
public void tearDown() { public void tearDown() throws Exception {
TestThreadUtils.runOnUiThreadBlocking(() -> ProfileSyncService.resetForTests()); ApplicationTestUtils.finishActivity(mMainSettings.getActivity());
TestThreadUtils.runOnUiThreadBlocking(ProfileSyncService::resetForTests);
} }
/** /**
......
...@@ -20,6 +20,7 @@ import androidx.fragment.app.FragmentManager; ...@@ -20,6 +20,7 @@ import androidx.fragment.app.FragmentManager;
import androidx.test.filters.LargeTest; import androidx.test.filters.LargeTest;
import androidx.test.filters.MediumTest; import androidx.test.filters.MediumTest;
import org.junit.After;
import org.junit.Before; import org.junit.Before;
import org.junit.Rule; import org.junit.Rule;
import org.junit.Test; import org.junit.Test;
...@@ -87,6 +88,11 @@ import java.io.IOException; ...@@ -87,6 +88,11 @@ import java.io.IOException;
mDialog.show(fragmentManager, null); mDialog.show(fragmentManager, null);
} }
@After
public void tearDown() {
if (mDialog.getDialog() != null) mDialog.dismiss();
}
@Test @Test
@MediumTest @MediumTest
public void testTitle() { public void testTitle() {
......
...@@ -7,7 +7,6 @@ package org.chromium.chrome.browser.signin; ...@@ -7,7 +7,6 @@ package org.chromium.chrome.browser.signin;
import android.accounts.Account; import android.accounts.Account;
import android.support.test.filters.SmallTest; import android.support.test.filters.SmallTest;
import org.junit.After;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Before; import org.junit.Before;
import org.junit.Rule; import org.junit.Rule;
...@@ -17,7 +16,6 @@ import org.junit.runner.RunWith; ...@@ -17,7 +16,6 @@ import org.junit.runner.RunWith;
import org.chromium.base.test.util.RetryOnFailure; import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner; import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.chrome.test.util.browser.signin.MockChangeEventChecker; import org.chromium.chrome.test.util.browser.signin.MockChangeEventChecker;
import org.chromium.components.signin.AccountManagerFacadeProvider;
import org.chromium.components.signin.AccountUtils; import org.chromium.components.signin.AccountUtils;
import org.chromium.components.signin.ChromeSigninController; import org.chromium.components.signin.ChromeSigninController;
import org.chromium.components.signin.test.util.AccountHolder; import org.chromium.components.signin.test.util.AccountHolder;
...@@ -38,11 +36,6 @@ public class SigninHelperTest { ...@@ -38,11 +36,6 @@ public class SigninHelperTest {
mEventChecker = new MockChangeEventChecker(); mEventChecker = new MockChangeEventChecker();
} }
@After
public void tearDown() {
AccountManagerFacadeProvider.resetInstanceForTests();
}
@Test @Test
@SmallTest @SmallTest
@RetryOnFailure @RetryOnFailure
......
...@@ -7,6 +7,7 @@ import androidx.annotation.AnyThread; ...@@ -7,6 +7,7 @@ import androidx.annotation.AnyThread;
import androidx.annotation.MainThread; import androidx.annotation.MainThread;
import androidx.annotation.VisibleForTesting; import androidx.annotation.VisibleForTesting;
import org.chromium.base.Log;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.annotations.CalledByNative; import org.chromium.base.annotations.CalledByNative;
...@@ -17,6 +18,7 @@ import java.util.concurrent.atomic.AtomicReference; ...@@ -17,6 +18,7 @@ import java.util.concurrent.atomic.AtomicReference;
* AccountManagerFacade instance manipulation methods in one place. * AccountManagerFacade instance manipulation methods in one place.
*/ */
public class AccountManagerFacadeProvider { public class AccountManagerFacadeProvider {
private static final String TAG = "AccManagerProvider";
private static final AtomicReference<AccountManagerFacade> sAtomicInstance = private static final AtomicReference<AccountManagerFacade> sAtomicInstance =
new AtomicReference<>(); new AtomicReference<>();
private static AccountManagerFacade sInstance; private static AccountManagerFacade sInstance;
...@@ -61,6 +63,7 @@ public class AccountManagerFacadeProvider { ...@@ -61,6 +63,7 @@ public class AccountManagerFacadeProvider {
ThreadUtils.runOnUiThreadBlocking(() -> { ThreadUtils.runOnUiThreadBlocking(() -> {
sTestingInstance = null; sTestingInstance = null;
sAtomicInstance.set(sInstance); sAtomicInstance.set(sInstance);
Log.d(TAG, "reset AccountManagerFacade test instance");
}); });
} }
......
...@@ -57,7 +57,11 @@ public class AccountManagerTestRule implements TestRule { ...@@ -57,7 +57,11 @@ public class AccountManagerTestRule implements TestRule {
AccountManagerFacadeProvider.setInstanceForTests( AccountManagerFacadeProvider.setInstanceForTests(
new AccountManagerFacade(mDelegate)); new AccountManagerFacade(mDelegate));
}); });
statement.evaluate(); try {
statement.evaluate();
} finally {
AccountManagerFacadeProvider.resetInstanceForTests();
}
} }
}; };
} }
......
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