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

Function TestWorkspaceBuildDeleteOrphan

coderd/wsbuilder/wsbuilder_test.go:905–1051  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

903}
904
905func TestWorkspaceBuildDeleteOrphan(t *testing.T) {
906 t.Parallel()
907
908 t.Run("WithActiveProvisioners", func(t *testing.T) {
909 t.Parallel()
910 req := require.New(t)
911 asrt := assert.New(t)
912
913 ctx, cancel := context.WithCancel(context.Background())
914 defer cancel()
915
916 var buildID uuid.UUID
917
918 mDB := expectDB(t,
919 // Inputs
920 withTemplate,
921 withInactiveVersion(nil),
922 withLastBuildFound,
923 withTemplateVersionVariables(inactiveVersionID, nil),
924 withRichParameters(nil),
925 withWorkspaceTags(inactiveVersionID, nil),
926 withProvisionerDaemons([]database.GetEligibleProvisionerDaemonsByProvisionerJobIDsRow{{
927 JobID: inactiveJobID,
928 ProvisionerDaemon: database.ProvisionerDaemon{
929 LastSeenAt: sql.NullTime{Valid: true, Time: dbtime.Now()},
930 },
931 }}),
932
933 // Outputs
934 expectProvisionerJob(func(job database.InsertProvisionerJobParams) {
935 asrt.Equal(userID, job.InitiatorID)
936 asrt.Equal(inactiveFileID, job.FileID)
937 input := provisionerdserver.WorkspaceProvisionJob{}
938 err := json.Unmarshal(job.Input, &input)
939 req.NoError(err)
940 // store build ID for later
941 buildID = input.WorkspaceBuildID
942 }),
943
944 withInTx,
945 expectFindMatchingPresetID(uuid.Nil, sql.ErrNoRows),
946 expectBuild(func(bld database.InsertWorkspaceBuildParams) {
947 asrt.Equal(inactiveVersionID, bld.TemplateVersionID)
948 asrt.Equal(workspaceID, bld.WorkspaceID)
949 asrt.Equal(int32(2), bld.BuildNumber)
950 asrt.Empty(string(bld.ProvisionerState))
951 asrt.Equal(userID, bld.InitiatorID)
952 asrt.Equal(database.WorkspaceTransitionDelete, bld.Transition)
953 asrt.Equal(database.BuildReasonInitiator, bld.Reason)
954 asrt.Equal(buildID, bld.ID)
955 }),
956 withBuild,
957 withNoTask,
958 expectBuildParameters(func(params database.InsertWorkspaceBuildParametersParams) {
959 asrt.Equal(buildID, params.WorkspaceBuildID)
960 asrt.Empty(params.Name)
961 asrt.Empty(params.Value)
962 }),

Callers

nothing calls this directly

Calls 15

NowFunction · 0.92
NewFunction · 0.92
NewFunction · 0.92
expectDBFunction · 0.85
withInactiveVersionFunction · 0.85
withRichParametersFunction · 0.85
withWorkspaceTagsFunction · 0.85
withProvisionerDaemonsFunction · 0.85
expectProvisionerJobFunction · 0.85
expectBuildFunction · 0.85

Tested by

no test coverage detected