• Home
  • History
  • Annotate
  • only in /frameworks/testing/uiautomator/library/core-src/com/android/
History log of /frameworks/testing/uiautomator/library/core-src/com/android/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2b6d1da16a4e38a9704c2c67b33aadf44a85b1d2 13-Oct-2014 Guang Zhu <guangzhu@google.com> fix UI Automator dump tool issues

AOSP bug 58733: NPE while dumping hierarchy
AOSP bug 62906: smileys (surrogates) causing dump tool to crash

Change-Id: Ia57686163dca3b27ee291f3114f15af98e50d914
iautomator/core/AccessibilityNodeInfoDumper.java
abc9b55fa34639dd39c58a03c6c21d265ec84a23 20-Nov-2013 Allen Hair <allenhair@google.com> Removed url from javadoc.

I believe this was added by mistake.

Change-Id: I3b7bb6fc4ec3fbf2ecbb6c67055af8beb0e86fe3
iautomator/core/UiSelector.java
9ebf91aa923d2424298cb908a79dd03aefbf0a8f 18-Jun-2013 Guang Zhu <guangzhu@google.com> fix build

Change-Id: I00868d5550c665340656fe1a4f20eaa3740ea50b
iautomator/core/Configurator.java
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
iautomator/core/UiScrollable.java
iautomator/core/UiSelector.java
27862e051fbf24ce200de0cc2fca7f7c3c62dec6 18-Jun-2013 quddusc <quddusc@google.com> Merge "docs: Edited Javadoc comments in uiautomator library source files (MR2)." into jb-mr2-dev
445e82ee022c484166ce7175973827f591ff2ea7 13-Jun-2013 quddusc <quddusc@google.com> docs: Edited Javadoc comments in uiautomator library source files (MR2).

Change-Id: I3eff0160ecb4769f2a7b26af68794f761dbd5cbc
iautomator/core/Configurator.java
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
iautomator/core/UiScrollable.java
iautomator/core/UiSelector.java
46fcf070655a908e4ffaf93fe0d2b7be21bb004b 13-Jun-2013 Guang Zhu <guangzhu@google.com> guard against use of UiDevice prior to its initialization

The source of UI automation permission use to come from the fact
that the test is running as shell or root user; in this case,
it's fine to statically initialize UiDevice.

When running as an Instrumentation, the source of UI automation
permission comes from the privileged token created by system and
passed down via Instrumentation context; in this case, UiDevice
is not properly initialized until it has received the
UiAutomation instance. The particular problem happens when
statically declared UiObject makes use of
UiDevice#getAutomatorBridge() too early: UiObject really
shouldn't be declared statically

Change-Id: If0ecab9960c588c096ed2fb8cc431ef79caa963e
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
b77a610002ff7a6f32a00b544e43289614487954 13-May-2013 Guang Zhu <guangzhu@google.com> Merge "Fix for UiDevice press button operations wait for idle" into jb-mr2-dev
5dfbc26b70c57c1708c24ed6043bbc550bfc83f1 10-May-2013 Adam Momtaz <amomtaz@google.com> Fix for UiDevice press button operations wait for idle

This cl#299334 attempted to address a missing wait for idle
on the UiDevice main pressXXX operation since issues related to
reliability were surfacing. These are pressHome, pressBack
and pressMenu. In error, I added the waitForIdle after and
not before the operation where it should've been in the first place.

Operations should never count on other operations to guarantee
waitForIdle for them. Each operation should ensure its own device
idle before performing any action. The existing implementation
unfortunately didn't improve the reliability and issues remained.

This fix should put these pressXXX commands inline with all the
UiAutomator APIs where everything performs a waitForIdle _before_
performing any action.

Change-Id: I76d7ec50fb822d41a0be4808a0d3e61bdde17935
iautomator/core/UiDevice.java
1078ab1070411af45d5e8ec3b56abec6789e7722 10-May-2013 Guang Zhu <guangzhu@google.com> API Cleanup: return types and consitent function names

