Index: chrome/android/junit/src/org/chromium/chrome/browser/media/router/ChromeMediaRouterSinkObservationTest.java |
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/media/router/ChromeMediaRouterSinkObservationTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/media/router/ChromeMediaRouterSinkObservationTest.java |
index 4c85f8ef7bd3ee5baf0744346c329edcc01f3ddc..bd5cb3be3f05d09c839d5ae855b90b75091efb1e 100644 |
--- a/chrome/android/junit/src/org/chromium/chrome/browser/media/router/ChromeMediaRouterSinkObservationTest.java |
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/media/router/ChromeMediaRouterSinkObservationTest.java |
@@ -9,6 +9,8 @@ import static org.junit.Assert.assertTrue; |
import android.os.Build; |
+import org.chromium.base.Log; |
+import org.chromium.base.SysUtils; |
import org.chromium.base.test.util.Feature; |
import org.chromium.chrome.browser.media.router.cast.MediaSink; |
import org.chromium.testing.local.LocalRobolectricTestRunner; |
@@ -16,16 +18,20 @@ import org.junit.Test; |
import org.junit.runner.RunWith; |
import org.robolectric.annotation.Config; |
+import java.lang.reflect.Field; |
import java.util.ArrayList; |
import java.util.List; |
+ |
/** |
* Sink observation tests for ChromeMediaRouter. |
*/ |
@RunWith(LocalRobolectricTestRunner.class) |
-@Config(manifest = Config.NONE, |
- shadows = { ChromeMediaRouterTestBase.FakeActivityManager.class }) |
mikecase (-- gone --)
2016/07/31 04:21:09
So this was shadowed out because SysUtils used to
jbudorick
2016/08/01 13:52:04
Agreed. Passing by coincidence is not great.
|
+@Config(manifest = Config.NONE) |
public class ChromeMediaRouterSinkObservationTest extends ChromeMediaRouterTestBase { |
+ |
+ private static final String TAG = "SinkObservationTest";; |
+ |
@Test |
@Feature({"MediaRouter"}) |
public void testRouterOnSinksReceived() { |
@@ -92,16 +98,27 @@ public class ChromeMediaRouterSinkObservationTest extends ChromeMediaRouterTestB |
@Test |
@Feature({"MediaRouter"}) |
- public void testNotLowRamDevice() { |
- sIsLowRamDevice = false; |
+ public void testNotLowRamDevice() throws Exception { |
+ setIsLowRamDevice(false); |
assertTrue(mChromeMediaRouter.startObservingMediaSinks(SOURCE_ID1)); |
} |
@Test |
@Feature({"MediaRouter"}) |
- public void testIsLowRamDevice() { |
- sIsLowRamDevice = true; |
+ public void testIsLowRamDevice() throws Exception { |
+ setIsLowRamDevice(true); |
assertEquals(Build.VERSION.SDK_INT <= Build.VERSION_CODES.JELLY_BEAN_MR2, |
mChromeMediaRouter.startObservingMediaSinks(SOURCE_ID1)); |
} |
+ |
+ private void setIsLowRamDevice(Boolean isLowRamDevice) throws Exception { |
+ try { |
+ Field field = SysUtils.class.getDeclaredField("sLowEndDevice"); |
+ field.setAccessible(true); |
+ field.set(null, isLowRamDevice); |
+ } catch (NoSuchFieldException e) { |
+ Log.e(TAG, "sLowEndDevice field was changed in SysUtils. Must update this test."); |
+ throw e; |
+ } |
+ } |
} |