1a2043a8fff01f3e2d9a5e30dd1cf5fb6a5342f4dTyler Schultzpackage com.xtremelabs.robolectric.res; 2684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams 3a2043a8fff01f3e2d9a5e30dd1cf5fb6a5342f4dTyler Schultzimport com.xtremelabs.robolectric.R; 43a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richardimport org.junit.Before; 5684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williamsimport org.junit.Test; 6684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams 74ac725f9b4cebbf46805fc5e9b2f0eaf3fdd9b29Christian Williamsimport static com.xtremelabs.robolectric.util.TestUtil.resourceFile; 8684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williamsimport static org.hamcrest.CoreMatchers.equalTo; 9684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williamsimport static org.junit.Assert.assertThat; 10684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams 11684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williamspublic class StringResourceLoaderTest { 123a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard private StringResourceLoader stringResourceLoader; 133a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard 143a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard @Before public void setUp() throws Exception { 15684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams ResourceExtractor resourceExtractor = new ResourceExtractor(); 1629610b43047065c5dc66452d33f0113ac7e65fe8Phil Goodwin resourceExtractor.addLocalRClass(R.class); 173a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard stringResourceLoader = new StringResourceLoader(resourceExtractor); 18e759ba9296f7cf3063cdcab5f288ab6604d80ddbPhil Goodwin new DocumentLoader(stringResourceLoader).loadResourceXmlDir(resourceFile("res", "values")); 193a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard } 203a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard 213a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard @Test 223a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard public void testStringsAreResolved() throws Exception { 23684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams assertThat(stringResourceLoader.getValue(R.string.hello), equalTo("Hello")); 24684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams assertThat(stringResourceLoader.getValue(R.string.howdy), equalTo("Howdy")); 25684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams } 263a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard 273a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard @Test 283a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard public void testHtmlTagsAreRemovedFromStrings() throws Exception { 293a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard assertThat(stringResourceLoader.getValue(R.string.some_html), equalTo("Hello, world")); 303a15df058f1e3fd7fbff5c3b17126249f1ed909aChristian Williams & Ryan Richard } 3103026285fac7636e32c65f71bb8861f3a9906058Phil Goodwin & Tyler Schultz 3203026285fac7636e32c65f71bb8861f3a9906058Phil Goodwin & Tyler Schultz @Test 3303026285fac7636e32c65f71bb8861f3a9906058Phil Goodwin & Tyler Schultz public void shouldResolveStringReferences() throws Exception { 3403026285fac7636e32c65f71bb8861f3a9906058Phil Goodwin & Tyler Schultz assertThat(stringResourceLoader.getValue(R.string.greeting), equalTo("Howdy")); 3503026285fac7636e32c65f71bb8861f3a9906058Phil Goodwin & Tyler Schultz } 36684ccc2fc5a1c79aa45af22b95c37f7c509a00c1Christian Williams} 37