Merge heads

This commit is contained in:
youtaol
2012-12-13 17:05:41 +08:00
parent 483faa9574
commit 612dac55d8
4 changed files with 44 additions and 20 deletions
@@ -114,15 +114,18 @@ public class MultiColorTrackPath implements TrackPath {
} }
} }
public int getSlowColor() { @VisibleForTesting
protected int getSlowColor() {
return slowColor; return slowColor;
} }
public int getNormalColor() { @VisibleForTesting
protected int getNormalColor() {
return normalColor; return normalColor;
} }
public int getFastColor() { @VisibleForTesting
protected int getFastColor() {
return fastColor; return fastColor;
} }
} }
@@ -92,6 +92,7 @@ public class EndToEndTestUtils {
public static String KM = ""; public static String KM = "";
public static String MILE = ""; public static String MILE = "";
public static int VERY_SHORT_WAIT_TIME = 500;
public static int SHORT_WAIT_TIME = 2000; public static int SHORT_WAIT_TIME = 2000;
public static int NORMAL_WAIT_TIME = 8000; public static int NORMAL_WAIT_TIME = 8000;
public static int LONG_WAIT_TIME = 15000; public static int LONG_WAIT_TIME = 15000;
@@ -972,10 +973,8 @@ public class EndToEndTestUtils {
*/ */
public static void waitTextToDisappear(String text) { public static void waitTextToDisappear(String text) {
instrumentation.waitForIdleSync(); instrumentation.waitForIdleSync();
// The first wait should longer than following waits. SOLO.waitForText(text, 1, VERY_SHORT_WAIT_TIME);
SOLO.waitForText(text, 1, 500); while (SOLO.waitForText(text, 1, VERY_SHORT_WAIT_TIME)) {}
while (SOLO.waitForText(text, 1, 200)) {}
return; return;
} }
} }
@@ -303,12 +303,13 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
} }
/** /**
* Tests the setting of track color settings. * Tests the setting of fixed track color settings.
*/ */
public void testTrackColorSettings() { public void testTrackColorSettings_fixed() {
Context context = activityMyTracks.getApplicationContext(); Context context = activityMyTracks.getApplicationContext();
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.menu_map)); EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.menu_map));
String errorString = "error";
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_map_track_color_mode)); .getString(R.string.settings_map_track_color_mode));
@@ -318,7 +319,17 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
EndToEndTestUtils.waitTextToDisappear(activityMyTracks EndToEndTestUtils.waitTextToDisappear(activityMyTracks
.getString(R.string.settings_map_track_color_mode_dynamic_value)); .getString(R.string.settings_map_track_color_mode_dynamic_value));
assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_fixed_value), assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_fixed_value),
PreferencesUtils.getString(context, R.string.track_color_mode_key, "error")); PreferencesUtils.getString(context, R.string.track_color_mode_key, errorString));
}
/**
* Tests the setting of dynamic track color settings.
*/
public void testTrackColorSettings_dynamic() {
Context context = activityMyTracks.getApplicationContext();
EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true);
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.menu_map));
String errorString = "error";
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_map_track_color_mode)); .getString(R.string.settings_map_track_color_mode));
@@ -328,8 +339,17 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
EndToEndTestUtils.waitTextToDisappear(activityMyTracks EndToEndTestUtils.waitTextToDisappear(activityMyTracks
.getString(R.string.settings_map_track_color_mode_dynamic_value)); .getString(R.string.settings_map_track_color_mode_dynamic_value));
assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_dynamic_value), assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_dynamic_value),
PreferencesUtils.getString(context, R.string.track_color_mode_key, "error")); PreferencesUtils.getString(context, R.string.track_color_mode_key, errorString));
}
/**
* Tests the setting of single track color settings.
*/
public void testTrackColorSettings_single() {
Context context = activityMyTracks.getApplicationContext();
EndToEndTestUtils.findMenuItem(activityMyTracks.getString(R.string.menu_settings), true);
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks.getString(R.string.menu_map));
String errorString = "error";
EndToEndTestUtils.SOLO.clickOnText(activityMyTracks EndToEndTestUtils.SOLO.clickOnText(activityMyTracks
.getString(R.string.settings_map_track_color_mode)); .getString(R.string.settings_map_track_color_mode));
instrumentation.waitForIdleSync(); instrumentation.waitForIdleSync();
@@ -338,7 +358,7 @@ public class SettingTest extends ActivityInstrumentationTestCase2<TrackListActiv
EndToEndTestUtils.waitTextToDisappear(activityMyTracks EndToEndTestUtils.waitTextToDisappear(activityMyTracks
.getString(R.string.settings_map_track_color_mode_dynamic_value)); .getString(R.string.settings_map_track_color_mode_dynamic_value));
assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_single_value), assertEquals(activityMyTracks.getString(R.string.settings_map_track_color_mode_single_value),
PreferencesUtils.getString(context, R.string.track_color_mode_key, "error")); PreferencesUtils.getString(context, R.string.track_color_mode_key, errorString));
} }
@Override @Override
@@ -1,5 +1,5 @@
/* /*
* Copyright 2011 Google Inc. * Copyright 2012 Google Inc.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); you may not * Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of * use this file except in compliance with the License. You may obtain a copy of
@@ -25,17 +25,18 @@ import android.test.AndroidTestCase;
*/ */
public class MultiColorTrackPathTest extends AndroidTestCase { public class MultiColorTrackPathTest extends AndroidTestCase {
MultiColorTrackPath multiColorTrackPath; private MultiColorTrackPath multiColorTrackPath;
Context context; private Context context;
@Override @Override
protected void setUp() throws Exception { protected void setUp() throws Exception {
context = getContext();
super.setUp(); super.setUp();
context = getContext();
} }
/** /**
* Tests the {@link MultiColorTrackPath#getColor(int)} when use dynamic speed track path descriptor. * Tests the {@link MultiColorTrackPath#getColor(int)} when use dynamic speed
* track path descriptor.
*/ */
public void testGetColor_DynamicSpeedTrackPathDescriptor() { public void testGetColor_DynamicSpeedTrackPathDescriptor() {
DynamicSpeedTrackPathDescriptor dynamicSpeedTrackPathDescriptor = new DynamicSpeedTrackPathDescriptor( DynamicSpeedTrackPathDescriptor dynamicSpeedTrackPathDescriptor = new DynamicSpeedTrackPathDescriptor(
@@ -43,7 +44,9 @@ public class MultiColorTrackPathTest extends AndroidTestCase {
dynamicSpeedTrackPathDescriptor.setAverageMovingSpeed(50); dynamicSpeedTrackPathDescriptor.setAverageMovingSpeed(50);
dynamicSpeedTrackPathDescriptor.setSpeedMargin(10); dynamicSpeedTrackPathDescriptor.setSpeedMargin(10);
multiColorTrackPath = new MultiColorTrackPath(context, dynamicSpeedTrackPathDescriptor); multiColorTrackPath = new MultiColorTrackPath(context, dynamicSpeedTrackPathDescriptor);
// Slow speed should be below 45 (10% of 50), and fast speed should be above
// 55 (10% of 50).
assertEquals(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getColor(5)); assertEquals(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getColor(5));
assertEquals(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getColor(44)); assertEquals(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getColor(44));
assertEquals(multiColorTrackPath.getNormalColor(), multiColorTrackPath.getColor(50)); assertEquals(multiColorTrackPath.getNormalColor(), multiColorTrackPath.getColor(50));
@@ -54,5 +57,4 @@ public class MultiColorTrackPathTest extends AndroidTestCase {
assertNotSame(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getNormalColor()); assertNotSame(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getNormalColor());
assertNotSame(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getFastColor()); assertNotSame(multiColorTrackPath.getSlowColor(), multiColorTrackPath.getFastColor());
} }
} }