From 77dfb359224d8f7a50a42c5a35568f636b4c4834 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 set some configs correctly, e.g. FeatureFactory. * Use ShadowFragment.class that we usually do in accessibility tests. Fix: 200906425 Fix: 201020915 Test: atest AccessibilityShortcutPreferenceFragmentTest Change-Id: I3391c0a4a2c7c361a44c7d282b1d5d3e75a28a39 Merged-In: I3391c0a4a2c7c361a44c7d282b1d5d3e75a28a39 --- .../AccessibilityShortcutPreferenceFragmentTest.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java index 6d70bf74cca..48d344a65ea 100644 --- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java +++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java @@ -180,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); @@ -195,9 +195,11 @@ public class AccessibilityShortcutPreferenceFragmentTest { } @Test + @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();