| package org.robolectric.res; |
| |
| import org.junit.Test; |
| import org.junit.runner.RunWith; |
| import org.junit.runners.JUnit4; |
| |
| import static org.assertj.core.api.Assertions.assertThat; |
| |
| @RunWith(JUnit4.class) |
| public class QualifiersTest { |
| @Test public void addPlatformVersion() throws Exception { |
| assertThat(Qualifiers.addPlatformVersion("", 21)).isEqualTo("v21"); |
| assertThat(Qualifiers.addPlatformVersion("v23", 21)).isEqualTo("v23"); |
| assertThat(Qualifiers.addPlatformVersion("foo-v14", 21)).isEqualTo("foo-v14"); |
| } |
| |
| @Test public void addSmallestScreenWidth() throws Exception { |
| assertThat(Qualifiers.addSmallestScreenWidth("", 320)).isEqualTo("sw320dp"); |
| assertThat(Qualifiers.addSmallestScreenWidth("sw160dp", 320)).isEqualTo("sw160dp"); |
| assertThat(Qualifiers.addSmallestScreenWidth("sw480dp", 320)).isEqualTo("sw480dp"); |
| assertThat(Qualifiers.addSmallestScreenWidth("en-v23", 320)).isEqualTo("en-v23-sw320dp"); // todo: order is wrong here |
| assertThat(Qualifiers.addSmallestScreenWidth("en-sw160dp-v23", 320)).isEqualTo("en-sw160dp-v23"); |
| assertThat(Qualifiers.addSmallestScreenWidth("en-sw480dp-v23", 320)).isEqualTo("en-sw480dp-v23"); |
| } |
| |
| @Test public void addScreenWidth() throws Exception { |
| assertThat(Qualifiers.addScreenWidth("", 320)).isEqualTo("w320dp"); |
| assertThat(Qualifiers.addScreenWidth("w160dp", 320)).isEqualTo("w160dp"); |
| assertThat(Qualifiers.addScreenWidth("w480dp", 320)).isEqualTo("w480dp"); |
| assertThat(Qualifiers.addScreenWidth("en-v23", 320)).isEqualTo("en-v23-w320dp"); // todo: order is wrong here |
| assertThat(Qualifiers.addScreenWidth("en-w160dp-v23", 320)).isEqualTo("en-w160dp-v23"); |
| assertThat(Qualifiers.addScreenWidth("en-w480dp-v23", 320)).isEqualTo("en-w480dp-v23"); |
| } |
| |
| @Test public void getSmallestScreenWidth() { |
| assertThat(Qualifiers.getSmallestScreenWidth("sw320dp")).isEqualTo(320); |
| assertThat(Qualifiers.getSmallestScreenWidth("sw320dp-v7")).isEqualTo(320); |
| assertThat(Qualifiers.getSmallestScreenWidth("en-rUS-sw320dp")).isEqualTo(320); |
| assertThat(Qualifiers.getSmallestScreenWidth("en-rUS-sw320dp-v7")).isEqualTo(320); |
| assertThat(Qualifiers.getSmallestScreenWidth("en-rUS-v7")).isEqualTo(-1); |
| assertThat(Qualifiers.getSmallestScreenWidth("en-rUS-w320dp-v7")).isEqualTo(-1); |
| } |
| |
| @Test public void getAddSmallestScreenWidth() { |
| assertThat(Qualifiers.addSmallestScreenWidth("v7", 320)).isEqualTo("v7-sw320dp"); |
| assertThat(Qualifiers.addSmallestScreenWidth("sw320dp-v7", 480)).isEqualTo("sw320dp-v7"); |
| } |
| |
| @Test public void getScreenWidth() { |
| assertThat(Qualifiers.getScreenWidth("w320dp")).isEqualTo(320); |
| assertThat(Qualifiers.getScreenWidth("w320dp-v7")).isEqualTo(320); |
| assertThat(Qualifiers.getScreenWidth("en-rUS-w320dp")).isEqualTo(320); |
| assertThat(Qualifiers.getScreenWidth("en-rUS-w320dp-v7")).isEqualTo(320); |
| assertThat(Qualifiers.getScreenWidth("en-rUS-v7")).isEqualTo(-1); |
| assertThat(Qualifiers.getScreenWidth("de-v23-sw320dp-w1024dp")).isEqualTo(1024); |
| assertThat(Qualifiers.getScreenWidth("en-rUS-sw320dp-v7")).isEqualTo(-1); |
| } |
| |
| @Test public void getAddScreenWidth() { |
| assertThat(Qualifiers.addScreenWidth("v7", 320)).isEqualTo("v7-w320dp"); |
| assertThat(Qualifiers.addScreenWidth("w320dp-v7", 480)).isEqualTo("w320dp-v7"); |
| } |
| |
| @Test public void getOrientation() { |
| assertThat(Qualifiers.getOrientation("land")).isEqualTo("land"); |
| assertThat(Qualifiers.getOrientation("en-rUs-land")).isEqualTo("land"); |
| assertThat(Qualifiers.getOrientation("port")).isEqualTo("port"); |
| assertThat(Qualifiers.getOrientation("port-v7")).isEqualTo("port"); |
| } |
| } |