diff options
author | Tony Mantler <nicoya@google.com> | 2014-06-19 11:15:51 -0700 |
---|---|---|
committer | Tony Mantler <nicoya@google.com> | 2014-06-19 14:40:21 -0700 |
commit | 7da3422697f511ed4aa8aa73462917fbd0cffabf (patch) | |
tree | e0afd2310fba192f9e67fa971bd143b02c3d18d9 /tests | |
parent | 2ee62c0050ff141cc58f4a6801d295915e0b9b6c (diff) | |
download | android_packages_apps_UnifiedEmail-7da3422697f511ed4aa8aa73462917fbd0cffabf.tar.gz android_packages_apps_UnifiedEmail-7da3422697f511ed4aa8aa73462917fbd0cffabf.tar.bz2 android_packages_apps_UnifiedEmail-7da3422697f511ed4aa8aa73462917fbd0cffabf.zip |
Create MailPreferenceActivity
Enable test for GeneralPrefsFragment
Add test instance support to MailPrefs
Fix some values that weren't getting .apply()'d
b/9566150
Change-Id: Ia636c748c67518b0a6e3d436c8bfd09620fda6fc
Diffstat (limited to 'tests')
-rw-r--r-- | tests/src/com/android/mail/ui/settings/GeneralPrefsFragmentTest.java | 75 |
1 files changed, 36 insertions, 39 deletions
diff --git a/tests/src/com/android/mail/ui/settings/GeneralPrefsFragmentTest.java b/tests/src/com/android/mail/ui/settings/GeneralPrefsFragmentTest.java index c1a531123..cdb8ecafd 100644 --- a/tests/src/com/android/mail/ui/settings/GeneralPrefsFragmentTest.java +++ b/tests/src/com/android/mail/ui/settings/GeneralPrefsFragmentTest.java @@ -17,21 +17,26 @@ package com.android.mail.ui.settings; -import android.app.Activity; import android.content.Intent; +import android.os.Bundle; +import android.preference.ListPreference; import android.preference.PreferenceActivity; import android.test.ActivityInstrumentationTestCase2; import android.test.UiThreadTest; import android.test.suitebuilder.annotation.MediumTest; -import android.test.suitebuilder.annotation.Suppress; -// TODO: Insert the unified prefs class here once it's written -@Suppress +import com.android.mail.preferences.MailPrefs; +import com.android.mail.providers.UIProvider; +import com.android.mail.providers.UIProvider.AutoAdvance; +import com.android.mail.providers.UIProvider.SnapHeaderValue; + public class GeneralPrefsFragmentTest - extends ActivityInstrumentationTestCase2<Activity> { + extends ActivityInstrumentationTestCase2<MailPreferenceActivity> { + + private static final String PREFS_NAME_TEST = "UnifiedEmailTest"; public GeneralPrefsFragmentTest() { - super(Activity.class); + super(MailPreferenceActivity.class); } @Override @@ -39,62 +44,54 @@ public class GeneralPrefsFragmentTest super.setUp(); final Intent i = new Intent(); - i.putExtra(PreferenceActivity.EXTRA_SHOW_FRAGMENT, "com.android.mail.ui.settings."); + i.putExtra(PreferenceActivity.EXTRA_SHOW_FRAGMENT, + "com.android.mail.ui.settings.GeneralPrefsFragment"); + final Bundle b = new Bundle(1); + b.putBoolean(GeneralPrefsFragment.CALLED_FROM_TEST, true); + i.putExtra(PreferenceActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS, b); setActivityIntent(i); - getActivity(); + final MailPreferenceActivity activity = getActivity(); + getInstrumentation().waitForIdleSync(); + getInstrumentation().runOnMainSync(new Runnable() { + @Override + public void run() { + activity.getFragmentManager().executePendingTransactions(); + } + }); + final GeneralPrefsFragment fragment = activity.getGeneralPrefsFragment(); + fragment.mMailPrefs = new MailPrefs(activity, PREFS_NAME_TEST); } @UiThreadTest @MediumTest public void testChangeAutoAdvance() throws Throwable { - // A weak proxy test that a click on auto-advance will actually persist the proper value. - // A better test would simulate a dialog, dialog click, and check that the value is - // both displayed and persisted. - /* - final Activity activity = getActivity(); - final MailPrefs mailPrefs = MailPrefs.get(activity); - - activity.getFragmentManager().executePendingTransactions(); - + final MailPreferenceActivity activity = getActivity(); final GeneralPrefsFragment fragment = activity.getGeneralPrefsFragment(); + final MailPrefs mailPrefs = fragment.mMailPrefs; final ListPreference autoAdvancePref = (ListPreference) fragment .findPreference(GeneralPrefsFragment.AUTO_ADVANCE_WIDGET); fragment.onPreferenceChange(autoAdvancePref, UIProvider.AUTO_ADVANCE_MODE_OLDER); - - assertEquals(AutoAdvance.OLDER, mailPrefs.getAutoAdvanceMode()); + assertEquals(mailPrefs.getAutoAdvanceMode(), AutoAdvance.OLDER); fragment.onPreferenceChange(autoAdvancePref, UIProvider.AUTO_ADVANCE_MODE_NEWER); - - assertEquals(AutoAdvance.NEWER, mailPrefs.getAutoAdvanceMode()); - */ + assertEquals(mailPrefs.getAutoAdvanceMode(), AutoAdvance.NEWER); } @UiThreadTest @MediumTest public void testChangeSnapHeader() throws Throwable { - /* - final Activity activity = getActivity(); - final MailPrefs mailPrefs = MailPrefs.get(activity); - - activity.getFragmentManager().executePendingTransactions(); - + final MailPreferenceActivity activity = getActivity(); final GeneralPrefsFragment fragment = activity.getGeneralPrefsFragment(); + final MailPrefs mailPrefs = fragment.mMailPrefs; final ListPreference snapPref = (ListPreference) fragment .findPreference(GeneralPrefsFragment.SNAP_HEADER_MODE_WIDGET); - final int neverValue = GeneralPrefsFragment.prefValueToWidgetIndex( - GeneralPrefsFragment.SNAP_HEADER_VALUES, SnapHeaderValue.NEVER, -1); - snapPref.setValueIndex(neverValue); - - assertEquals(SnapHeaderValue.NEVER, mailPrefs.getSnapHeaderMode()); - - final int alwaysValue = GeneralPrefsFragment.prefValueToWidgetIndex( - GeneralPrefsFragment.SNAP_HEADER_VALUES, SnapHeaderValue.ALWAYS, -1); - snapPref.setValueIndex(alwaysValue); + fragment.onPreferenceChange(snapPref, "never"); + assertEquals(mailPrefs.getSnapHeaderMode(), SnapHeaderValue.NEVER); - assertEquals(SnapHeaderValue.ALWAYS, mailPrefs.getSnapHeaderMode()); - */ + fragment.onPreferenceChange(snapPref, "always"); + assertEquals(mailPrefs.getSnapHeaderMode(), SnapHeaderValue.ALWAYS); } } |