diff --git a/codersdk/agentsdk/logs_test.go b/codersdk/agentsdk/logs_test.go index e411e6e7213e4..894cdf7cea58f 100644 --- a/codersdk/agentsdk/logs_test.go +++ b/codersdk/agentsdk/logs_test.go @@ -338,9 +338,12 @@ func TestStartupLogsSender(t *testing.T) { ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitShort) defer cancel() - var want, got []agentsdk.Log - patchLogs := func(_ context.Context, req agentsdk.PatchLogs) error { - got = append(got, req.Logs...) + patchStart := make(chan struct{}) + patchDone := make(chan struct{}) + patchLogs := func(ctx context.Context, _ agentsdk.PatchLogs) error { + close(patchStart) + <-ctx.Done() + close(patchDone) return nil } @@ -358,10 +361,14 @@ func TestStartupLogsSender(t *testing.T) { }) require.NoError(t, err) - cancel() + go func() { + <-patchStart + cancel() + }() err = flushAndClose(ctx) require.Error(t, err) - require.Equal(t, want, got) + <-patchDone + // The patch request should have been canceled if it was active. }) }