Make it possible to run tests live on a device (#3936)

This makes it possible to substitute 'flutter run' for 'flutter test'
and actually watch a test run on a device.

For any test that depends on flutter_test:

1. Remove any import of 'package:test/test.dart'.

2. Replace `testWidgets('...', (WidgetTester tester) {`
      with `testWidgets('...', (WidgetTester tester) async {`

3. Add an "await" in front of calls to any of the following:
    * tap()
    * tapAt()
    * fling()
    * flingFrom()
    * scroll()
    * scrollAt()
    * pump()
    * pumpWidget()

4. Replace any calls to `tester.flushMicrotasks()` with calls to
   `await tester.idle()`.

There's a guarding API that you can use, if you have particularly
complicated tests, to get better error messages. Search for
TestAsyncUtils.
134 files changed
tree: 983fed8bf76ad9dd064feba05fa297ddf2f3b7cc
  1. bin/
  2. dev/
  3. examples/
  4. infra/
  5. packages/
  6. travis/
  7. .analysis_options
  8. .travis.yml
  9. AUTHORS
  10. CONTRIBUTING.md
  11. ISSUE_TEMPLATE.md
  12. LICENSE
  13. README.md
README.md

Flutter

Build Status Issue Stats Issue Stats

Flutter is a new way to build high-performance, cross-platform mobile apps. Flutter is optimized for today‘s, and tomorrow’s, mobile devices. We are focused on low-latency input and high frame rates on Android and iOS.

Flutter is an early-stage open-source project. We are still missing core features like accessibility, text input, localization, and more. However, you can build demos and examples today. We hope you try it out and send us feedback.

Community

Join us on IRC at #flutter on Freenode or join our mailing list, flutter-dev@googlegroups.com.