Skip to content

[internal] improve local testing experience #2038

@pichlermarc

Description

@pichlermarc

A lot of the tests in this repository require some dependencies to run (postgres, mysql, redis).

By default, we skip a lot of tests since these dependencies need to be spun up manually. Usually, to run them locally an env var needs to be set that prevents these tests from being skipped. Unfortunately this is currently inconsistent across packages.

The goal of this issue is to streamline the testing setup and ensure scripts behave the same in each package, and add missing scripts if necessary:

  • test:docker:start
    • spins up one or more docker containers which are used for testing, mapping ports if necessary
  • test:docker:stop
    • stops the containers started by test:docker:start
  • test:local
    • sets the necessary environment variables for the test
    • runs the tests

To keep review scope manageable, only work on one PR per package:

Additional task (documentation):

Once all packages have been updated:

  • document how to run local tests for a package in CONTRIBUTING.md. Since all scripts behave the same, it should be enough to mention the order of scripts to run.

Additional resources

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs:code-contributionThis feature/bug is ready to implementtype:feature-trackingA feature with sub-issues that need to be addressedup-for-grabsGood for taking. Extra help will be provided by maintainers

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions