blob: 9df19efd8c52030511431304f45222b95d6c2219 [file] [log] [blame]
package com.xtremelabs.robolectric.shadows;
import android.app.ActivityManager;
import android.content.Context;
import com.xtremelabs.robolectric.Robolectric;
import com.xtremelabs.robolectric.WithTestDefaultsRunner;
import org.junit.Test;
import org.junit.runner.RunWith;
import static com.xtremelabs.robolectric.Robolectric.shadowOf;
import static junit.framework.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@RunWith(WithTestDefaultsRunner.class)
public class ActivityManagerTest {
@Test
public void canGetMemoryInfoForOurProcess() {
ActivityManager activityManager = (ActivityManager) Robolectric.application.getSystemService(Context.ACTIVITY_SERVICE);
ShadowActivityManager shadowActivityManager = shadowOf(activityManager);
ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
memoryInfo.lowMemory = true;
shadowActivityManager.setMemoryInfo(memoryInfo);
ActivityManager.MemoryInfo fetchedMemoryInfo = new ActivityManager.MemoryInfo();
activityManager.getMemoryInfo(fetchedMemoryInfo);
assertTrue(fetchedMemoryInfo.lowMemory);
}
@Test
public void canGetMemoryInfoEvenWhenWeDidNotSetIt() {
ActivityManager activityManager = (ActivityManager) Robolectric.application.getSystemService(Context.ACTIVITY_SERVICE);
ActivityManager.MemoryInfo fetchedMemoryInfo = new ActivityManager.MemoryInfo();
activityManager.getMemoryInfo(fetchedMemoryInfo);
assertFalse(fetchedMemoryInfo.lowMemory);
}
}