Check Logical Density
Bug 4352965
Change-Id: I30fcec79bb137831e0519259a04ead5b2b73ca98
diff --git a/tests/tests/dpi/src/android/dpi/cts/ConfigurationTest.java b/tests/tests/dpi/src/android/dpi/cts/ConfigurationTest.java
index 624f35a..2af36ff 100644
--- a/tests/tests/dpi/src/android/dpi/cts/ConfigurationTest.java
+++ b/tests/tests/dpi/src/android/dpi/cts/ConfigurationTest.java
@@ -22,6 +22,9 @@
import android.view.Display;
import android.view.WindowManager;
+import java.util.HashSet;
+import java.util.Set;
+
/**
* Test for verifying a device's screen configuration.
*/
@@ -49,5 +52,15 @@
boolean format4x3 = Math.ceil(max * 3.0d / 4.0d) >= min;
assertTrue("Aspect ratio must be between 4:3 and 16:9. It was " + max + ":" + min,
format4x3 && format16x9);
+
+ Set<Integer> allowedDensities = new HashSet<Integer>();
+ allowedDensities.add(DisplayMetrics.DENSITY_LOW);
+ allowedDensities.add(DisplayMetrics.DENSITY_MEDIUM);
+ allowedDensities.add(DisplayMetrics.DENSITY_HIGH);
+ allowedDensities.add(DisplayMetrics.DENSITY_XHIGH);
+ assertTrue("DisplayMetrics#densityDpi must be one of the DisplayMetrics.DENSITY_* values: "
+ + allowedDensities, allowedDensities.contains(metrics.densityDpi));
+
+ assertEquals(metrics.density, (float) metrics.densityDpi / DisplayMetrics.DENSITY_DEFAULT);
}
}