New event injection APIs are now returning true of false
Functions are renamed to be more consistent

Bug: 8872114
Change-Id: I3a82305e7af094eb9c9fb2393b2f3e101e84dead
iautomator/core/InteractionController.java
iautomator/core/UiObject.java
4f72d8d757b71a767999703016ba4d6db7333457 10-May-2013 Adam Momtaz <amomtaz@google.com> Fix to precompile regex in UiSelector

Also added public UiSelector#resourceIdMatches

Change-Id: Ieb8a5d6fcdfdfa8c52c6ad3f2f202ec7ed4e69a5
iautomator/core/UiSelector.java
aa08fcfb3850439502f11934ea45cd910f83dcbe 19-Apr-2013 Adam Momtaz <amomtaz@google.com> Added support for global action APIs and fixed WaitForIdle

- Added openNotification and openQuickSettings to UiDevice.
- Adjusted for all UiDevice presses and special key injections
to perform waitForIdle after each operation.
- Also screen rotations did not perform waitForIdle and now
they do.

Change-Id: I15784c62278a4f712d08fd081634f48d5dbcabc8
iautomator/core/InteractionController.java
iautomator/core/UiDevice.java
6dcde4347f6af9095388e4bff62c19db63fbf523 18-Apr-2013 Adam Momtaz <amomtaz@google.com> Fixes for UiSelector ignoring instance criterion

Reported by an external user. Information is in associated
bug: 8657729

Change-Id: I5f6314d132dc167be3f06dca315947408d54d713
iautomator/core/UiSelector.java
de8b8de6708daa3c0759adf5dad7b18a1b86402b 17-Apr-2013 Guang Zhu <guangzhu@google.com> use SDK to build instrumentation based UI Automator

Change-Id: I0fa2d4a7cd3b0df8d752d1b76cb6762d52efcf08
iautomator/core/InteractionController.java
iautomator/core/UiAutomatorBridge.java
iautomator/core/UiDevice.java
71aebfa11443a9a04777cde3d9c7e29cdbb5d447 16-Apr-2013 Adam Momtaz <amomtaz@google.com> Fix for shell uiautomator to support monkey flag

Change-Id: I95f5e7567954940464c51289344ca53d7bd7d81f
iautomator/core/UiAutomatorBridge.java
48c83ae3e5fc36138a412fc5854d543fffe80376 10-Apr-2013 Adam Momtaz <amomtaz@google.com> Allow for declaring a test as a monkey type test

This enables users to write tests that act like monkey and
at the same time allowing apps to react as if an android
monkey test is running.

bug: 8588857
Change-Id: I43ca663c2aac43658f5bb39eabe2d904d1e9009a
iautomator/core/UiAutomatorBridge.java
805b170cb517a16adb6116bcf800f39ff711c27d 15-Mar-2013 Guang Zhu <guangzhu@google.com> function to ensure visibility of child item inside a scrollable

current implementation is experimental, with 2 restrictions:
* may scroll item off screen
* does not check if item fits or not (e.g. larger than screen)

Change-Id: I677d0f5c22b0e60a5cb9ca6893311daf13729d14
iautomator/core/UiScrollable.java
bb36257f15f090966e2aeb9fd4f092e1a54722b1 06-Mar-2013 Adam Momtaz <amomtaz@google.com> DO NOT MERGE - UiObject did not perform the wait waitForObject() in UiWatchers

The UiWatcher in test libraries use the UiObject#waitForObject
to wait for certain conditions to come true, however polling
for object state was unecessarly disallowed. Initially the
rational was to prevent the UiWatcher code from blocking too
long, but this doesn't prevent the UiWatcher from using
system sleep and blocking anyway.

Change-Id: Icd086e696f903ddc409ce8eabaa87c99648a90b5
iautomator/core/UiObject.java
4a82ca385244ade0d9a5654d7eb3b7797846a6db 13-Feb-2013 Adam Momtaz <amomtaz@google.com> DO NOT MERGE - Allow for toggling of layout hierarchy compression

