Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Flutter GPU] Establish a better unittesting scheme to cover API behavior changes. #144640

Open
bdero opened this issue Mar 5, 2024 · 1 comment
Assignees
Labels
engine flutter/engine repository. See also e: labels. flutter-gpu team-engine Owned by Engine team

Comments

@bdero
Copy link
Member

bdero commented Mar 5, 2024

So far, we have:

  • Impeller "Dart renderer unittests": renderer_dart_unittests.cc + dart_tests.dart
    • Runs in CI.
    • Been using this primarily to cover the API in a crash smoke test.
    • Can't actually draw anything visual to the playgrounds.
  • flutter_tester: gpu_test.dart
    • Runs in CI.
    • Up until now, I've only used this to test what happens when someone tries to use Flutter GPU even though Impeller isn't available. Now that flutter_tester supports Impeller, this is potentially a good way to perform behavioral testing and perhaps submit goldens.

We should clean up this testing situation and establish a clear pattern. My immediate suggestion would be:

  1. See if we can do all behavioral testing/golden collection using flutter_tester at this point.
  2. Stretch goal: Make the "Dart renderer unittests" actually display to Impeller's playground. This would be a convenient/useful debugging tool.
@bdero bdero added this to the Flutter GPU MVP milestone Mar 6, 2024
@bdero bdero self-assigned this Mar 6, 2024
auto-submit bot pushed a commit to flutter/engine that referenced this issue Mar 6, 2024
Part of flutter/flutter#144640.

I'll be moving the rest of the pipeline-dependent tests and packaging a shader bundle for flutter_tester once Flutter GPU works against Vulkan/swiftshader.
@bdero
Copy link
Member Author

bdero commented Mar 12, 2024

@chinmaygarde is going to fix up the playground situation so that we can render to textures.

@chinmaygarde chinmaygarde removed their assignment Jun 18, 2024
@danagbemava-nc danagbemava-nc added engine flutter/engine repository. See also e: labels. team-engine Owned by Engine team labels Aug 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
engine flutter/engine repository. See also e: labels. flutter-gpu team-engine Owned by Engine team
Projects
Status: 🔧 Internals
Development

No branches or pull requests

3 participants