summaryrefslogtreecommitdiffstats
path: root/tools/android
Commit message (Collapse)AuthorAgeFilesLines
* clovis: Estimate cost of a load, until a given point.lizeb2016-03-258-5/+514
| | | | | | Review URL: https://codereview.chromium.org/1827813005 Cr-Commit-Position: refs/heads/master@{#383318}
* tools/android/loading Run analyze.py on GCEdroger2016-03-254-29/+70
| | | | | | Review URL: https://codereview.chromium.org/1831073002 Cr-Commit-Position: refs/heads/master@{#383276}
* Clovis: update documentation links. goo.gl short links can't be changed :(mattcary2016-03-241-2/+2
| | | | | | Review URL: https://codereview.chromium.org/1827033002 Cr-Commit-Position: refs/heads/master@{#383056}
* Replace usages of DEPRECATED_java_in_dir with java_filesagrieve2016-03-232-2/+5
| | | | | | | | BUG=484854 Review URL: https://codereview.chromium.org/1829823002 Cr-Commit-Position: refs/heads/master@{#382905}
* tools/android/loading: Remove old chrome APIgabadie2016-03-234-340/+7
| | | | | | | | | | | | Currently, all the code has been migrated to the ChromeController API. This CL remove the no longer used legacy API, becoming dead code. BUG=582080 Review URL: https://codereview.chromium.org/1825403002 Cr-Commit-Position: refs/heads/master@{#382880}
* Clovis: remove occurrence counting in ResourceSack.mattcary2016-03-232-81/+0
| | | | | | | | Now that we've settled on CoreSet this is unused. Review URL: https://codereview.chromium.org/1830523004 Cr-Commit-Position: refs/heads/master@{#382865}
* sandwich: Slice up sandwich.py into sandwich_{runner,misc}.pygabadie2016-03-235-333/+369
| | | | | | | | BUG=582080 Review URL: https://codereview.chromium.org/1822163002 Cr-Commit-Position: refs/heads/master@{#382860}
* sandwich: Record a loading video on android and compute speed-index from it.gabadie2016-03-2310-68/+352
| | | | | | | | | | | | | Before, metrics in the CSV where fetched only from loading traces. This CL adds the hability to record a MP4 video of chrome loading a web page in sandwich, and then process that recorded video to output the loading speed-index into the metrics' CSV. BUG=582080 Review URL: https://codereview.chromium.org/1782543002 Cr-Commit-Position: refs/heads/master@{#382850}
* Clovis: stopgap for webserver test race.mattcary2016-03-231-1/+1
| | | | | | | | | | Return test server files in single chunk rather than as individual bytes. This affects what seems to be an internal race in chrome or chrome devtools that causes different reported initiators. Review URL: https://codereview.chromium.org/1824343002 Cr-Commit-Position: refs/heads/master@{#382846}
* Clovis: Update webtest to new controller to make it run.mattcary2016-03-234-13/+34
| | | | | | | | | | | | This incorporates the controller refactor, which incidentally fixes some bitrotted code as well as adds --test_filter to make debugging a specific test easier. Also updates a test which had missed comments shifting around. 1.html is still flaky, I'm looking into it. Review URL: https://codereview.chromium.org/1829633002 Cr-Commit-Position: refs/heads/master@{#382832}
* Clovis: Improve --local_binary option.mattcary2016-03-231-1/+1
| | | | | | | | Make --local_binary smart enough to be relative to code directory no matter where a script is being run from. Review URL: https://codereview.chromium.org/1825333002 Cr-Commit-Position: refs/heads/master@{#382823}
* tools/android/loading: Launch chrome on devices more reliably.gabadie2016-03-221-24/+40
| | | | | | | | | | | | Currently, we are giving only 2s for chrome to start its devtools HTTP server causing flakyness. This CL attempts to connect to chrome's devtools every one seconds instead. BUG=582080 Review URL: https://codereview.chromium.org/1825123002 Cr-Commit-Position: refs/heads/master@{#382628}
* tools/android/loading: Implements CacheBackend.GetDecodedContentForKey()gabadie2016-03-221-6/+65
| | | | | | | | | | | | | | HTTP cache is storing into key's index stream 1 the transport layer resource binary. However, the resources might be encoded using a compression algorithm specified in the Content-Encoding response header. This new method takes care of returning decoded binary content of the resource if necessary. BUG=582080 Review URL: https://codereview.chromium.org/1765033002 Cr-Commit-Position: refs/heads/master@{#382625}
* tools/android/loading Add script to deploy chromedroger2016-03-224-17/+131
| | | | | | | | | | | | This CL adds a deploy.sh script that packages the analyse.py and Chrome for deployment on GCE. It also updates the startup script and the pip requirements to add required dependencies. Review URL: https://codereview.chromium.org/1809133002 Cr-Commit-Position: refs/heads/master@{#382578}
* Clovis: rewrite user satisfaction lens.mattcary2016-03-224-44/+223
| | | | | | | | | | This rewrites the existing user satisfaction lens to output a list of request ids rather than the old graph filter approach. In addition, we create a hierarchy of lenses for all of the various first paint metrics. Review URL: https://codereview.chromium.org/1814973004 Cr-Commit-Position: refs/heads/master@{#382548}
* clovis: Identify prefetchable resources from dependencies and tracing.lizeb2016-03-228-70/+355
| | | | | | | | | | | Resources that are discoverable by the preload scanner are behind a "parser" dependency. However, this is a superset of the actual discoverable resources. Use tracing to find the actual resources, that are then matched to requests. Review URL: https://codereview.chromium.org/1813723002 Cr-Commit-Position: refs/heads/master@{#382542}
* sandwich: Make it work on desktop.gabadie2016-03-217-117/+455
| | | | | | | | BUG=582080 Review URL: https://codereview.chromium.org/1812053002 Cr-Commit-Position: refs/heads/master@{#382368}
* tools/android/loading: Lets test_server.py handling custom response headers.gabadie2016-03-212-37/+124
| | | | | | | | | | | | This CL let the test_server.py looking for a RESPONSE_HEADERS.json in the source directory to add response headers on resources. This will be used for non-regression tests of sandwich's WPR patching. BUG=582080 Review URL: https://codereview.chromium.org/1759093002 Cr-Commit-Position: refs/heads/master@{#382284}
* tools/android/loading Add support for headless mode in analyse.pydroger2016-03-212-4/+15
| | | | | | Review URL: https://codereview.chromium.org/1814863003 Cr-Commit-Position: refs/heads/master@{#382263}
* sandwich: Use the ChromeController API.gabadie2016-03-182-43/+55
| | | | | | | | BUG=582080 Review URL: https://codereview.chromium.org/1814023002 Cr-Commit-Position: refs/heads/master@{#381992}
* Clovis: add core sets.mattcary2016-03-183-5/+320
| | | | | | | | This adds the core set computation to resource_sack.py (computing the common resources over a set of runs) as well as a script for computing and comparing the core sets of traces. Review URL: https://codereview.chromium.org/1804053002 Cr-Commit-Position: refs/heads/master@{#381948}
* clovis: Add step to event matching to the tracing track.lizeb2016-03-162-31/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Steps are used in traces to annotate aync events. One such annotation is "Preload", tagging resource fetches. It looks like this in the JSON: { "cat": "blink.net", "id": "0xaf9f4a094d99b1a0", "name": "Resource", "ph": "S", "pid": 32197, "tid": 1, "ts": 2252598472497, "tts": 52249 }, { "args": { "step": "Preload" }, "cat": "blink.net", "id": "0xaf9f4a094d99b1a0", "name": "Resource", "ph": "T", "pid": 32197, "tid": 1, "ts": 2252598472528, "tts": 52280 }, Review URL: https://codereview.chromium.org/1802973002 Cr-Commit-Position: refs/heads/master@{#381449}
* clovis: Ignore trace context events in tracing.py.lizeb2016-03-161-0/+2
| | | | | | | | | | Per https://goo.gl/Qabkqk, the '(' and ')' phases relate to Context Events. We don't process them currently, so we need to ignore them to prevent tracing.py from failing when indexing a trace. Review URL: https://codereview.chromium.org/1804413002 Cr-Commit-Position: refs/heads/master@{#381446}
* tools/android/loading: Remove spaces from network emulation names to make ↵mattcary2016-03-161-5/+5
| | | | | | | | scriptability easier. Review URL: https://codereview.chromium.org/1802743003 Cr-Commit-Position: refs/heads/master@{#381439}
* Discourage use of android.app.AlertDialog and StringBuffer.newt2016-03-151-2/+16
| | | | | | | | | | | android.support.v7.app.AlertDialog and StringBuilder should be used instead. BUG=4562 Review URL: https://codereview.chromium.org/1804293002 Cr-Commit-Position: refs/heads/master@{#381350}
* tools/android/loading: Optimize chrome_cache.{Pull,Push}BrowserCache()gabadie2016-03-152-14/+43
| | | | | | | | | | | | | | Some websites have a lot of resources, slowing down sandwich's cache pulling and pushing. This CL optimizes these operations by pulling the cache directory recursively, but also by introducing the commands queue that are written to a temporary shell file and then pushed and ran on the device. BUG=582080 Review URL: https://codereview.chromium.org/1753343002 Cr-Commit-Position: refs/heads/master@{#381200}
* tools/android/loading Send a list of URLs with a POST requestdroger2016-03-143-17/+58
| | | | | | Review URL: https://codereview.chromium.org/1781403002 Cr-Commit-Position: refs/heads/master@{#380973}
* Update eclipse .classpath to include other android device/ directories.tedchoc2016-03-111-0/+3
| | | | | | | | | TBR=newt@chromium.org BUG= Review URL: https://codereview.chromium.org/1783943003 Cr-Commit-Position: refs/heads/master@{#380690}
* Add an Android sample app for Telemetry tests.mikecase2016-03-1110-0/+146
| | | | | | | | | | | | The purpose of this app is to be launched and push other apps to the background during Android telemetry tests. It is just a super simple Android app. BUG=586148 Review URL: https://codereview.chromium.org/1744423002 Cr-Commit-Position: refs/heads/master@{#380680}
* tools/android/loading Initial infrastructure for trace collection on GCEdroger2016-03-104-0/+279
| | | | | | | | | | This CL adds some configuration and a http server in prevision to running the trace collection on GCE. It is far from complete, and does not collect any traces yet. Review URL: https://codereview.chromium.org/1777523002 Cr-Commit-Position: refs/heads/master@{#380404}
* Clovis: improve method name and typo in analyze.py.mattcary2016-03-093-4/+4
| | | | | | Review URL: https://codereview.chromium.org/1775393002 Cr-Commit-Position: refs/heads/master@{#380139}
* Use new chrome controller for analyze.py.mattcary2016-03-095-38/+88
| | | | | | | | Also updates the controller to track cache clearing. Review URL: https://codereview.chromium.org/1778543002 Cr-Commit-Position: refs/heads/master@{#380131}
* Add hooks to devtools monitor connection to enable configuration from a ↵mattcary2016-03-091-0/+13
| | | | | | | | controller. Review URL: https://codereview.chromium.org/1779433002 Cr-Commit-Position: refs/heads/master@{#380115}
* Ignore missing timings for about protocol.mattcary2016-03-091-1/+1
| | | | | | Review URL: https://codereview.chromium.org/1774993002 Cr-Commit-Position: refs/heads/master@{#380111}
* Device controller refactor.mattcary2016-03-086-1/+462
| | | | | | | | | First step in refactoring connection setup and chrome launching in a way that's friendly to sandwich, clovis, pre* and any others. Review URL: https://codereview.chromium.org/1731973002 Cr-Commit-Position: refs/heads/master@{#379807}
* Update eclipse classpath to include updated enum pathstedchoc2016-03-081-5/+22
| | | | | | | | | | | | | | | | | | | | For the removed targets, I did a git grep and did not see any references. Command I used to generate the list: for enumpath in `ls -w1 out/Debug/gen/enums/`; do echo " <classpathentry kind=\"src\" path=\"out/Debug/gen/enums/$enumpath\"/>"; done I built the following targets: chrome_apk chrome_test_apk custom_tabs_client_example_apk cronet_sample_apk I suspect the two actual targets that are required are: chrome_apk cronet_sample_apk BUG= Review URL: https://codereview.chromium.org/1767303002 Cr-Commit-Position: refs/heads/master@{#379689}
* tools/android/loading: Network Activity lens, and CPU/network activity graphs.lizeb2016-03-077-27/+496
| | | | | | Review URL: https://codereview.chromium.org/1732413002 Cr-Commit-Position: refs/heads/master@{#379565}
* forwarder2: fix documentation typo in Socket::InitUnixSocket() functiontfarina2016-03-071-1/+1
| | | | | | | | | | | | | | This patch fixes, in a documentation comment, the filename to a file that does not exist anymore. The code that it is referring to is from UnixDomainClientSocket::FillAddress() function from net/socket/unix_domain_client_socket_posix.cc. BUG=None R=yfriedman@chromium.org Review URL: https://codereview.chromium.org/1766913002 Cr-Commit-Position: refs/heads/master@{#379564}
* Sandwich: Adds a work-around in the cache filter when a ressource protocol ↵gabadie2016-03-071-0/+8
| | | | | | | | | | is unknown. BUG=582080 Review URL: https://codereview.chromium.org/1759183004 Cr-Commit-Position: refs/heads/master@{#379534}
* tools/android/loading: Makes WprUrlEntry ready for case in-sensitive headers.gabadie2016-03-032-7/+43
| | | | | | | | BUG=582080 Review URL: https://codereview.chromium.org/1752793002 Cr-Commit-Position: refs/heads/master@{#379059}
* tools/android/loading: Implements loading_trace_analyzer.py's unittest.gabadie2016-03-012-20/+94
| | | | | | | | BUG=582080 Review URL: https://codereview.chromium.org/1738803003 Cr-Commit-Position: refs/heads/master@{#378531}
* sandwich: Implements filter-cache sub-command.gabadie2016-03-012-5/+82
| | | | | | | | | | | | | NoState-Prefetch won't be able to know all the resources to fetch. This new sub-command creates a new cache archive by pruning all resources that can't be discovered by the HTML parser of the main HTML document. BUG=582080 Review URL: https://codereview.chromium.org/1737103002 Cr-Commit-Position: refs/heads/master@{#378486}
* sandwich: Makes pull_sandwich_metrics.py a sub-command.gabadie2016-03-012-35/+47
| | | | | | | | BUG=582080 Review URL: https://codereview.chromium.org/1726403005 Cr-Commit-Position: refs/heads/master@{#378467}
* Add occurrence tracking to a multigraph.mattcary2016-03-012-0/+83
| | | | | | | | | The idea is to annotate node bags with things like "75% of urls were after first contentful paint". Review URL: https://codereview.chromium.org/1735093002 Cr-Commit-Position: refs/heads/master@{#378453}
* sandwich: Implements patch-wpr subcommand.gabadie2016-03-011-0/+40
| | | | | | | | | | The patch-wpr sub-command patches all resources response headers of a WPR archive, to make sure they all will be going into the chrome cache on disk if not already in, and also takes care of making sure that this cached resources will not be invalidated or re-validated in the next 10 years. BUG=582080 Review URL: https://codereview.chromium.org/1740653002 Cr-Commit-Position: refs/heads/master@{#378452}
* Introduce ThreadedInputConnection behind a switchchangwan2016-02-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Design doc: https://goo.gl/pcNRA5 AdapterInputConnection is based on a replica model such that it has its own implementation and expects renderer to behave the same way. This model also required the replica editor to sync when there is a renderer-side change. The rationale behind this model was that it does not block the UI thread while allowing internal state to change before the next inputconnection call. Now renamed as ReplicaInputConnection, this model caused lots of issues in the past. (See design doc for details.) This CL proposes a whole new approach called ThreadedInputConnection. In this model, we create a fake view that proxies the container view such that InputConnection can be created on a separate thread (IME thread). Subsequent InputConnection method calls will also run on IME thread, so we do not block UI thread and can still wait for internal state change before returning InputConnection method calls, such as getTextBeforeCursor(). Also note that ThreadedInputConnection does not inherit BaseInputConnection because we are not using Editable model. And there are other changes that followed this model: - 'From IME' bit will be set only when there is a blocking method call that awaits state update. - ImeTest tests behavior and not internal states any more. - RecreateInputConnectionTest is replaced by a new test in ImeTest. - Move mEditable from ImeAdapter to ReplicaInputConnection. - Remove DPAD hacks in RenderWidgetInputHandler. BUG=551193 Review URL: https://codereview.chromium.org/1278593004 Cr-Commit-Position: refs/heads/master@{#377737}
* tools/android/loading: mv run_sandwich.py -> sandwich.pygabadie2016-02-251-0/+0
| | | | | | | | BUG=582080 Review URL: https://codereview.chromium.org/1732803002 Cr-Commit-Position: refs/heads/master@{#377645}
* sandwich: Refactors main() into SandwichRunner class.gabadie2016-02-251-119/+275
| | | | | | | | | | | | | | Sandwich's command line tools were getting fatter and fatter as the CLs were landing. This CL refactors main() into smaller methods of the newly introduced SandwichRunner class. It also adds new sub-commands using SandwichRunner. BUG=582080 Review URL: https://codereview.chromium.org/1731113003 Cr-Commit-Position: refs/heads/master@{#377612}
* Fix bug in my understanding of python slices.mattcary2016-02-251-2/+2
| | | | | | Review URL: https://codereview.chromium.org/1735953003 Cr-Commit-Position: refs/heads/master@{#377603}
* Add ExtractArgs to options to enable it to play nicely with custom argument ↵mattcary2016-02-252-8/+79
| | | | | | | | parsing. Review URL: https://codereview.chromium.org/1727263004 Cr-Commit-Position: refs/heads/master@{#377589}