1f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesipackage com.xtremelabs.robolectric.shadows; 2f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi 3eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwinimport android.util.DisplayMetrics; 4eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwinimport android.view.Display; 5eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwinimport com.xtremelabs.robolectric.Robolectric; 6eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwinimport com.xtremelabs.robolectric.WithTestDefaultsRunner; 7f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesiimport org.junit.Test; 8f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesiimport org.junit.runner.RunWith; 9f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi 10eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwinimport static org.junit.Assert.assertEquals; 11f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi 12eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin@RunWith(WithTestDefaultsRunner.class) 13f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesipublic class DisplayTest { 14f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi @Test 15f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi public void shouldProvideDisplayMetrics() throws Exception { 16eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin 17eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin Display display = Robolectric.newInstanceOf(Display.class); 18eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin ShadowDisplay shadow = Robolectric.shadowOf(display); 19eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin 20eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin shadow.setDensity(1.5f); 21eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin shadow.setDensityDpi(DisplayMetrics.DENSITY_MEDIUM); 22eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin shadow.setScaledDensity(1.6f); 23eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin shadow.setWidth(1024); 24eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin shadow.setHeight(600); 25eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin shadow.setXdpi(183.0f); 26eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin shadow.setYdpi(184.0f); 27eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin 28eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin DisplayMetrics metrics = new DisplayMetrics(); 29eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin 30eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin display.getMetrics(metrics); 31eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin 32eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin assertEquals(1.5f, metrics.density, 0.05); 33eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin assertEquals(DisplayMetrics.DENSITY_MEDIUM, metrics.densityDpi); 34eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin assertEquals(1.6f, metrics.scaledDensity, 0.05); 35eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin assertEquals(1024, metrics.widthPixels); 36eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin assertEquals(600, metrics.heightPixels); 37eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin assertEquals(183.0f, metrics.xdpi, 0.05); 38eb645dd6f075c4c7d6d61193fde416739adb7fc1Gregg Van Hove & Phil Goodwin assertEquals(184.0f, metrics.ydpi, 0.05); 39f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi } 40f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi 41f8df99654a5e2dd9d19b034758972777d7376be7Michael Portuesi} 42