1 package com.xtremelabs.robolectric.res; 2 3 import com.xtremelabs.robolectric.R; 4 import org.hamcrest.CoreMatchers; 5 import org.junit.Before; 6 import org.junit.Test; 7 8 import static org.hamcrest.CoreMatchers.equalTo; 9 import static org.junit.Assert.assertThat; 10 11 public class ResourceExtractorTest { 12 private ResourceExtractor resourceExtractor; 13 14 @Before 15 public void setUp() throws Exception { 16 resourceExtractor = new ResourceExtractor(); 17 resourceExtractor.addLocalRClass(R.class); 18 resourceExtractor.addSystemRClass(android.R.class); 19 } 20 21 @Test 22 public void shouldHandleStyleable() throws Exception { 23 assertThat(resourceExtractor.getLocalResourceId("id/textStyle"), equalTo(R.id.textStyle)); 24 assertThat(resourceExtractor.getLocalResourceId("styleable/TitleBar_textStyle"), CoreMatchers.<Object>nullValue()); 25 } 26 27 @Test 28 public void shouldPrefixAllSystemResourcesWithAndroid() throws Exception { 29 assertThat(resourceExtractor.getResourceId("android:id/text1"), equalTo(android.R.id.text1)); 30 } 31 32 @Test 33 public void shouldHandleNull() throws Exception { 34 assertThat(resourceExtractor.getLocalResourceId("@null"), equalTo(0)); 35 } 36 } 37