When the compression feature is set, the accessibility
layout hierarchy will only show important nodes and will
remove unnecessary surrounding layouts making the hierarchy
more human readable and efficient to search.

The compressed hierarchy will be the default. Previous tests
which depended on the more verbose hierarchy, will either
need to update their selectors, or disable this feature
from the UiDevice.

However, the uiautomatorviewer will always show the hierarchy
in its compressed form to encourage the user of the more
compact and efficient selectors.

Change-Id: I1d5d909ce7d4f60108dc491348fcf8da8549806c
iautomator/core/UiAutomatorBridge.java
iautomator/core/UiDevice.java
6b8d14ca5b3c2cbc066133da2e66658fb81f206e 21-Feb-2013 Adam Momtaz <amomtaz@google.com> UiSelector support for resource-id wasn't quite right

Change-Id: If97edcbdfc9593977860c9ee1b086adfdf0a49c3
iautomator/core/UiSelector.java
0d3e425526a214d355e87b0c90f1b85c8aefe35a 07-Feb-2013 Adam Momtaz <amomtaz@google.com> Add configuration setting options to UiAutomator

This enables tests to modify the default timeouts and other
settings in the framework. This exposes a Configurator
that can be obtained by calling its static getInstance().

The settings can be changed while tests are running.

Change-Id: I86575b00463fb2877711898fa8fa1c54bfa0e7b9
iautomator/core/Configurator.java
iautomator/core/InteractionController.java
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
df721e515f18e753ad817e65d60bfe1dcfb01ab7 13-Feb-2013 Svetoslav <svetoslavganov@google.com> Updating the UiAutomator due to framework API change.

Related to change:https://googleplex-android-review.googlesource.com/#/c/273118/

bug:8183223

Change-Id: I04b143daa8588059a56f9904ad69875de687429d
iautomator/core/InteractionController.java
iautomator/core/UiAutomatorBridge.java
iautomator/core/UiDevice.java
2c51659d5816d33b4ec07fb064d8c4f00bcbe404 11-Feb-2013 Adam Momtaz <amomtaz@google.com> Merge "Adds UiAutomator 'drag' APIs to UiObject and UiDevice"
8d7e1dc0248bf9d3c7b133eaac79b7fb31321564 06-Feb-2013 Adam Momtaz <amomtaz@google.com> Adds UiAutomator 'drag' APIs to UiObject and UiDevice

bug:7409880
Change-Id: I73e61d39f1c689ac8e376b9135ae8447c70cec56
iautomator/core/InteractionController.java
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
b4671570eb1caa88c7b6042f81f1ca3a2cb6a916 06-Feb-2013 Guang Zhu <guangzhu@google.com> Merge "instrumentation based UI Automator static library"
23296fc6448cd265fbb45c1fd9041976ae0da274 01-Feb-2013 Guang Zhu <guangzhu@google.com> instrumentation based UI Automator static library

* further refactoring to split dependencies on public APIs
* instrumentation base UI Automator test case base class still
called UiAutomatorTestCase, for ease of transition
* not all test runner features are ported over yet

Bug: 8112323

Change-Id: Ibb4fc2c2164b59fb00b0b46c77118db788b10537
iautomator/core/AccessibilityNodeInfoDumper.java
iautomator/core/AccessibilityNodeInfoHelper.java
iautomator/core/InteractionController.java
iautomator/core/UiAutomatorBridge.java
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
2ed4ac8f7b154e7da6e9920df7b42a88916e3060 06-Feb-2013 Adam Momtaz <amomtaz@google.com> Merge "Handle multiple AccessibilityEvent parsing for scrolling"
56a7ae5d4fb91af7a8f4fb4ebbb778073be6feb3 05-Feb-2013 Svetoslav <svetoslavganov@google.com> Update for renamed APIs

