golang/go

x/tools/gopls: source.addTest: emit t.Context() when module is Go 1.24+

Open

#79,647 opened on May 25, 2026

View on GitHub
 (2 comments) (1 reaction) (0 assignees)Go (133,883 stars) (19,008 forks)batch import
Toolsgoplshelp wanted

Description

Proposal

The source.addTest code action ("Add test for FUNC") passes context.Background() whenever the function under test takes context.Context as its first parameter:

got := a.Foo(context.Background(), tt.in)

When the module's go.mod declares Go 1.24 or later, the generated scaffolding should use t.Context() instead:

got := a.Foo(t.Context(), tt.in)

Implementation

I have a draft CL ready. It gates on versions.AtLeast(fileVersion, versions.Go1_24); older modules keep the current context.Background() behavior.

Contributor guide