grafana/k6

Run tests in separate process so that we actually test loading proto definitions at runtime

Open

#3552 opened on Jul 5, 2023

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Go (30,564 stars) (1,537 forks)batch import
area: grpccihelp wantedtests

Description

Originally raised in this comment by @thiagodpf.

What?

The current unit tests run the server and clients in the same process.

gRPC seems to have a global registry for types, so once the server loads them, the client doesn't need to.

This means that all tests that test that clients actually manage to load types correctly only with .proto files are not actually testing that :(

Solutions:

Preferably go test ./... should run the unit tests with the server and client as separate process - preferably even separate from the main go test one :thinking:

This sounds involved.

A quicker solution will be to have another CI step that runs a server + k6 run script.js exercising the most common cases.

Both will be best.

Contributor guide