Skip to content
This repository has been archived by the owner on Feb 22, 2023. It is now read-only.

[integration_test] Add watchPerformance #3116

Merged
merged 6 commits into from Oct 9, 2020

Conversation

CareF
Copy link
Contributor

@CareF CareF commented Oct 6, 2020

Description

Add a watchPerformance method to IntegrationTestWidgetsFlutterBinding to implement performance metric collection as we do on flutter_driver test by traceAction and TimelineSummary. This is also to reland #2906 (revert #2917)

Related Issues

This is the first step of flutter/flutter#63537

Checklist

Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
  • All existing and new tests are passing.
  • I updated/added relevant documentation (doc comments with ///).
  • The analyzer (flutter analyze) does not report any problems on my PR.
  • I read and followed the Flutter Style Guide.
  • The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
  • I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
  • I updated CHANGELOG.md to add a description of the change.
  • I signed the CLA.
  • I am willing to follow-up on review comments in a timely manner.

Breaking Change

Does your PR require plugin users to manually update their apps to accommodate your change?

  • Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
  • No, this is not a breaking change.

@CareF
Copy link
Contributor Author

CareF commented Oct 6, 2020

I tried putting it in unit test but it seems that addTimingsCallback is not really capturing FrameTiming when running unit tests.

Copy link

@liyuqian liyuqian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. The format needs a little fix to pass the check.

@CareF
Copy link
Contributor Author

CareF commented Oct 7, 2020

@liyuqian I just realized that I also need to add delayForFrameTimings. Do we need a TODO for when flush FrameTiming is supported in the engine side?

@liyuqian
Copy link

liyuqian commented Oct 8, 2020

@liyuqian I just realized that I also need to add delayForFrameTimings. Do we need a TODO for when flush FrameTiming is supported in the engine side?

Good catch. That's why a single copy of watchPerformance is so much better. Yes, a TODO item with a reference to the related issue (flutter/flutter#64808) would be nice.

Copy link

@liyuqian liyuqian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@CareF CareF merged commit 65f7260 into flutter:master Oct 9, 2020
@CareF CareF deleted the add_watcch_performance branch October 9, 2020 00:21
@CareF
Copy link
Contributor Author

CareF commented Oct 9, 2020

I have lost the permission to publish it to pub.dev (which is linked to my @google.com account). @dnfield Would you mind helping me publish it?

jorgefspereira pushed a commit to jorgefspereira/plugins_flutter that referenced this pull request Oct 10, 2020
blasten pushed a commit that referenced this pull request Oct 15, 2020
* Android Code Inspection and Clean up (#3117)

* [in_app_purchase] Android Code Inspection and Clean up (#3120)

* Android Code Inspection and Clean up

* Format

* [video_player] Fix SSLProtocolException for low API version (#3122)

* [camera] Set audio encoding bitrate when recording video (#3124)

Fixes flutter/flutter#38787

* Fix links in package example readmes (#3130)

http://flutter.io/ -> https://flutter.dev/

* [integration_test] Add watchPerformance (#3116)

* add watchPerformance

* [wifi_info_flutter] [wifi_info_flutter_platform_interface] Initial commit for `wifi_info_flutter` plugin and platform interface (#3129)

* [video_player] fix Timer Leak (#3119)

* [in_app_purchase] Add example test target to Podfile, add OCMock dependency (#3145)

* Add linux directory to examples (#3064)

When Linux support was added to these plugins, the app template wasn't
yet stabilized, so was not checked in. Now that it is stable, this adds
them so that the plugin_tools workaround that created them on each run
can be removed.

Other than CHANGELOG.md updates and updating the verison in
pubspec.yaml, this is purely the result of running 'flutter create .' in
the example/ folders and adding the resulting linux/ directories.

* [wifi_info_flutter_plugin_interface] implement wifi platform interface (#3134)

* [share] Replace deprecated Environment.getExternalStorageDirectory() call on Android. (#3152)

* Android API 29 & 30

* Update Version

* Update android sdk version to 29 for all mobile plugins. (#3042)

* [google_sign_in]  fix merge error in CHANGELOG (#3153)

Co-authored-by: Hamdi Kahloun <32666446+hamdikahloun@users.noreply.github.com>
Co-authored-by: Maurits van Beusekom <maurits@baseflow.com>
Co-authored-by: Kevin Moore <kevmoo@users.noreply.github.com>
Co-authored-by: Ming Lyu (CareF) <minglyu@google.com>
Co-authored-by: Maurice Parrish <bmparr@google.com>
Co-authored-by: creativecreatorormaybenot <creativecreatorormaybenot@gmail.com>
Co-authored-by: Jenn Magder <magder@google.com>
Co-authored-by: stuartmorgan <stuartmorgan@google.com>
Co-authored-by: Chris Yang <ychris@google.com>
FlutterSu pushed a commit to FlutterSu/flutter-plugins that referenced this pull request Nov 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
3 participants