Use fragment context in AppHeaderController

The application context doesn't have the correct theme, use
fragment context instead

Fix: 36489386
Fix: 36516826
Test: RunSettingsRoboTests & Screenshot
Change-Id: I8285584220796264d85ea570df5b1df6ebeb275f
This commit is contained in:
jackqdyulei
2017-03-21 18:30:21 -07:00
parent e39e8350a1
commit abba040727
3 changed files with 20 additions and 10 deletions

View File

@@ -83,6 +83,7 @@ public class AppInfoWithHeaderTest {
PreferenceManager mManager;
PreferenceScreen mScreen;
Context mShadowContext;
public TestFragment() {
mPm = mock(PackageManager.class);
@@ -90,10 +91,10 @@ public class AppInfoWithHeaderTest {
mScreen = mock(PreferenceScreen.class);
mPackageInfo = new PackageInfo();
mPackageInfo.applicationInfo = new ApplicationInfo();
mShadowContext = ShadowApplication.getInstance().getApplicationContext();
ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
(InstantAppDataProvider) (info -> false));
when(mManager.getContext())
.thenReturn(ShadowApplication.getInstance().getApplicationContext());
when(mManager.getContext()).thenReturn(mShadowContext);
}
@Override
@@ -120,6 +121,11 @@ public class AppInfoWithHeaderTest {
public PreferenceManager getPreferenceManager() {
return mManager;
}
@Override
public Context getContext() {
return mShadowContext;
}
}
}