• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package org.robolectric.shadows;
2 
3 import static com.google.common.truth.Truth.assertThat;
4 
5 import androidx.test.ext.junit.runners.AndroidJUnit4;
6 import java.io.File;
7 import org.junit.Before;
8 import org.junit.Test;
9 import org.junit.runner.RunWith;
10 import org.robolectric.res.Fs;
11 import org.robolectric.res.FsFile;
12 import org.robolectric.res.Qualifiers;
13 import org.robolectric.res.ResType;
14 import org.robolectric.res.TypedResource;
15 import org.robolectric.res.XmlContext;
16 
17 @RunWith(AndroidJUnit4.class)
18 public class ConverterTest {
19 
20   private XmlContext xmlContext;
21 
22   @Before
setUp()23   public void setUp() throws Exception {
24     FsFile xmlFile = Fs.newFile(new File("res/values/foo.xml"));
25     Qualifiers qualifiers = Qualifiers.fromParentDir(xmlFile.getParent());
26 
27     xmlContext = new XmlContext("", xmlFile, qualifiers);
28   }
29 
30   @Test
fromCharSequence_asInt_shouldHandleSpacesInString()31   public void fromCharSequence_asInt_shouldHandleSpacesInString() {
32     final TypedResource<String> resource = new TypedResource<>(" 100 ", ResType.CHAR_SEQUENCE, xmlContext);
33     assertThat(Converter.getConverter(ResType.CHAR_SEQUENCE).asInt(resource)).isEqualTo(100);
34   }
35 
36   @Test
fromCharSequence_asCharSequence_shouldHandleSpacesInString()37   public void fromCharSequence_asCharSequence_shouldHandleSpacesInString() {
38     final TypedResource<String> resource = new TypedResource<>(" Robolectric ", ResType.CHAR_SEQUENCE, xmlContext);
39     assertThat(Converter.getConverter(ResType.CHAR_SEQUENCE).asCharSequence(resource)).isEqualTo("Robolectric");
40   }
41 
42   @Test
fromColor_asInt_shouldHandleSpacesInString()43   public void fromColor_asInt_shouldHandleSpacesInString() {
44     final TypedResource<String> resource = new TypedResource<>(" #aaaaaa ", ResType.COLOR, xmlContext);
45     assertThat(Converter.getConverter(ResType.COLOR).asInt(resource)).isEqualTo(-5592406);
46   }
47 
48   @Test
fromDrawableValue_asInt_shouldHandleSpacesInString()49   public void fromDrawableValue_asInt_shouldHandleSpacesInString() {
50     final TypedResource<String> resource = new TypedResource<>(" #aaaaaa ", ResType.DRAWABLE, xmlContext);
51     assertThat(Converter.getConverter(ResType.DRAWABLE).asInt(resource)).isEqualTo(-5592406);
52   }
53 
54   @Test
fromInt_asInt_shouldHandleSpacesInString()55   public void fromInt_asInt_shouldHandleSpacesInString() {
56     final TypedResource<String> resource = new TypedResource<>(" 100 ", ResType.INTEGER, xmlContext);
57     assertThat(Converter.getConverter(ResType.INTEGER).asInt(resource)).isEqualTo(100);
58   }
59 }