package edu.washington.geopost.test; import org.junit.Test; import android.app.AlertDialog; import android.support.v4.app.DialogFragment; import android.support.v4.app.Fragment; import android.test.ActivityInstrumentationTestCase2; import android.widget.Button; import edu.washington.geopost.HelpFragment; import edu.washington.geopost.MainActivity; public class HelpFragmentTest extends ActivityInstrumentationTestCase2<MainActivity> { private MainActivity activity; private Fragment fragment; public HelpFragmentTest() { super(MainActivity.class); } @Override protected void setUp() throws Exception { super.setUp(); activity = getActivity(); DialogFragment tempFragment = new HelpFragment(); tempFragment.show(activity.getSupportFragmentManager(), "help"); getInstrumentation().waitForIdleSync(); fragment = activity.getSupportFragmentManager().findFragmentByTag("help"); } @Override protected void tearDown() throws Exception { super.tearDown(); } @Test public void testPreconditions() { assertNotNull("activity is null", activity); assertNotNull("fragment is null", fragment); } @Test public void testFragmentIsBeingShown() { assertTrue(fragment instanceof DialogFragment); assertTrue(((DialogFragment) fragment).getShowsDialog()); } @Test public void testPositiveButtonNotNull() { AlertDialog dialog = (AlertDialog) ((DialogFragment) fragment).getDialog(); Button b = dialog.getButton(AlertDialog.BUTTON_POSITIVE); assertNotNull("positive button is null", b); } @Test public void testPositiveButtonMessage() { AlertDialog dialog = (AlertDialog) ((DialogFragment) fragment).getDialog(); Button b = dialog.getButton(AlertDialog.BUTTON_POSITIVE); final String expected = activity.getString(edu.washington.geopost.R.string.ok_message); final String actual = b.getText().toString(); assertEquals(expected, actual); } }