Skip to content

Unable to add a new optional argument in SceneBuilder.pushedOffset method #101971

@ColdPaleLight

Description

@ColdPaleLight

FakeSceneBuilder implements SceneBuilder and overrides some methods, which makes it very difficult for SceneBuilder to add some optional arguments to these methods.

I found this issue while writing this PR flutter/engine#32615

  OffsetEngineLayer pushOffset(
    double dx,
    double dy, {
    OffsetEngineLayer? oldLayer,
+   bool rasterCache = false,
  }) 

Linux Framework Smoke Tests failed
https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8817109582277307505/+/u/Framework_test/test:_Framework_test/stdout?format=raw

test/rendering/layers_test.dart:767:21: Error: The method 'FakeSceneBuilder.pushOffset' has fewer named arguments than those of overridden method 'SceneBuilder.pushOffset'.
  OffsetEngineLayer pushOffset(double x, double y, {OffsetEngineLayer? oldLayer}) {
                    ^
org-dartlang-sdk:///flutter/lib/ui/compositing.dart:322:21: Context: This is the overridden method ('pushOffset').
  OffsetEngineLayer pushOffset(
                    ^
.....                                                 
03:21 +3889 ~1 -1: loading /b/s/w/ir/cache/flutter/packages/flutter/test/rendering/layers_test.dart [E]                                                                                                
  Failed to load "/b/s/w/ir/cache/flutter/packages/flutter/test/rendering/layers_test.dart": Compilation failed for testPath=/b/s/w/ir/cache/flutter/packages/flutter/test/rendering/layers_test.dart

                    ^

cc @dnfield

Metadata

Metadata

Assignees

No one assigned

    Labels

    a: tests"flutter test", flutter_test, or one of our testsc: tech-debtTechnical debt, code quality, testing, etc.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions