DisplayMetrics WIP
diff --git a/robolectric/src/test/java/org/robolectric/android/internal/ParallelUniverseTest.java b/robolectric/src/test/java/org/robolectric/android/internal/ParallelUniverseTest.java
index d0fec67..02ac356 100644
--- a/robolectric/src/test/java/org/robolectric/android/internal/ParallelUniverseTest.java
+++ b/robolectric/src/test/java/org/robolectric/android/internal/ParallelUniverseTest.java
@@ -206,14 +206,6 @@
}
@Test
- public void setUpApplicationState_setsVersionQualifierFromConfigQualifiers() {
- String givenQualifiers = "land-v17";
- Config c = new Config.Builder().setQualifiers(givenQualifiers).build();
- setUpApplicationState(c, dummyManifest());
- assertThat(RuntimeEnvironment.getQualifiers()).contains("land-v17");
- }
-
- @Test
public void setUpApplicationState_setsVersionQualifierFromSdkConfigWithOtherQualifiers() {
String givenQualifiers = "large-land";
Config c = new Config.Builder().setQualifiers(givenQualifiers).build();
@@ -239,6 +231,12 @@
}
}
+ @Test
+ public void setUpApplicationState_displayMetrics() {
+ DisplayMetrics dm = RuntimeEnvironment.application.getResources().getDisplayMetrics();
+ assertThat(dm.density).isEqualTo(1.0f);
+ }
+
/** Can't use Mockito for classloader issues */
static class ThrowingManifest extends AndroidManifest {
public ThrowingManifest() {
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowResourcesTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowResourcesTest.java
index 257ba51..746cd4a 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowResourcesTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowResourcesTest.java
@@ -216,7 +216,10 @@
}
@Test
+ //@Config(sdk = 16) // todo: unpin
public void getDimension() throws Exception {
+ DisplayMetrics dm = RuntimeEnvironment.application.getResources().getDisplayMetrics();
+ assertThat(dm.density).isEqualTo(1.0f);
assertThat(resources.getDimension(R.dimen.test_dip_dimen)).isEqualTo(20f);
assertThat(resources.getDimension(R.dimen.test_dp_dimen)).isEqualTo(8f);
assertThat(resources.getDimension(R.dimen.test_in_dimen)).isEqualTo(99f * 240);
diff --git a/shadows/framework/src/main/java/org/robolectric/android/Bootstrap.java b/shadows/framework/src/main/java/org/robolectric/android/Bootstrap.java
index 52a04cd..4025d53 100644
--- a/shadows/framework/src/main/java/org/robolectric/android/Bootstrap.java
+++ b/shadows/framework/src/main/java/org/robolectric/android/Bootstrap.java
@@ -55,7 +55,7 @@
if (apiLevel >= VERSION_CODES.JELLY_BEAN_MR1) {
configuration.densityDpi = resTab.density;
} else {
- //displayMetrics.density = ((float) resTab.density) / 160;
+ displayMetrics.density = ((float) resTab.density) / 160;
}
//configuration.
// end new stuff
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowResources.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowResources.java
index a310184..d90d4ac 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowResources.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowResources.java
@@ -235,19 +235,19 @@
displayMetrics = null;
}
- @Implementation
- public DisplayMetrics getDisplayMetrics() {
- if (displayMetrics == null) {
- if (display == null) {
- display = ReflectionHelpers.callConstructor(Display.class);
- }
-
- displayMetrics = new DisplayMetrics();
- display.getMetrics(displayMetrics);
- }
- displayMetrics.density = this.density;
- return displayMetrics;
- }
+// @Implementation
+// public DisplayMetrics getDisplayMetrics() {
+// if (displayMetrics == null) {
+// if (display == null) {
+// display = ReflectionHelpers.callConstructor(Display.class);
+// }
+//
+// displayMetrics = new DisplayMetrics();
+// display.getMetrics(displayMetrics);
+// }
+// displayMetrics.density = this.density;
+// return displayMetrics;
+// }
@HiddenApi @Implementation
public XmlResourceParser loadXmlResourceParser(int resId, String type) throws Resources.NotFoundException {