Add a case to test the setting and menu item of sync.

This commit is contained in:
youtaol
2013-01-24 18:48:04 +08:00
parent 517d5bdfb7
commit c817a0b1c0
2 changed files with 47 additions and 2 deletions
@@ -64,6 +64,7 @@ import java.util.Locale;
*/
public class GoogleUtils {
public static final String DOCUMENT_NAME_PREFIX = "My Tracks";
public static final String ACCOUNT_NAME = "mytrackstest@gmail.com";
public static final String SPREADSHEET_NAME = DOCUMENT_NAME_PREFIX + "-" + EndToEndTestUtils.activityType;
/**
@@ -329,7 +329,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_fixed_value),
PreferencesUtils.getString(context, R.string.track_color_mode_key, errorString));
}
/**
* Tests the setting of dynamic track color settings.
*/
@@ -349,7 +349,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_dynamic_value),
PreferencesUtils.getString(context, R.string.track_color_mode_key, errorString));
}
/**
* Tests the setting of single track color settings.
*/
@@ -369,6 +369,50 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
PreferencesUtils.getString(context, R.string.track_color_mode_key, errorString));
}
/**
* Tests the setting and menu item of sync.
*/
public void testSyncNowMenu() {
EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true);
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_google));
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_google_account_title));
// Whether test account is bound.
if (EndToEndTestUtils.SOLO.waitForText(GoogleUtils.ACCOUNT_NAME, 1,
EndToEndTestUtils.TINY_WAIT_TIME)) {
EndToEndTestUtils.SOLO.clickOnText(GoogleUtils.ACCOUNT_NAME);
instrumentation.waitForIdleSync();
assertTrue(EndToEndTestUtils.findTextView(
activityMyTracks.getString(R.string.settings_google_drive_sync_title)).isEnabled());
} else {
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.value_none));
instrumentation.waitForIdleSync();
assertFalse(EndToEndTestUtils.findTextView(
activityMyTracks.getString(R.string.settings_google_drive_sync_title)).isEnabled());
return;
}
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_google_drive_sync_title));
boolean isSyncChecked = false;
if (EndToEndTestUtils.SOLO.waitForText(
activityMyTracks.getString(R.string.settings_google_drive_sync_confirm_message_on).split(
"%")[0], 1, EndToEndTestUtils.SHORT_WAIT_TIME)) {
isSyncChecked = true;
} else {
assertTrue(EndToEndTestUtils.SOLO.waitForText(activityMyTracks.getString(
R.string.settings_google_drive_sync_confirm_message_off).split("%")[0]));
isSyncChecked = false;
}
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.generic_ok));
EndToEndTestUtils.SOLO.goBack();
EndToEndTestUtils.SOLO.goBack();
assertEquals(isSyncChecked,
EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_sync_now), false));
}
@Override
protected void tearDown() throws Exception {
EndToEndTestUtils.SOLO.finishOpenedActivities();