golang/go

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

已关闭

#79,647 创建于 2026年5月25日

 (2 条评论) (1 个反应) (0 位负责人)Go (19,008 个派生)batch import
Toolsgoplshelp wanted

仓库指标

星标
 (133,883 个星标)
PR 合并指标
 (30 天内没有已合并 PR)

描述

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.

贡献者指南