Skip to content

[pigeon] Expose custom object IDs for testing on Linux #156100

Open
flutter/packages
#9306
@stuartmorgan-g

Description

@stuartmorgan-g

The way custom FlValue objects work on Linux, the ID they use is part of the API contract (to identify them, since there's no inherent runtime typing), but currently those assignments are an implementation detail of the generated Pigeon code. That's an issue for native unit tests, because in order to call fl_value_new_custom_object to make arguments to call handlers, the right ID is required.

This isn't high priority since it can be worked around by hard-coding the IDs in the tests, but that means that tests are subject to breakage when updating the Pigeon generation, which is obviously not ideal. We should make public constants for each of the Pigeon-generated class IDs, so that tests can be written using the constants, and get any updates automatically.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work listp: pigeonrelated to pigeon messaging codegen toolpackageflutter/packages repository. See also p: labels.platform-linuxBuilding on or for Linux specificallyteam-ecosystemOwned by Ecosystem teamtriaged-ecosystemTriaged by Ecosystem team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions