Disable avatar and contextual cards on low ram devices.

Fixes: 124127763
Test: robotest & manually inspected hprof
Change-Id: I8d328b782a9b1871b76edf433d2378d06face14a
This commit is contained in:
Fan Zhang
2019-03-13 13:07:52 -07:00
parent d392beed55
commit d482da51e5
3 changed files with 28 additions and 2 deletions

View File

@@ -27,6 +27,7 @@ import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import android.accounts.Account;
import android.app.ActivityManager;
import android.content.ContentProvider;
import android.content.ContentResolver;
import android.content.Context;
@@ -55,6 +56,7 @@ import org.robolectric.annotation.Config;
import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
import org.robolectric.shadow.api.Shadow;
import org.robolectric.shadows.ShadowActivityManager;
import org.robolectric.shadows.ShadowContentResolver;
import org.robolectric.shadows.ShadowPackageManager;
@@ -100,6 +102,19 @@ public class AvatarViewMixinTest {
verify(mixin, never()).hasAccount();
}
@Test
public void onStart_lowRamDevice_doNothing() {
final AvatarViewMixin mixin = spy(new AvatarViewMixin(mActivity, mImageView));
final ShadowActivityManager activityManager =
Shadow.extract(mContext.getSystemService(ActivityManager.class));
activityManager.setIsLowRamDevice(true);
mixin.onStart();
verify(mixin, never()).hasAccount();
}
@Test
@Config(qualifiers = "mcc999",
shadows = {