Change-Id: I4703830d6554f16abfd03c2e162a317f278cc005
iautomator/core/AccessibilityNodeInfoDumper.java
iautomator/core/UiSelector.java
1dc7d12406947faaee8454c6efb2a0631f5da573 01-Feb-2013 Adam Momtaz <amomtaz@google.com> Handle multiple AccessibilityEvent parsing for scrolling

Refactored to handle Accessibility events into their corresponding
Predicate types.

Fixed scrollSwipe to allow it to receive all relevant accessibility
events so to determine current scroll position. This required the
reading the last scroll event from a list of events.

bug:8099066

Change-Id: If1770b5fc7b56da03dd16ec3f8e5fe4686f7580b
iautomator/core/InteractionController.java
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
97835f3a7c80b147136c44c175eb9e6a4261fd92 01-Feb-2013 Adam Momtaz <amomtaz@google.com> New UiAutomator API Level 18

UiSelector.checkable
bug:7622129

UiObject.getClassName
bug:7622402

UiDevice.getDisplayRotation and isNaturalOrientation now wait
for idle before executing.
bug:7622137

Change-Id: Iddcbc3116241e3b7f1b68c4a5dda3346ad5d5871
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
iautomator/core/UiSelector.java
946d553eb162ee5ac4eeef2c91c40f36f3db791d 01-Feb-2013 Adam Momtaz <amomtaz@google.com> Added resource id attribute to the uiautomatorviewer

Modified the UiSelector as well to support the naming
convention used for the id.

bug:8099047
Change-Id: I4f467d323492ff51e332ed69cc6a3b655c5700c8
iautomator/core/AccessibilityNodeInfoDumper.java
iautomator/core/UiSelector.java
c344be11dbfd56e95d076f46b870108fdaa662f0 31-Jan-2013 Adam Momtaz <amomtaz@google.com> Support for multipointer gestures

Change-Id: I5e43e78c68bb24e8600864c318c737d3d1fca646
iautomator/core/InteractionController.java
iautomator/core/UiObject.java
cd08ab4b0d19e68cc1cf18396cb9076e828c1a63 31-Jan-2013 Guang Zhu <guangzhu@google.com> futher split of UI automator code base and refactoring

* library/core-src should use only public framework APIs and be
agnostic about shell based or instrumentation based test
runner plumbings
* Functions inside InteractionController that uses private APIs
are now delegated through UiAutomatorBridge
* ShellUiAutomatorBridge and OnDeviceUiAutomatorBridge are
refactored accordingly to call WindowManager and PowerManager,
and moved into shell specific and instrumentation specific
locations accordingly

Bug: 8112323

Change-Id: I79d8a0014e785af6d8d702473b1e568eeac6e652
iautomator/core/InteractionController.java
iautomator/core/OnDeviceUiAutomatorBridge.java
iautomator/core/ShellUiAutomatorBridge.java
iautomator/core/UiAutomationShellWrapper.java
iautomator/core/UiAutomatorBridge.java
iautomator/core/UiDevice.java
dab052728a27d1c4f1991762038b51e85281f5ea 31-Jan-2013 Guang Zhu <guangzhu@google.com> split the code of test runner and core into separate sub folders

This will serve as the basis for further changes to use the core
framework on top of alternative test runner.

Change-Id: I389cbc8e79a004144c95bc99f7d2a58521541781
iautomator/core/AccessibilityNodeInfoDumper.java
iautomator/core/AccessibilityNodeInfoHelper.java
iautomator/core/InteractionController.java
iautomator/core/OnDeviceUiAutomatorBridge.java
iautomator/core/QueryController.java
iautomator/core/ShellUiAutomatorBridge.java
iautomator/core/Tracer.java
iautomator/core/UiAutomationShellWrapper.java
iautomator/core/UiAutomatorBridge.java
iautomator/core/UiCollection.java
iautomator/core/UiDevice.java
iautomator/core/UiObject.java
iautomator/core/UiObjectNotFoundException.java
iautomator/core/UiScrollable.java
iautomator/core/UiSelector.java
iautomator/core/UiWatcher.java