5087 Commits

Author SHA1 Message Date
Michael Goderbauer
fea7496546 Add frameSync mechanism to flutter_driver. (#7471)
With frameSync enabled, flutter_driver actions will only be performed
when there are no pending frames in the app under test. This helps with
reducing flakiness.
2017-01-13 10:26:59 -08:00
Adam Barth
f5bd8976de Expose some text metrics on RenderParagraph (#7456)
The underlying TextPainter is not exposed, so this patch exposes some
useful metrics that clients might want to read.
2017-01-12 23:13:31 -08:00
Michael Goderbauer
394a736984 Roll engine to b3ed79122edd7172327ce415688ef674d6a7fa5d (#7476)
fixes #7433
2017-01-12 18:56:43 -08:00
Todd Volkert
55beaef743 Ignore only ENOTTY when setting stdin.lineMode (#7472) 2017-01-12 16:14:37 -08:00
Adam Barth
3c33bb4697 Add some more framework.dart tests (#7469) 2017-01-12 15:08:16 -08:00
Devon Carew
6737712067 relax timeouts for some service protocol calls (#7468)
* relax timeouts for some service protocol calls

* remove 'note that' text
2017-01-12 14:03:04 -08:00
Todd Volkert
4f9e5c8dc7 Fix race condition in coverage collection (#7455)
Previously, it was possible for the test harness to bail
and the test runner to complete before the platform plugin
triggered the collection of coverage data. This fixes the
race condition such that the pending coverage collection
task is recorded immediately after starting the process.
2017-01-12 13:58:19 -08:00
Michael Thomsen
b71f89a194 Add a workspace file to the template to trigger main.dart to open in the code editor (#7464) 2017-01-12 22:50:17 +01:00
Adam Barth
474e473a50 Remove Mimic (#7467)
This widget isn't tested and isn't used by Fuchsia or internally by Google. The
Hero widget is a better way of generating hero animations.
2017-01-12 13:14:24 -08:00
Adam Barth
709cc0034e Improve test coverage again (#7458)
This patch adds tests for radio buttons, the date picker, as well as a
number of other classes.
2017-01-12 13:14:09 -08:00
Todd Volkert
719712b74c Add test for AppContext (#7465) 2017-01-12 09:31:27 -08:00
Adam Barth
8f708bfbc1 Test AboutDrawerItem (#7453)
Also, fix a few minor bugs found by the test.
2017-01-11 18:38:03 -08:00
Adam Barth
5dc96f2069 markNeedsBuild should handle case where the element is in the dirty list (#7448)
Previously we asserted that the element was not in the dirty list, but there
are scenarios where the element can be in the dirty list already. This patch
makes markNeedsBuild handle those cases by simply resorting the dirty list.

Fixes #6119
2017-01-11 14:37:40 -08:00
Jason Simmons
e3cdd4542c Calculate the caret position based on the next or previous rune (#7432)
The indexes passed to paragraph.getBoxesForRange are based on UTF-16 code
units.  If the caret is at a character that is encoded as multiple code units,
then the start and end indexes should be adjusted accordingly.
2017-01-11 14:32:13 -08:00
Yegor
0c7a9da98f microbenchmarks: single-line JSON; consolidate #7433 workaround (#7450)
- output single-line JSON because iOS 9.x cannot output more than one line
- move the workaround for #7433 into LiveTestWidgetsFlutterBinding so that it works in all cases (e.g. animation_bench.dart on iOS)
2017-01-11 14:29:21 -08:00
Hans Muller
a27192fe67 Navigator tutorial dartdoc (#7445) 2017-01-11 14:13:48 -08:00
Michael Goderbauer
528d507a53 Workaround for #7433 in flutter_driver (#7447) 2017-01-11 13:57:53 -08:00
Devon Carew
7f2915d331 ignore exceptions from stdin.lineMode (#7439)
* ignore exceptions from stdin.lineMode

* only catch IOException
2017-01-11 10:54:42 -08:00
Michael Goderbauer
5a9063f55c Remove waitForElement-specific timeout. (#7442)
It is now handled at a higher level for all commands.
2017-01-11 10:36:37 -08:00
Adam Barth
8f6aefa2c8 Remove HostMessages (#7436)
This API was deprecated. Clients should use PlatformMessages instead.
2017-01-11 08:59:43 -08:00
Todd Volkert
a0666f330e Update Process.exitCode setter to not use @override (#7434)
As of Dart SDK 1.22.0-dev.5.0, `Process.exitCode` is no longer
mutable (that SDK version picks up e5a16b1ca5).
This change allows the tools code to pass analysis in sdk versions both
before and after that change, to allow for analysis against both the host and
target sdks.
2017-01-10 21:33:04 -08:00
Adam Barth
2ee04c92bf Improve test coverage (#7430)
Also, make the exception handling for global key listeners slightly more
robust.
2017-01-10 20:41:42 -08:00
Yegor
7a10ed9315 Revert "Bump to Dart SDK 1.22.0-dev.5.0 (#7382)" (#7435)
This reverts commit ef25a2033781a9ab3195bddd8572e9a449d1c7e4 to unbreak the build.
2017-01-10 18:14:58 -08:00
Todd Volkert
bba6bff66b Move forbidden dart:io import test from Bash to Dart (#7427) 2017-01-10 16:08:51 -08:00
Phil Quitslund
ef25a20337 Bump to Dart SDK 1.22.0-dev.5.0 (#7382)
* Bump Dart SDK to 1.22.0-dev.5.0.

* Suppress spurious `FutureOr` type warning.

* Fixed linter dep post merge.

* Formatting tweaks.
2017-01-10 14:55:31 -08:00
Todd Volkert
1ccbf8f00d Use FileSystem.pathSeparator instead of Platform.pathSeparator (#7417) 2017-01-10 13:17:20 -08:00
Adam Barth
03d1980733 Change Flexible's default FlexFit (#7404)
Change `Flexible`'s default `FlexFit`

Previously, `Flexible` defaulted to `FlexFit.tight`, which forced the child to
expand to fill the available space. Now, `Flexible` defaults to
`FlexFit.loose`, which does not force the child to expand to fill the available
space.

If you want the child to expand to fill the available space, consider using
`Expanded` instead.

Fixes #5169
2017-01-10 13:12:04 -08:00
Jason Simmons
90d18fa808 Fix the type of the default project root path (#7422) 2017-01-10 12:08:33 -08:00
Adam Barth
b9f49a40f7 Handle missing flutter_test dependency cleanly (#7421)
We now produce a more reasonable error message when we're missing the
flutter_test dependency in a test. Also, remove the flutter_tools stack traces
when the engine dies.

Fixes #6187
2017-01-10 11:31:24 -08:00
Hans Muller
2155fb74b6 Tweak the Navigator class doc (#7415) 2017-01-10 11:19:09 -08:00
Todd Volkert
e2847c7221 Fix type passed to printError() (#7416)
Fixes #7413
2017-01-10 10:38:12 -08:00
Jason Simmons
8af5520f56 Do not print stack traces for DevFS write request failures (#7405)
Each stack trace will yield many async task stacks for every write request
that is in flight.  If the device side is unresponsive and all writes are
failing, then this can generate an overwhelming amount of logs.
2017-01-10 10:30:22 -08:00
Adam Barth
5a2bf18488 Improve test coverage and fix bugs (#7410)
This patch improves test coverage for a number of files that had low
coverage. This patch also fixes a few minor bugs found by these tests.
2017-01-10 10:15:33 -08:00
John McCutchan
6a63af4081 Rebuild Android apk when Dart source is modified (#7345)
- [x] Wire up dependency checker and plumb flags down to the right place

Fixes #7014
2017-01-10 07:59:55 -08:00
Adam Barth
684259794b Add CupertinoAlertDialog (#7395)
Fixes #7375
2017-01-09 21:35:43 -08:00
Adam Barth
cd34593ca8 Test print.dart (#7406) 2017-01-09 21:35:26 -08:00
Jason Simmons
fb8179bfed Remove a misfiring assert in the test framework plugin (#7397)
Fixes https://github.com/flutter/flutter/issues/7351

When a test runs to completion, the test harness closes the stream side of the
StreamChannel, causing the sink side to be closed as well.  So by the time we
receive a test result of completed/harnessBailed, the controller sink has been
closed.
2017-01-09 16:52:00 -08:00
Ian Hickson
2eecb8be37 Improve Notification API (#7403)
- better documentation

- verify (at run time) that onNotification doesn't return null, and
  report copious helpful information if it does.

- add a toString/debugFillDescription convention to Notification.

- actually test Notification
2017-01-09 16:44:22 -08:00
Ian Hickson
d3faada983 Trivial improvement of AbstractNode docs. (#7399)
This confused me briefly the other day.
2017-01-09 16:33:40 -08:00
Ian Hickson
cd92e11f17 Use the actual pipeline owner for this assert. (#7400) 2017-01-09 16:33:25 -08:00
Adam Barth
84cf54892d Improve test coverage (#7401)
This patch adds a number of tests for previously untested lines.
2017-01-09 16:19:24 -08:00
Devon Carew
258fc011f6 pass additional named params to daemon run (#7392)
* pass additional named params to daemon run

* add a trailing comma
2017-01-09 16:12:41 -08:00
Matt Perry
12d5b26c3a Add an onChanged callback to InputFormField. (#7398)
Fixes https://github.com/flutter/flutter/issues/7210
2017-01-09 15:43:16 -08:00
Michael Goderbauer
7c9f9be363 Add a timeout to every command (enforced on device and host) (#7391) 2017-01-09 14:57:25 -08:00
Hans Muller
b23aed7a86 New Tabs API (#7387) 2017-01-09 14:55:36 -08:00
Ian Hickson
e82b18d47b The core RenderSliver protocol. (#7370)
This implements a new RenderViewport2 class to replace the existing
RenderViewport class.
2017-01-09 14:49:14 -08:00
Todd Volkert
016b5ab0cc Force all dart:io usage to go through 'base/io.dart' (#7390)
This ensures that accidental usages of dart:io's
file API don't creep in over time.
2017-01-09 08:37:00 -08:00
Todd Volkert
8bb270342e Update flutter_tools to use package:file throughout (#7385)
This removes direct file access from within flutter_tools
in favor of using `package:file` via a `FileSystem` that's
accessed via the `ApplicationContext`.

This lays the groundwork for us to be able to easily swap
out the underlying file system when running Flutter tools,
which will be used to provide a record/replay file system,
analogous to what we have for process invocations.
2017-01-06 16:51:44 -08:00
Adam Barth
0c42c9b1b2 Add CupertinoActivityIndicator (#7380)
Fixes #7372
2017-01-06 15:58:26 -08:00
Adam Barth
b40f0cae9c Allow Expanded.flex to be null (#7384)
Some clients pass null, which was previously allowed by Flexible.

Fixes #7383
2017-01-06 13:59:40 -08:00