Skip to content

Consistent Python wrapper API #27

Open
@skilo-sh

Description

@skilo-sh

Hi, I noticed that the wrapper API is not consistent at the moment, here is a table who recap current state :

Image

In this table you can see the columns:

  • Function name: the name of the function who run tests with the python wrapper's file as an input.
  • Is defined in __dir__: if the function is defined in the __dir__ attribute of the parent Class.
  • Take path in parameter: If the function take the path to the python wrapper as an argument or if the path is harcoded in the source code.
  • Ignore compliance/resilience: If the function ignore compliance/resilience arguments.

I think that each columns should be like the Expected ? row. I also think it's a pity to have function prototypes (i.e. both function's name and type signature) who are not consistent between each primitive ; that's why I suggest the following prototype:

def run_python_wrapper(
    wrapper: Path, compliance: bool, resilience: bool,
    options: None | Dict
) -> ResultsDict:

Where options is a Dict containing options related to the primitive.

I didn't dare to open a PR because these changes are big and require discussion before.
If you agree with me and you need help, I can do it myself and open a PR.

Thank you for your reply!

skilo

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions