Bug 948087 - Add the LOGTAG to the log message produced by UITestContext.dumpLog() and update calls to this method to use the updated method declaration. r=mcomella
--- a/mobile/android/base/tests/UITest.java
+++ b/mobile/android/base/tests/UITest.java
@@ -140,23 +140,23 @@ abstract class UITest extends ActivityIn
}
@Override
public Actions getActions() {
return mActions;
}
@Override
- public void dumpLog(final String message) {
- mAsserter.dumpLog(message);
+ public void dumpLog(final String logtag, final String message) {
+ mAsserter.dumpLog(logtag + ": " + message);
}
@Override
- public void dumpLog(final String message, final Throwable t) {
- mAsserter.dumpLog(message, t);
+ public void dumpLog(final String logtag, final String message, final Throwable t) {
+ mAsserter.dumpLog(logtag + ": " + message, t);
}
@Override
public BaseComponent getComponent(final ComponentType type) {
switch (type) {
case ABOUTHOME:
return mAboutHome;
--- a/mobile/android/base/tests/UITestContext.java
+++ b/mobile/android/base/tests/UITestContext.java
@@ -26,18 +26,18 @@ public interface UITestContext {
public Activity getActivity();
public Solo getSolo();
public Assert getAsserter();
public Driver getDriver();
public Actions getActions();
public Instrumentation getInstrumentation();
- public void dumpLog(final String message);
- public void dumpLog(final String message, final Throwable t);
+ public void dumpLog(final String logtag, final String message);
+ public void dumpLog(final String logtag, final String message, final Throwable t);
/**
* Returns the absolute version of the given URL using the host's hostname.
*/
public String getAbsoluteHostnameUrl(final String url);
/**
* Returns the absolute version of the given URL using the host's IP address.
--- a/mobile/android/base/tests/components/AboutHomeComponent.java
+++ b/mobile/android/base/tests/components/AboutHomeComponent.java
@@ -17,16 +17,18 @@ import com.jayway.android.robotium.solo.
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.View;
/**
* A class representing any interactions that take place on the Awesomescreen.
*/
public class AboutHomeComponent extends BaseComponent {
+ private static final String LOGTAG = AboutHomeComponent.class.getSimpleName();
+
// The different types of pages that can be present on about:home
public enum PageType {
HISTORY,
TOP_SITES,
BOOKMARKS,
READING_LIST
}
@@ -77,23 +79,23 @@ public class AboutHomeComponent extends
public AboutHomeComponent assertVisible() {
assertEquals("The HomePager is visible",
View.VISIBLE, getHomePagerView().getVisibility());
return this;
}
public AboutHomeComponent swipeToPageOnRight() {
- mTestContext.dumpLog("Swiping to the page on the right.");
+ mTestContext.dumpLog(LOGTAG, "Swiping to the page on the right.");
swipeToPage(Solo.RIGHT);
return this;
}
public AboutHomeComponent swipeToPageOnLeft() {
- mTestContext.dumpLog("Swiping to the page on the left.");
+ mTestContext.dumpLog(LOGTAG, "Swiping to the page on the left.");
swipeToPage(Solo.LEFT);
return this;
}
private void swipeToPage(final int pageDirection) {
assertTrue("Swiping in a vaild direction",
pageDirection == Solo.LEFT || pageDirection == Solo.RIGHT);
assertVisible();
--- a/mobile/android/base/tests/helpers/WaitHelper.java
+++ b/mobile/android/base/tests/helpers/WaitHelper.java
@@ -100,17 +100,17 @@ public final class WaitHelper {
// on and let the assertions fail if applicable.
final boolean hasTimedOut = !sSolo.waitForCondition(new Condition() {
@Override
public boolean isSatisfied() {
return verifier.hasStateChanged();
}
}, CHANGE_WAIT_MS);
- sContext.dumpLog(verifier.getLogTag() +
+ sContext.dumpLog(verifier.getLogTag(),
(hasTimedOut ? "timed out." : "was satisfied."));
}
}
/**
* Implementations of this interface verify that the state of the test has changed from
* the invocation of storeState to the invocation of hasStateChanged. A boolean will be
* returned from hasStateChanged, indicating this change of status.
@@ -124,33 +124,32 @@ public final class WaitHelper {
* (with a timeout), this method could potentially store state inconsistent with
* what is visible to the user.
*/
public void storeState();
public boolean hasStateChanged();
}
private static class ToolbarTitleTextChangeVerifier implements ChangeVerifier {
- private static final String LOGTAG =
- ToolbarTitleTextChangeVerifier.class.getSimpleName() + ": ";
+ private static final String LOGTAG = ToolbarTitleTextChangeVerifier.class.getSimpleName();
// A regex that matches the page title that shows up while the page is loading.
private static final Pattern LOADING_PREFIX = Pattern.compile("[A-Za-z]{3,9}://");
private CharSequence mOldTitleText;
@Override
public String getLogTag() {
return LOGTAG;
}
@Override
public void storeState() {
mOldTitleText = sToolbar.getPotentiallyInconsistentTitle();
- sContext.dumpLog(LOGTAG + "stored title, \"" + mOldTitleText + "\".");
+ sContext.dumpLog(LOGTAG, "stored title, \"" + mOldTitleText + "\".");
}
@Override
public boolean hasStateChanged() {
// TODO: Additionally, consider Solo.waitForText.
// TODO: Robocop sleeps .5 sec between calls. Cache title view?
final CharSequence title = sToolbar.getPotentiallyInconsistentTitle();
@@ -158,14 +157,14 @@ public final class WaitHelper {
// HACK: We want to wait until the title changes to the state a tester may assert
// (e.g. the page title). However, the title is set to the URL before the title is
// loaded from the server and set as the final page title; we ignore the
// intermediate URL loading state here.
final boolean isLoading = LOADING_PREFIX.matcher(title).lookingAt();
final boolean hasStateChanged = !isLoading && !mOldTitleText.equals(title);
if (hasStateChanged) {
- sContext.dumpLog(LOGTAG + "state changed to title, \"" + title + "\".");
+ sContext.dumpLog(LOGTAG, "state changed to title, \"" + title + "\".");
}
return hasStateChanged;
}
}
}