1 package org.robolectric.shadows; 2 3 import static org.junit.Assert.assertFalse; 4 import static org.junit.Assert.assertTrue; 5 6 import android.widget.CheckedTextView; 7 import org.junit.Before; 8 import org.junit.Test; 9 import org.junit.runner.RunWith; 10 import org.robolectric.RobolectricTestRunner; 11 import org.robolectric.RuntimeEnvironment; 12 13 @RunWith(RobolectricTestRunner.class) 14 public class ShadowCheckedTextViewTest { 15 16 private CheckedTextView checkedTextView; 17 18 @Before 19 public void beforeTests() { 20 checkedTextView = new CheckedTextView(RuntimeEnvironment.application); 21 } 22 23 @Test 24 public void testToggle() { 25 assertFalse(checkedTextView.isChecked()); 26 27 checkedTextView.toggle(); 28 29 assertTrue(checkedTextView.isChecked()); 30 } 31 32 @Test 33 public void testSetChecked() { 34 assertFalse(checkedTextView.isChecked()); 35 36 checkedTextView.setChecked(true); 37 38 assertTrue(checkedTextView.isChecked()); 39 } 40 41 @Test public void toggle_shouldChangeCheckedness() throws Exception { 42 CheckedTextView view = new CheckedTextView(RuntimeEnvironment.application); 43 assertFalse(view.isChecked()); 44 view.toggle(); 45 assertTrue(view.isChecked()); 46 view.toggle(); // Used to support performClick(), but Android doesn't. Sigh. 47 assertFalse(view.isChecked()); 48 } 49 } 50