1b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williamspackage com.xtremelabs.robolectric.shadows;
2b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams
33a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogenimport static org.hamcrest.CoreMatchers.equalTo;
43a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogenimport static org.hamcrest.MatcherAssert.assertThat;
53a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogenimport static org.junit.Assert.assertNotNull;
63a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen
7b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williamsimport android.app.Activity;
83a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen
93a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogenimport com.xtremelabs.robolectric.Robolectric;
10b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williamsimport com.xtremelabs.robolectric.WithTestDefaultsRunner;
113a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen
12b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williamsimport org.junit.Before;
13b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williamsimport org.junit.Test;
14b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williamsimport org.junit.runner.RunWith;
15b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams
16b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams@RunWith(WithTestDefaultsRunner.class)
17b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williamspublic class TypedArrayTest {
183a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    private android.content.res.TypedArray typedArray;
19b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams
2043c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen    @Before
213a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void setUp() throws Exception {
223a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen      typedArray = Robolectric.newInstanceOf(android.content.res.TypedArray.class);
23b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams    }
24b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams
25b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams    @Test
26b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams    public void getResources() throws Exception {
273a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen        assertNotNull(new Activity().obtainStyledAttributes(null).getResources());
283a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
2943c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
303a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
313a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testBooleanDefaultValue() {
3243c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getBoolean(0, true), equalTo(true));
3343c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getBoolean(0, false), equalTo(false));
343a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
3543c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
363a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
373a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testIntDefaultValue() {
3843c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getInt(0, 15), equalTo(15));
3943c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getInteger(0, 24), equalTo(24));
403a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
4143c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
423a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
433a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testFloatDefaultValue() {
4443c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getFloat(0, 0.5f), equalTo(0.5f));
453a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
4643c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
473a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
483a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testDimensionDefaultValue() {
4943c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getDimension(0, 0.5f), equalTo(0.5f));
503a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
5143c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
523a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
533a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testDimensionPixelOffsetDefaultValue() {
5443c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getDimensionPixelOffset(0, 2), equalTo(2));
553a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
5643c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
573a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
583a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testDimensionPixelSizeDefaultValue() {
5943c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getDimensionPixelSize(0, 2), equalTo(2));
603a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
6143c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
623a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
633a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testLayoutDimensionDefaultValue() {
6443c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getLayoutDimension(0, 2), equalTo(2));
653a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    }
6643c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen
673a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    @Test
683a057bdcd42d3d015c3ec638649431766054732dJon Boekenoogen    public void testResourceIdDefaultValue() {
6943c9cb31115b8f00b079d1dff9e70503f040d8ccJon Boekenoogen        assertThat(typedArray.getResourceId(0, 2), equalTo(2));
70b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams    }
71b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams}
72