Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commite7a231e

Browse files
authored
fix: fix test flake introduced by#9264 (#9330)
* Fix test flake introduced by#9264Signed-off-by: Spike Curtis <spike@coder.com>* change check to match suffixSigned-off-by: Spike Curtis <spike@coder.com>---------Signed-off-by: Spike Curtis <spike@coder.com>
1 parent058fb2e commite7a231e

File tree

3 files changed

+22
-8
lines changed

3 files changed

+22
-8
lines changed

‎coderd/templateversions_test.go‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -308,11 +308,13 @@ func TestPatchCancelTemplateVersion(t *testing.T) {
308308
require.Eventually(t,func()bool {
309309
varerrerror
310310
version,err=client.TemplateVersion(ctx,version.ID)
311+
// job gets marked Failed when there is an Error; in practice we never get to Status = Canceled
312+
// because provisioners report an Error when canceled. We check the Error string to ensure we don't mask
313+
// other errors in this test.
314+
t.Logf("got version %s | %s",version.Job.Error,version.Job.Status)
311315
returnassert.NoError(t,err)&&
312-
// The job will never actually cancel successfully because it will never send a
313-
// provision complete response.
314-
assert.Empty(t,version.Job.Error)&&
315-
version.Job.Status==codersdk.ProvisionerJobCanceling
316+
strings.HasSuffix(version.Job.Error,"canceled")&&
317+
version.Job.Status==codersdk.ProvisionerJobFailed
316318
},testutil.WaitShort,testutil.IntervalFast)
317319
})
318320
}

‎coderd/workspacebuilds_test.go‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ import (
1414
"github.com/stretchr/testify/require"
1515
"golang.org/x/xerrors"
1616

17+
"cdr.dev/slog"
18+
"cdr.dev/slog/sloggers/slogtest"
1719
"github.com/coder/coder/v2/coderd/audit"
1820
"github.com/coder/coder/v2/coderd/coderdtest"
1921
"github.com/coder/coder/v2/coderd/database"
@@ -412,7 +414,10 @@ func TestPatchCancelWorkspaceBuild(t *testing.T) {
412414
t.Run("User is not allowed to cancel",func(t*testing.T) {
413415
t.Parallel()
414416

415-
client:=coderdtest.New(t,&coderdtest.Options{IncludeProvisionerDaemon:true})
417+
// need to include our own logger because the provisioner (rightly) drops error logs when we shut down the
418+
// test with a build in progress.
419+
logger:=slogtest.Make(t,&slogtest.Options{IgnoreErrors:true}).Leveled(slog.LevelDebug)
420+
client:=coderdtest.New(t,&coderdtest.Options{IncludeProvisionerDaemon:true,Logger:&logger})
416421
owner:=coderdtest.CreateFirstUser(t,client)
417422
version:=coderdtest.CreateTemplateVersion(t,client,owner.OrganizationID,&echo.Responses{
418423
Parse:echo.ParseComplete,

‎scaletest/createworkspaces/run_test.go‎

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -163,8 +163,12 @@ func Test_Runner(t *testing.T) {
163163
ctx,cancel:=context.WithTimeout(context.Background(),testutil.WaitLong)
164164
defercancel()
165165

166+
// need to include our own logger because the provisioner (rightly) drops error logs when we shut down the
167+
// test with a build in progress.
168+
logger:=slogtest.Make(t,&slogtest.Options{IgnoreErrors:true}).Leveled(slog.LevelDebug)
166169
client:=coderdtest.New(t,&coderdtest.Options{
167170
IncludeProvisionerDaemon:true,
171+
Logger:&logger,
168172
})
169173
user:=coderdtest.CreateFirstUser(t,client)
170174

@@ -251,14 +255,17 @@ func Test_Runner(t *testing.T) {
251255
iferr!=nil {
252256
returnfalse
253257
}
254-
for_,build:=rangebuilds {
258+
fori,build:=rangebuilds {
259+
t.Logf("checking build #%d: %s | %s",i,build.Transition,build.Job.Status)
255260
// One of the builds should be for creating the workspace,
256261
ifbuild.Transition!=codersdk.WorkspaceTransitionStart {
257262
continue
258263
}
259264

260-
// And it should be either canceled or canceling
261-
ifbuild.Job.Status==codersdk.ProvisionerJobCanceled||build.Job.Status==codersdk.ProvisionerJobCanceling {
265+
// And it should be either failed (Echo returns an error when job is canceled), canceling, or canceled.
266+
ifbuild.Job.Status==codersdk.ProvisionerJobFailed||
267+
build.Job.Status==codersdk.ProvisionerJobCanceling||
268+
build.Job.Status==codersdk.ProvisionerJobCanceled {
262269
returntrue
263270
}
264271
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp