diff options
author | Kevin Jin <kjin@google.com> | 2014-06-25 18:08:57 -0700 |
---|---|---|
committer | Kevin Jin <kjin@google.com> | 2014-06-25 18:08:57 -0700 |
commit | 27b635e33f18c439d6e511d71c762ae1352b1bc8 (patch) | |
tree | 9936f8aa71be7f66163ed7cc1e6f910f3dbec58a /src | |
parent | 988386cd9cc46bf5399846a414c09e0af48b1e5a (diff) | |
download | droiddriver-27b635e33f18c439d6e511d71c762ae1352b1bc8.tar.gz |
Clean up some toString methods
fix DefaultAccessibilityValidator
remove dead/wrong code in StepBasedScroller
Change-Id: I2b847fda53e759f4eada975791fd45b7b22847a8
Diffstat (limited to 'src')
6 files changed, 23 insertions, 44 deletions
diff --git a/src/com/google/android/droiddriver/base/BaseUiDevice.java b/src/com/google/android/droiddriver/base/BaseUiDevice.java index 2ca501d..e9c6426 100644 --- a/src/com/google/android/droiddriver/base/BaseUiDevice.java +++ b/src/com/google/android/droiddriver/base/BaseUiDevice.java @@ -54,10 +54,7 @@ public abstract class BaseUiDevice implements UiDevice { @Override public void wakeUp() { if (!isScreenOn()) { - // Cannot call perform(POWER_ON) because perform() checks the UiElement is - // visible. - POWER_ON.perform(getContext().getDriver().getInjector(), null); - getContext().tryWaitForIdleSync(POWER_ON.getTimeoutMillis()); + perform(POWER_ON); } } diff --git a/src/com/google/android/droiddriver/base/BaseUiElement.java b/src/com/google/android/droiddriver/base/BaseUiElement.java index 340f649..3d74bdc 100644 --- a/src/com/google/android/droiddriver/base/BaseUiElement.java +++ b/src/com/google/android/droiddriver/base/BaseUiElement.java @@ -163,9 +163,11 @@ public abstract class BaseUiElement<R, E extends BaseUiElement<R, E>> implements @Override public boolean perform(Action action) { Logs.call(this, "perform", action); - for (Validator validator : validators) { - if (!validator.isValid(this)) { - throw new DroidDriverException(validator + " failed"); + if (getParent() != null) {// don't check root + for (Validator validator : validators) { + if (!validator.isValid(this)) { + throw new DroidDriverException(validator + " failed"); + } } } return performAndWait(action); diff --git a/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java b/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java index fee4e2b..186bff8 100644 --- a/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java +++ b/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java @@ -158,12 +158,6 @@ public class AccessibilityEventScrollStepStrategy implements ScrollStepStrategy } @Override - public String toString() { - return String.format("%s{scrollEventTimeoutMillis=%d}", getClass().getSimpleName(), - scrollEventTimeoutMillis); - } - - @Override public void beginScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder, PhysicalDirection direction) { endData.reset(); diff --git a/src/com/google/android/droiddriver/scroll/ForwardingScrollStepStrategy.java b/src/com/google/android/droiddriver/scroll/ForwardingScrollStepStrategy.java index f4cfd17..bf3bc24 100644 --- a/src/com/google/android/droiddriver/scroll/ForwardingScrollStepStrategy.java +++ b/src/com/google/android/droiddriver/scroll/ForwardingScrollStepStrategy.java @@ -61,9 +61,4 @@ public abstract class ForwardingScrollStepStrategy implements ScrollStepStrategy public void doScroll(UiElement container, PhysicalDirection direction) { delegate().doScroll(container, direction); } - - @Override - public String toString() { - return delegate().toString(); - } } diff --git a/src/com/google/android/droiddriver/scroll/StepBasedScroller.java b/src/com/google/android/droiddriver/scroll/StepBasedScroller.java index 38fb864..d962ed3 100644 --- a/src/com/google/android/droiddriver/scroll/StepBasedScroller.java +++ b/src/com/google/android/droiddriver/scroll/StepBasedScroller.java @@ -18,12 +18,10 @@ package com.google.android.droiddriver.scroll; import static com.google.android.droiddriver.scroll.Direction.LogicalDirection.BACKWARD; import android.util.Log; -import android.view.KeyEvent; import com.google.android.droiddriver.DroidDriver; import com.google.android.droiddriver.Poller; import com.google.android.droiddriver.UiElement; -import com.google.android.droiddriver.actions.SingleKeyAction; import com.google.android.droiddriver.exceptions.ElementNotFoundException; import com.google.android.droiddriver.exceptions.TimeoutException; import com.google.android.droiddriver.finders.By; @@ -41,10 +39,6 @@ import com.google.android.droiddriver.util.Logs; * possible. */ public class StepBasedScroller implements Scroller { - - private static final SingleKeyAction MOVE_HOME = new SingleKeyAction(KeyEvent.KEYCODE_MOVE_HOME, - 1000L, false); - private final int maxScrolls; private final long perScrollTimeoutMillis; private final Axis axis; @@ -106,7 +100,7 @@ public class StepBasedScroller implements Scroller { ElementNotFoundException exception = new ElementNotFoundException(itemFinder); if (i == maxScrolls) { // This is often a program error -- maxScrolls is a safety net; we should - // have either found itemFinder, or stopped to scroll b/c of reaching the + // have either found itemFinder, or stopped scrolling b/c of reaching the // end. If maxScrolls is reasonably large, ScrollStepStrategy must be // wrong. Logs.logfmt(Log.WARN, exception, "Scrolled %s %d times; ScrollStepStrategy=%s", @@ -147,24 +141,17 @@ public class StepBasedScroller implements Scroller { // fall through to scroll to find } - UiElement container = driver.on(containerFinder); - if (container.isFocused()) { - // Use KeyEvent to go to beginning - container.perform(MOVE_HOME); - Logs.log(Log.DEBUG, "MOVE_HOME used"); - } else { - // Fling to beginning is not reliable; scroll to beginning - // container.perform(SwipeAction.toFling(backwardDirection)); - try { - scrollStepStrategy.beginScrolling(driver, containerFinder, itemFinder, backwardDirection); - for (int i = 0; i < maxScrolls; i++) { - if (!scrollStepStrategy.scroll(driver, containerFinder, backwardDirection)) { - break; - } + // Fling to beginning is not reliable; scroll to beginning + // container.perform(SwipeAction.toFling(backwardDirection)); + try { + scrollStepStrategy.beginScrolling(driver, containerFinder, itemFinder, backwardDirection); + for (int i = 0; i < maxScrolls; i++) { + if (!scrollStepStrategy.scroll(driver, containerFinder, backwardDirection)) { + break; } - } finally { - scrollStepStrategy.endScrolling(driver, containerFinder, itemFinder, backwardDirection); } + } finally { + scrollStepStrategy.endScrolling(driver, containerFinder, itemFinder, backwardDirection); } } else { // search backward first diff --git a/src/com/google/android/droiddriver/validators/DefaultAccessibilityValidator.java b/src/com/google/android/droiddriver/validators/DefaultAccessibilityValidator.java index ff1d095..e3c0778 100644 --- a/src/com/google/android/droiddriver/validators/DefaultAccessibilityValidator.java +++ b/src/com/google/android/droiddriver/validators/DefaultAccessibilityValidator.java @@ -27,8 +27,12 @@ import com.google.android.droiddriver.UiElement; public class DefaultAccessibilityValidator implements Validator { @Override public boolean isValid(UiElement element) { - return element.getParent() != null // don't check root - && TextUtils.isEmpty(element.getContentDescription()) - && TextUtils.isEmpty(element.getText()); + return !TextUtils.isEmpty(element.getContentDescription()) + || !TextUtils.isEmpty(element.getText()); + } + + @Override + public String toString() { + return "Check non-empty c ontent description or text"; } } |