blob: d683568352b7ec9838fc3ac504bbe789ea0bfebb [file] [log] [blame]
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");
}
}