golang/go

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

Closed

#79,647 opened on May 25, 2026

 (2 comments) (1 reaction) (0 assignees)Go (19,008 forks)batch import
Toolsgoplshelp wanted

Repository metrics

Stars
 (133,883 stars)
PR merge metrics
 (No merged PRs in 30d)

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