From 3980675f180cb88dcd2f3bb55cb9231d3bba2c66 Mon Sep 17 00:00:00 2001 From: Sandeep Siddhartha Date: Wed, 24 Sep 2014 18:29:47 -0700 Subject: [PATCH] Save/restore account preference when running tests Change-Id: I0b1ec2144007b60fc53b4fcfa04be1b6dc21ced2 --- .../accounts/AccountsChangedReceiverTests.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/tests/src/com/android/inputmethod/latin/accounts/AccountsChangedReceiverTests.java b/tests/src/com/android/inputmethod/latin/accounts/AccountsChangedReceiverTests.java index 3319eec3b..00857e54e 100644 --- a/tests/src/com/android/inputmethod/latin/accounts/AccountsChangedReceiverTests.java +++ b/tests/src/com/android/inputmethod/latin/accounts/AccountsChangedReceiverTests.java @@ -33,18 +33,21 @@ public class AccountsChangedReceiverTests extends AndroidTestCase { private static final String ACCOUNT_2 = "account2@example.com"; private SharedPreferences mPrefs; + private String mLastKnownAccount = null; @Override protected void setUp() throws Exception { super.setUp(); mPrefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + // Keep track of the current account so that we restore it when the test finishes. + mLastKnownAccount = mPrefs.getString(Settings.PREF_ACCOUNT_NAME, null); } @Override protected void tearDown() throws Exception { super.tearDown(); - // Remove all preferences before the next test. - mPrefs.edit().clear(); + // Restore the account that was present before running the test. + updateAccountName(mLastKnownAccount); } public void testUnknownIntent() { @@ -95,9 +98,11 @@ public class AccountsChangedReceiverTests extends AndroidTestCase { } private void updateAccountName(String accountName) { - mPrefs.edit() - .putString(Settings.PREF_ACCOUNT_NAME, accountName) - .commit(); + if (accountName == null) { + mPrefs.edit().remove(Settings.PREF_ACCOUNT_NAME).apply(); + } else { + mPrefs.edit().putString(Settings.PREF_ACCOUNT_NAME, accountName).apply(); + } } private void assertAccountName(String expectedAccountName) {