diff options
Diffstat (limited to 'v1/src/test/java/com/xtremelabs/robolectric/shadows/ListPreferenceTest.java')
-rw-r--r-- | v1/src/test/java/com/xtremelabs/robolectric/shadows/ListPreferenceTest.java | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/v1/src/test/java/com/xtremelabs/robolectric/shadows/ListPreferenceTest.java b/v1/src/test/java/com/xtremelabs/robolectric/shadows/ListPreferenceTest.java new file mode 100644 index 000000000..1b9212b75 --- /dev/null +++ b/v1/src/test/java/com/xtremelabs/robolectric/shadows/ListPreferenceTest.java @@ -0,0 +1,74 @@ +package com.xtremelabs.robolectric.shadows; + +import android.app.Activity; +import android.preference.ListPreference; +import com.xtremelabs.robolectric.R; +import com.xtremelabs.robolectric.Robolectric; +import com.xtremelabs.robolectric.WithTestDefaultsRunner; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.instanceOf; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.hamcrest.CoreMatchers.nullValue; +import static org.hamcrest.CoreMatchers.sameInstance; +import static org.junit.Assert.assertThat; + +@RunWith(WithTestDefaultsRunner.class) +public class ListPreferenceTest { + + private ListPreference listPreference; + private ShadowListPreference shadow; + + @Before + public void setUp() throws Exception { + listPreference = new ListPreference(new Activity()); + shadow = Robolectric.shadowOf(listPreference); + } + + @Test + public void shouldInheritFromDialogPreference() { + assertThat(shadow, instanceOf(ShadowDialogPreference.class)); + } + + @Test + public void shouldHaveEntries() { + CharSequence[] entries = { "this", "is", "only", "a", "test" }; + + assertThat(listPreference.getEntries(), nullValue()); + listPreference.setEntries(entries); + assertThat(listPreference.getEntries(), sameInstance(entries)); + } + + @Test + public void shouldSetEntriesByResourceId() { + assertThat(listPreference.getEntries(), nullValue()); + listPreference.setEntries(R.array.greetings); + assertThat(listPreference.getEntries(), notNullValue()); + } + + @Test + public void shouldHaveEntryValues() { + CharSequence[] entryValues = { "this", "is", "only", "a", "test" }; + + assertThat(listPreference.getEntryValues(), nullValue()); + listPreference.setEntryValues(entryValues); + assertThat(listPreference.getEntryValues(), sameInstance(entryValues)); + } + + @Test + public void shouldSetEntryValuesByResourceId() { + assertThat(listPreference.getEntryValues(), nullValue()); + listPreference.setEntryValues(R.array.greetings); + assertThat(listPreference.getEntryValues(), notNullValue()); + } + + @Test + public void shouldSetValue() { + assertThat(listPreference.getValue(), nullValue()); + listPreference.setValue("testing"); + assertThat(listPreference.getValue(), equalTo("testing")); + } +} |