Fix an error of e2e setting test case.

This commit is contained in:
youtaol
2013-01-30 16:30:19 +08:00
parent 1d81bb526f
commit bc3eeb6a5c
2 changed files with 27 additions and 10 deletions
@@ -313,7 +313,11 @@ public class EndToEndTestUtils {
resetPreferredUnits(); resetPreferredUnits();
} }
deleteAllTracks(); int trackNumber = SOLO.getCurrentListViews().get(0).getCount();
if (trackNumber > 3) {
deleteAllTracks();
}
resetAllSettings(activityMyTracks, false); resetAllSettings(activityMyTracks, false);
instrumentation.waitForIdleSync(); instrumentation.waitForIdleSync();
@@ -46,7 +46,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
super.setUp(); super.setUp();
instrumentation = getInstrumentation(); instrumentation = getInstrumentation();
activityMyTracks = getActivity(); activityMyTracks = getActivity();
EndToEndTestUtils.setupForDebug(instrumentation, activityMyTracks); EndToEndTestUtils.setupForAllTest(instrumentation, activityMyTracks);
} }
/** /**
@@ -64,6 +64,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
// Change a setting of Map. // Change a setting of Map.
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.track_detail_stats_tab)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.track_detail_stats_tab));
instrumentation.waitForIdleSync(); instrumentation.waitForIdleSync();
// Rotate on a sub setting page. // Rotate on a sub setting page.
EndToEndTestUtils.rotateAllActivities(); EndToEndTestUtils.rotateAllActivities();
EndToEndTestUtils.SOLO.waitForText(activityMyTracks EndToEndTestUtils.SOLO.waitForText(activityMyTracks
@@ -73,6 +74,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
EndToEndTestUtils.SOLO.clickOnCheckBox(0); EndToEndTestUtils.SOLO.clickOnCheckBox(0);
instrumentation.waitForIdleSync(); instrumentation.waitForIdleSync();
EndToEndTestUtils.SOLO.goBack(); EndToEndTestUtils.SOLO.goBack();
// Change a setting of sharing. // Change a setting of sharing.
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_sharing)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_sharing));
assertTrue(EndToEndTestUtils.SOLO.waitForText( assertTrue(EndToEndTestUtils.SOLO.waitForText(
@@ -95,6 +97,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_reset)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_reset));
EndToEndTestUtils EndToEndTestUtils
.getButtonOnScreen(activityMyTracks.getString(R.string.generic_ok), true, true); .getButtonOnScreen(activityMyTracks.getString(R.string.generic_ok), true, true);
instrumentation.waitForIdleSync();
EndToEndTestUtils.SOLO.goBack(); EndToEndTestUtils.SOLO.goBack();
// Check settings. // Check settings.
@@ -120,8 +123,10 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
*/ */
public void testChangePreferredUnits() { public void testChangePreferredUnits() {
EndToEndTestUtils.createTrackIfEmpty(5, false); EndToEndTestUtils.createTrackIfEmpty(5, false);
// Change it and verify it. // Change it and verify it.
ChangePreferredUnits(); ChangePreferredUnits();
// Change it back and verify it. // Change it back and verify it.
ChangePreferredUnits(); ChangePreferredUnits();
} }
@@ -131,6 +136,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
*/ */
public void testChangeStatsSettings_underRecording_chart() { public void testChangeStatsSettings_underRecording_chart() {
EndToEndTestUtils.startRecording(); EndToEndTestUtils.startRecording();
// Test just change preferred units when display CHART tab. // Test just change preferred units when display CHART tab.
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.track_detail_chart_tab)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.track_detail_chart_tab));
EndToEndTestUtils.sendGps(3); EndToEndTestUtils.sendGps(3);
@@ -248,7 +254,6 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
// Write to SD card. // Write to SD card.
EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true); EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true);
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup_reset)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup_reset));
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup));
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup_now)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup_now));
assertTrue(EndToEndTestUtils.SOLO.waitForText( assertTrue(EndToEndTestUtils.SOLO.waitForText(
activityMyTracks.getString(R.string.settings_backup_now_success), 0, activityMyTracks.getString(R.string.settings_backup_now_success), 0,
@@ -258,22 +263,28 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
// Delete all tracks. // Delete all tracks.
EndToEndTestUtils.SOLO.goBack(); EndToEndTestUtils.SOLO.goBack();
EndToEndTestUtils.SOLO.goBack(); EndToEndTestUtils.SOLO.goBack();
EndToEndTestUtils.SOLO.goBack();
EndToEndTestUtils.deleteAllTracks(); EndToEndTestUtils.deleteAllTracks();
instrumentation.waitForIdleSync(); instrumentation.waitForIdleSync();
// Read from SD card. // Read from SD card.
EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true); EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true);
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup_reset)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup_reset));
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_backup_now));
EndToEndTestUtils.SOLO EndToEndTestUtils.SOLO
.clickOnText(activityMyTracks.getString(R.string.settings_backup_restore)); .clickOnText(activityMyTracks.getString(R.string.settings_backup_restore));
EndToEndTestUtils EndToEndTestUtils
.getButtonOnScreen(activityMyTracks.getString(R.string.generic_ok), true, true); .getButtonOnScreen(activityMyTracks.getString(R.string.generic_ok), true, true);
// Now there should be 2 backups.
instrumentation.waitForIdleSync();
assertEquals(2, EndToEndTestUtils.SOLO.getCurrentListViews().get(0).getCount());
// Click the older one for the older one contains tracks and the newer backup is empty.
EndToEndTestUtils.SOLO.clickOnText(EndToEndTestUtils.SOLO.getCurrentListViews().get(0)
.getItemAtPosition(1).toString());
assertTrue(EndToEndTestUtils.SOLO.waitForText( assertTrue(EndToEndTestUtils.SOLO.waitForText(
activityMyTracks.getString(R.string.settings_backup_restore_success), 0, activityMyTracks.getString(R.string.settings_backup_restore_success), 0,
EndToEndTestUtils.SUPER_LONG_WAIT_TIME)); EndToEndTestUtils.SUPER_LONG_WAIT_TIME));
EndToEndTestUtils.SOLO.goBack();
// Check restore track. // Check restore track.
assertTrue(EndToEndTestUtils.SOLO.searchText(EndToEndTestUtils.trackName)); assertTrue(EndToEndTestUtils.SOLO.searchText(EndToEndTestUtils.trackName));
} }
@@ -285,18 +296,19 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
public void testRecording() { public void testRecording() {
EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true); EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true);
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_recording)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.settings_recording));
// Changes the setting of recording name. // Changes the setting of recording name.
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_recording_track_name_title)); .getString(R.string.settings_recording_track_name_title));
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_recording_track_name_number_option)); .getString(R.string.settings_recording_track_name_number_option));
// Changes the setting of default activity. // Changes the setting of default activity.
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_recording_default_activity_title)); .getString(R.string.settings_recording_default_activity_title));
EndToEndTestUtils.enterTextAvoidSoftKeyBoard(0, EndToEndTestUtils.activityType); EndToEndTestUtils.enterTextAvoidSoftKeyBoard(0, EndToEndTestUtils.activityType);
EndToEndTestUtils EndToEndTestUtils
.getButtonOnScreen(activityMyTracks.getString(R.string.generic_ok), true, true); .getButtonOnScreen(activityMyTracks.getString(R.string.generic_ok), true, true);
EndToEndTestUtils.SOLO.goBack(); EndToEndTestUtils.SOLO.goBack();
EndToEndTestUtils.SOLO.goBack(); EndToEndTestUtils.SOLO.goBack();
@@ -397,9 +409,10 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
.getString(R.string.settings_google_drive_sync_title)); .getString(R.string.settings_google_drive_sync_title));
boolean isSyncChecked = false; boolean isSyncChecked = false;
if (EndToEndTestUtils.SOLO.waitForText( if (EndToEndTestUtils.SOLO
activityMyTracks.getString(R.string.settings_google_drive_sync_confirm_message).split( .waitForText(activityMyTracks
"%")[0], 1, EndToEndTestUtils.SHORT_WAIT_TIME)) { .getString(R.string.settings_google_drive_sync_confirm_message).split("%")[0], 1,
EndToEndTestUtils.SHORT_WAIT_TIME)) {
isSyncChecked = true; isSyncChecked = true;
} else { } else {
isSyncChecked = false; isSyncChecked = false;