MCPcopy Index your code
hub / github.com/coder/coder / TestProvisionerJobLogs

Function TestProvisionerJobLogs

coderd/provisionerjobs_test.go:399–476  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

397}
398
399func TestProvisionerJobLogs(t *testing.T) {
400 t.Parallel()
401 t.Run("StreamAfterComplete", func(t *testing.T) {
402 t.Parallel()
403 client := coderdtest.New(t, &coderdtest.Options{IncludeProvisionerDaemon: true})
404 user := coderdtest.CreateFirstUser(t, client)
405 version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, &echo.Responses{
406 Parse: echo.ParseComplete,
407 ProvisionApply: []*proto.Response{{
408 Type: &proto.Response_Log{
409 Log: &proto.Log{
410 Level: proto.LogLevel_INFO,
411 Output: "log-output",
412 },
413 },
414 }, {
415 Type: &proto.Response_Apply{
416 Apply: &proto.ApplyComplete{},
417 },
418 }},
419 })
420 template := coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
421 coderdtest.AwaitTemplateVersionJobCompleted(t, client, version.ID)
422 workspace := coderdtest.CreateWorkspace(t, client, template.ID)
423 coderdtest.AwaitWorkspaceBuildJobCompleted(t, client, workspace.LatestBuild.ID)
424
425 ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
426 defer cancel()
427
428 logs, closer, err := client.WorkspaceBuildLogsAfter(ctx, workspace.LatestBuild.ID, 0)
429 require.NoError(t, err)
430 defer closer.Close()
431 for {
432 log, ok := <-logs
433 t.Logf("got log: [%s] %s %s", log.Level, log.Stage, log.Output)
434 if !ok {
435 return
436 }
437 }
438 })
439
440 t.Run("StreamWhileRunning", func(t *testing.T) {
441 t.Parallel()
442 client := coderdtest.New(t, &coderdtest.Options{IncludeProvisionerDaemon: true})
443 user := coderdtest.CreateFirstUser(t, client)
444 version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, &echo.Responses{
445 Parse: echo.ParseComplete,
446 ProvisionApply: []*proto.Response{{
447 Type: &proto.Response_Log{
448 Log: &proto.Log{
449 Level: proto.LogLevel_INFO,
450 Output: "log-output",
451 },
452 },
453 }, {
454 Type: &proto.Response_Apply{
455 Apply: &proto.ApplyComplete{},
456 },

Callers

nothing calls this directly

Calls 11

NewFunction · 0.92
CreateFirstUserFunction · 0.92
CreateTemplateVersionFunction · 0.92
CreateTemplateFunction · 0.92
CreateWorkspaceFunction · 0.92
RunMethod · 0.65
CloseMethod · 0.65
LogfMethod · 0.65

Tested by

no test coverage detected