Commit Graph

220 Commits

Author SHA1 Message Date
adazh
4e4b9bd0b1
Renamed the Driver API waitUntilFrameSync to waitUntilNoPendingFrame. (#36512) 2019-07-18 22:16:57 -07:00
adazh
dd51afd161
Added Driver API that waits until frame sync. (#36334) 2019-07-18 15:03:19 -07:00
liyuqian
180aa0c0b1
Fix flaky peer connection (#36089)
Fixes https://github.com/flutter/flutter/issues/36091.

Previously, a sendRequest will be sent even if the peer is closed during
a driver test. That will cause a time out without any error information.
Such issue is unreproducible on my Mac Book Pro, but 100% reproducible
on our new Mac mini (2018).

The closing issue is tracked in https://github.com/flutter/flutter/issues/36268

Additional to this fix, we should also patch the jason_rpc_2 so the peer
will throw exception if sendRequest is attempted while the connection is
closed.

**Test**:
tiles_scroll_perf_iphonexs__timeline_summary failed without this patch.
It will pass after this patch.

I'm not sure how to add a unit test for this. Please let me know if you have
some ideas.

This patch will generate the following warning log on the new Mac Mini
```
flutter: Observatory listening on http://127.0.0.1:50192/cZPDF4sW7MM=/  
Installing and launching...                                        10.2s
00:00 +0: scrolling performance test (setUpAll)
[info ] FlutterDriver: Connecting to Flutter application at http://127.0.0.1:1069/cZPDF4sW7MM=/
[trace] FlutterDriver: Isolate found with number: 3684677742843303
[trace] FlutterDriver: Isolate is paused at start.
[trace] FlutterDriver: Attempting to resume isolate
[trace] FlutterDriver: Waiting for service extension
[info ] FlutterDriver: Connected to Flutter application.
00:00 +0: scrolling performance test complex_layout_scroll_perf
[warning] FlutterDriver: Instance of '_WebSocketImpl' is closed with an unexpected code 1005
[warning] FlutterDriver: Peer connection is closed! Trying to restore the connection...
00:10 +1: scrolling performance test tiles_scroll_perf
[warning] FlutterDriver: Instance of '_WebSocketImpl' is closed with an unexpected code 1005
[warning] FlutterDriver: Peer connection is closed! Trying to restore the connection...
00:20 +2: scrolling performance test (tearDownAll)
00:20 +2: All tests passed!
Stopping application instance.
```
2019-07-16 08:30:26 -07:00
Siva
f496595773
Use the new service protocol message names (#35482)
* Use the new service protocol message names
  clearVMTimeline
  setVMTimelineFlags
  getVMTimeline
  getVMTimelineFlags

* Fix clearTimeline at another spot.
2019-07-02 16:10:04 -07:00
Michael Goderbauer
4f5d901395
Add Driver command to get diagnostics tree (#34440) 2019-06-18 18:31:21 -07:00
Michael Goderbauer
3c24c5bdcd
Document that offsets are returned in logical pixels (#33620) 2019-05-31 08:55:28 -07:00
Mehmet Fidanboylu
27bdb11030
Expose service client and app isolate in driver (#33431) 2019-05-29 09:29:24 -07:00
Todd Volkert
ceec48785a
Re-apply "Add assert that the root widget has been attached" (#33084)
This re-applies #32437 with a fix to the broken device lab test.
2019-05-21 11:21:57 -07:00
Todd Volkert
e2042bae6d
Revert "Add assert that the root widget has been attached. (#32437)" (#33068)
This reverts commit 069303d46f.
2019-05-20 13:30:41 -07:00
Sam Rawlins
c2a93bd545 Fix missing return statements on function literals (#33058) 2019-05-20 12:51:57 -07:00
Todd Volkert
069303d46f
Add assert that the root widget has been attached. (#32437) 2019-05-20 09:27:39 -07:00
Dan Field
6d4b0abfa8
Ignore some JSON RPC errors (#32710) 2019-05-14 16:04:04 -07:00
Michael Goderbauer
b37c3be0fa
Add ancestor and descendant finders to Driver (#32410) 2019-05-10 18:21:19 +02:00
Michael Goderbauer
8cf65526e7
everything const (#32380) 2019-05-10 13:29:03 +02:00
Michael Goderbauer
ff1dbcdeb6
Add geometry getters to Flutter Driver (#32302) 2019-05-09 09:50:02 +02:00
done
d53115ab2e fix FlutterDriver timeout (#31824) 2019-05-04 06:13:25 -07:00
Dan Field
a8504405a8
Revert "Handle notification errors (#31868)" (#31886)
This reverts commit c0d5fd23ab.
2019-04-30 23:27:30 -07:00
Dan Field
c0d5fd23ab
Handle notification errors (#31868) 2019-04-30 15:42:22 -07:00
Dan Field
eac2104bc6
remove assert for Flutter Driver (#31815) 2019-04-29 17:03:25 -07:00
Kent Boogaart
392d5b2c28 Fix typo (#31771) 2019-04-29 13:04:30 +02:00
Dan Field
1db5d66932
Capture JSON RPC errors that presently get swallowed (#31584)
* Update packages
* Capture JSON RPC errors that presently get swallowed
2019-04-25 08:27:00 -07:00
Ben Konyi
a009d71101
Updated flutter_driver to support auth codes (#31310) 2019-04-19 07:57:04 -07:00
liyuqian
eb30745faf
Print warning if flutter drive is run in debug (#30747)
## Description

Print actionable warnings if `flutter drive` (where most of our performance benchmarks come from) is run in debug mode and it tries to gather benchmarks using `traceAction`.

## Related Issues

https://github.com/flutter/flutter/issues/30625

## Tests

I added the following tests:
* drive_perf_debug_warning devicelab test
2019-04-09 18:55:42 -07:00
Alexandre Ardhuin
bfa1d25bf9
some formatting of map, parameters and spaces (#29760) 2019-03-23 00:02:21 +01:00
Dan Field
5e27ebbe8d
Add semantic label finders (#29342)
* Add semantic label finders
2019-03-18 20:32:03 -07:00
Alexandre Ardhuin
a0d1f93b07
fix block formatting (#29051) 2019-03-09 09:03:11 +01:00
Alexandre Ardhuin
440ce8fde6
Fix indentations of statements in BlockFunctionBody (#28933)
* fix indentof statements in BlockFunctionBody

* fix indentof statements in BlockFunctionBody in tests
2019-03-07 21:09:28 +01:00
Alexandre Ardhuin
387f885481
Add missing trailing commas (#28673)
* add trailing commas on list/map/parameters

* add trailing commas on Invocation with nb of arg>1

* add commas for widget containing widgets

* add trailing commas if instantiation contains trailing comma

* revert bad change
2019-03-01 08:17:55 +01:00
Alexandre Ardhuin
5169ab5974
format parameter list (#27261) 2019-02-21 09:27:07 +01:00
liyuqian
7390cc5cdb
Increase our build budget to 16ms (#27709)
Because we now have 2 separate GPU and UI threads.
2019-02-15 16:12:36 -08:00
Andrew Davies
7da989f2c6
[flutter_driver] Use async call to run SSH cmds. (#27577)
For `fuchsia_compat.dart` Instead of using `runSync`, use `run` to avoid
deadlock when attempting to access specific resources like the Hub in Fuchsia.

The specific example is that in Fuchsia, the `find` command is
attempting to explore `out` which hasn't yet been serviced, as `find` is
blocking on it, causing a deadlock.
2019-02-06 14:41:56 -08:00
Michael Goderbauer
6d20ff2446
Remove all obsolete "// ignore:" (#27271) 2019-01-30 08:56:12 -08:00
Alexandre Ardhuin
ef276ffea5
format initializer list of constructors (#27111) 2019-01-29 21:47:16 +01:00
Ian Hickson
31a9626c48
[O] Removing all timeouts (mark II) (#26736)
These are essentially self-inflicted race conditions. Instead of timeouts we're going to try a more verbose logging mechanism that points out when things are taking a long time.
2019-01-19 00:31:05 -08:00
Andrew Davies
bd6ac326f6
[flutter_driver] Move Fuchsia logging code. (#26266)
When setting the Fuchsia logging function, it should happen before any
initialization code, as init can still cause warning/error/info messages
to get printed to logs. Since the default stderr/stdout fd's aren't
correct, this can cause a program to crash for unclear reasons.
2019-01-09 14:47:35 -08:00
Alexandre Ardhuin
868ff42821
fix doc-comment snippets (#25579) 2019-01-07 21:44:16 +01:00
Ian Hickson
8426910a19
Revert "[O] Remove many timeouts. (#23531)" (#25646)
This reverts commit 76f70810e4.
2018-12-20 18:46:36 -08:00
Ian Hickson
76f70810e4
[O] Remove many timeouts. (#23531)
* Remove many timeouts.

These are essentially self-inflicted race conditions. Instead of timeouts we're going to try a more verbose logging mechanism that points out when things are taking a long time.

* Get the attach tests to pass.

* Apply review comments from Todd

* More review comment fixes

* Put back the extended timeouts here now that I know why we have them...
2018-12-20 17:10:40 -08:00
Zachary Anderson
b18a2b1794
[fuchsia] Get Dart VM service ports from The Hub (#25332) 2018-12-17 11:10:47 -08:00
Yegor
9c3754d92f
FlutterDriver: allow customizing timeouts using a multiplier (#24066)
FlutterDriver: allow customizing timeouts using a multiplier
2018-11-14 17:15:00 -08:00
Michael Goderbauer
9b5c780604
Force GC before GC-sensitive benchmark runs (#23289) 2018-10-21 15:58:19 +02:00
Alexandre Ardhuin
0fb84e96c7
Prefer void to null (#22977)
* Future<void> main

* Future<void>.delayed

* prefer_void_to_Null

* address review comments
2018-10-16 22:03:06 +02:00
Andrew Davies
9ceb9ab305
[flutter_driver] Adds fuchsia compat for connect() (#22633)
Adds a Fuchsia compatibility function that allows for connecting to a
specific Isolate by name when running Flutter Driver on a Fuchsia
device.  This will check over multiple Dart VM's in an attempt to find
an Isolate by its name.
2018-10-08 11:09:07 -07:00
Alexandre Ardhuin
2ea1d81cdc
sort_constructors_first (#22575) 2018-10-04 07:28:07 +02:00
Alexandre Ardhuin
5de96bb734
unnecessary this in field initializers (#22522) 2018-10-02 17:14:59 +02:00
Alexandre Ardhuin
f62afdcf57
add missing type parameter on methods (#22096) 2018-10-01 21:29:08 +02:00
xster
ac9dc5745e
Add support for material agnostic driver navigation (#22461) 2018-10-01 09:18:20 -07:00
liyuqian
872eba2d4c
Track 90th, 99th percentile instead of missed_frame_build_budget_count (#21754)
See https://github.com/flutter/flutter/pull/19121#issuecomment-419520765
2018-09-14 13:24:13 -07:00
Alexandre Ardhuin
a07d3719a1
enable lint prefer_generic_function_type_aliases (#21680) 2018-09-14 21:06:19 +02:00
Alexandre Ardhuin
d927c93310
Unnecessary new (#20138)
* enable lint unnecessary_new

* fix tests

* fix tests

* fix tests
2018-09-12 08:29:29 +02:00