aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKevin Jin <kjin@google.com>2013-11-22 13:10:20 -0800
committerKevin Jin <kjin@google.com>2013-11-22 13:10:20 -0800
commit5cf5f03c64b65b1f1ecd2140b8d6605ac05b6199 (patch)
treea03d34edbe68c0b1eb50170c6ecde02de0846475 /src
parent026e2d0318ee13637adbc71365592705c149c157 (diff)
downloaddroiddriver-5cf5f03c64b65b1f1ecd2140b8d6605ac05b6199.tar.gz
add driver as a parameter to the ScrollStepStrategy hooks in order to allow
more customization Change-Id: If50126e82bdeb18511379e6e588c14fa66e28562
Diffstat (limited to 'src')
-rw-r--r--src/com/google/android/droiddriver/instrumentation/ViewElement.java3
-rw-r--r--src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java6
-rw-r--r--src/com/google/android/droiddriver/scroll/BaseSentinelStrategy.java6
-rw-r--r--src/com/google/android/droiddriver/scroll/DynamicSentinelStrategy.java6
-rw-r--r--src/com/google/android/droiddriver/scroll/ScrollStepStrategy.java8
-rw-r--r--src/com/google/android/droiddriver/scroll/StepBasedScroller.java8
6 files changed, 25 insertions, 12 deletions
diff --git a/src/com/google/android/droiddriver/instrumentation/ViewElement.java b/src/com/google/android/droiddriver/instrumentation/ViewElement.java
index 3a16677..1823194 100644
--- a/src/com/google/android/droiddriver/instrumentation/ViewElement.java
+++ b/src/com/google/android/droiddriver/instrumentation/ViewElement.java
@@ -190,6 +190,9 @@ public class ViewElement extends BaseUiElement {
* {@link com.google.android.droiddriver.DroidDriver#dumpUiElementTree}, then
* call this method in setUp to override it with the class name seen in
* uiautomatorviewer.
+ * </p>
+ * A better solution is to use resource-id instead of classname, which is an
+ * implementation detail and subject to change.
*/
public static void overrideClassName(String actualClassName, String overridingClassName) {
CLASS_NAME_OVERRIDES.put(actualClassName, overridingClassName);
diff --git a/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java b/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java
index 98860e5..e4d8ade 100644
--- a/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java
+++ b/src/com/google/android/droiddriver/scroll/AccessibilityEventScrollStepStrategy.java
@@ -144,10 +144,12 @@ public class AccessibilityEventScrollStepStrategy implements ScrollStepStrategy
}
@Override
- public void beginScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction) {
+ public void beginScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction) {
atEndData.reset();
}
@Override
- public void endScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction) {}
+ public void endScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction) {}
}
diff --git a/src/com/google/android/droiddriver/scroll/BaseSentinelStrategy.java b/src/com/google/android/droiddriver/scroll/BaseSentinelStrategy.java
index 35a1636..4db5d96 100644
--- a/src/com/google/android/droiddriver/scroll/BaseSentinelStrategy.java
+++ b/src/com/google/android/droiddriver/scroll/BaseSentinelStrategy.java
@@ -90,10 +90,12 @@ public abstract class BaseSentinelStrategy implements SentinelStrategy {
}
@Override
- public void beginScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction) {}
+ public void beginScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction) {}
@Override
- public void endScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction) {}
+ public void endScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction) {}
@Override
public String toString() {
diff --git a/src/com/google/android/droiddriver/scroll/DynamicSentinelStrategy.java b/src/com/google/android/droiddriver/scroll/DynamicSentinelStrategy.java
index 7019168..03f302c 100644
--- a/src/com/google/android/droiddriver/scroll/DynamicSentinelStrategy.java
+++ b/src/com/google/android/droiddriver/scroll/DynamicSentinelStrategy.java
@@ -221,12 +221,14 @@ public class DynamicSentinelStrategy extends BaseSentinelStrategy {
}
@Override
- public void beginScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction) {
+ public void beginScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction) {
lastSentinel = null;
}
@Override
- public void endScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction) {
+ public void endScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction) {
// Prevent memory leak
lastSentinel = null;
}
diff --git a/src/com/google/android/droiddriver/scroll/ScrollStepStrategy.java b/src/com/google/android/droiddriver/scroll/ScrollStepStrategy.java
index 96d298f..d3474e5 100644
--- a/src/com/google/android/droiddriver/scroll/ScrollStepStrategy.java
+++ b/src/com/google/android/droiddriver/scroll/ScrollStepStrategy.java
@@ -45,25 +45,29 @@ public interface ScrollStepStrategy {
* Called only if this step is at the beginning of a series of scroll steps
* with regard to the given arguments.
*
+ * @param driver
* @param containerFinder Finder for the container that can scroll, for
* instance a ListView
* @param itemFinder Finder for the desired item; relative to
* {@code containerFinder}
* @param direction
*/
- void beginScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction);
+ void beginScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction);
/**
* Called only if this step is at the end of a series of scroll steps with
* regard to the given arguments.
*
+ * @param driver
* @param containerFinder Finder for the container that can scroll, for
* instance a ListView
* @param itemFinder Finder for the desired item; relative to
* {@code containerFinder}
* @param direction
*/
- void endScrolling(Finder containerFinder, Finder itemFinder, PhysicalDirection direction);
+ void endScrolling(DroidDriver driver, Finder containerFinder, Finder itemFinder,
+ PhysicalDirection direction);
/**
* {@inheritDoc}
diff --git a/src/com/google/android/droiddriver/scroll/StepBasedScroller.java b/src/com/google/android/droiddriver/scroll/StepBasedScroller.java
index d2852af..38fb864 100644
--- a/src/com/google/android/droiddriver/scroll/StepBasedScroller.java
+++ b/src/com/google/android/droiddriver/scroll/StepBasedScroller.java
@@ -125,10 +125,10 @@ public class StepBasedScroller implements Scroller {
public UiElement scrollTo(DroidDriver driver, Finder containerFinder, Finder itemFinder,
PhysicalDirection direction) {
try {
- scrollStepStrategy.beginScrolling(containerFinder, itemFinder, direction);
+ scrollStepStrategy.beginScrolling(driver, containerFinder, itemFinder, direction);
return scrollTo(driver, containerFinder, itemFinder, direction, false);
} finally {
- scrollStepStrategy.endScrolling(containerFinder, itemFinder, direction);
+ scrollStepStrategy.endScrolling(driver, containerFinder, itemFinder, direction);
}
}
@@ -156,14 +156,14 @@ public class StepBasedScroller implements Scroller {
// Fling to beginning is not reliable; scroll to beginning
// container.perform(SwipeAction.toFling(backwardDirection));
try {
- scrollStepStrategy.beginScrolling(containerFinder, itemFinder, backwardDirection);
+ scrollStepStrategy.beginScrolling(driver, containerFinder, itemFinder, backwardDirection);
for (int i = 0; i < maxScrolls; i++) {
if (!scrollStepStrategy.scroll(driver, containerFinder, backwardDirection)) {
break;
}
}
} finally {
- scrollStepStrategy.endScrolling(containerFinder, itemFinder, backwardDirection);
+ scrollStepStrategy.endScrolling(driver, containerFinder, itemFinder, backwardDirection);
}
}
} else {