From 2d3894a1484a7378ae843e4422d65f8d195635c7 Mon Sep 17 00:00:00 2001 From: jasonwshsu Date: Sun, 26 Sep 2021 02:01:27 +0800 Subject: [PATCH] Fix failure test cases in AccessibilityShortcutPreferenceFragmentTest Root Cause: The lifecycle for AccessibilityShortcutPreferenceFragmentTest did not be called correctly. Solution: * Call onAttach() before onCreate() to some config, e.g. FeatureFactory. * Use ShadowFragment.class that we usually do in accessibility tests. Fix: 200906425 Fix: 201020915 Test: atest AccessibilityShortcutPreferenceFragmentTest Change-Id: I3391c0a4a2c7c361a44c7d282b1d5d3e75a28a39 --- .../AccessibilityShortcutPreferenceFragmentTest.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java index a61382ad69f..48d344a65ea 100644 --- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java +++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java @@ -41,7 +41,6 @@ import com.android.settings.R; import com.android.settings.testutils.shadow.ShadowFragment; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; @@ -165,7 +164,6 @@ public class AccessibilityShortcutPreferenceFragmentTest { assertThat(checkboxValue).isEqualTo(AccessibilityUtil.UserShortcutType.HARDWARE); } - @Ignore @Test @Config(shadows = ShadowFragment.class) public void restoreValueFromSavedInstanceState_assignToVariable() { @@ -182,8 +180,8 @@ public class AccessibilityShortcutPreferenceFragmentTest { savedInstanceState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE, AccessibilityUtil.UserShortcutType.SOFTWARE | AccessibilityUtil.UserShortcutType.HARDWARE); - mFragment.onCreate(savedInstanceState); mFragment.onAttach(mContext); + mFragment.onCreate(savedInstanceState); mFragment.setupEditShortcutDialog(dialog); final int value = mFragment.getShortcutTypeCheckBoxValue(); mFragment.saveNonEmptyUserShortcutType(value); @@ -197,10 +195,11 @@ public class AccessibilityShortcutPreferenceFragmentTest { } @Test - @Ignore + @Config(shadows = ShadowFragment.class) public void showGeneralCategory_shouldInitCategory() { final Bundle savedInstanceState = new Bundle(); when(mFragment.showGeneralCategory()).thenReturn(true); + mFragment.onAttach(mContext); mFragment.onCreate(savedInstanceState); verify(mFragment).initGeneralCategory();