Skip to content

Commit e9737eb

Browse files
committed
fix
1 parent 127aa47 commit e9737eb

File tree

1 file changed

+17
-48
lines changed

1 file changed

+17
-48
lines changed

coderd/provisionerdserver/provisionerdserver_test.go

Lines changed: 17 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1738,8 +1738,6 @@ func TestNotifications(t *testing.T) {
17381738
Provisioner: database.ProvisionerTypeEcho,
17391739
OrganizationID: pd.OrganizationID,
17401740
})
1741-
template, err := db.GetTemplateByID(ctx, template.ID)
1742-
require.NoError(t, err)
17431741
file := dbgen.File(t, db, database.File{CreatedBy: user.ID})
17441742
workspace := dbgen.Workspace(t, db, database.Workspace{
17451743
TemplateID: template.ID,
@@ -1769,7 +1767,7 @@ func TestNotifications(t *testing.T) {
17691767
})),
17701768
OrganizationID: pd.OrganizationID,
17711769
})
1772-
_, err = db.AcquireProvisionerJob(ctx, database.AcquireProvisionerJobParams{
1770+
_, err := db.AcquireProvisionerJob(ctx, database.AcquireProvisionerJobParams{
17731771
OrganizationID: pd.OrganizationID,
17741772
WorkerID: uuid.NullUUID{
17751773
UUID: pd.ID,
@@ -1809,75 +1807,46 @@ func TestNotifications(t *testing.T) {
18091807
t.Parallel()
18101808

18111809
ctx := context.Background()
1812-
notifEnq := &testutil.FakeNotificationsEnqueuer{}
18131810

1814-
// Otherwise `(*Server).FailJob` fails with:
1815-
// audit log - get build {"error": "sql: no rows in result set"}
1816-
ignoreLogErrors := true
1817-
srv, db, ps, pd := setup(t, ignoreLogErrors, &overrides{
1818-
notificationEnqueuer: notifEnq,
1819-
})
1811+
// given
1812+
notifEnq := &testutil.FakeNotificationsEnqueuer{}
1813+
srv, db, ps, pd := setup(t, true /* ignoreLogErrors */, &overrides{notificationEnqueuer: notifEnq})
18201814

18211815
templateAdmin := dbgen.User(t, db, database.User{RBACRoles: []string{codersdk.RoleTemplateAdmin}})
18221816
user := dbgen.User(t, db, database.User{})
1823-
initiator := user
18241817

18251818
template := dbgen.Template(t, db, database.Template{
1826-
Name: "template",
1827-
Provisioner: database.ProvisionerTypeEcho,
1828-
OrganizationID: pd.OrganizationID,
1819+
Name: "template", Provisioner: database.ProvisionerTypeEcho, OrganizationID: pd.OrganizationID,
18291820
})
1830-
template, err := db.GetTemplateByID(ctx, template.ID)
1831-
require.NoError(t, err)
1832-
file := dbgen.File(t, db, database.File{CreatedBy: user.ID})
18331821
workspace := dbgen.Workspace(t, db, database.Workspace{
1834-
TemplateID: template.ID,
1835-
OwnerID: user.ID,
1836-
OrganizationID: pd.OrganizationID,
1822+
TemplateID: template.ID, OwnerID: user.ID, OrganizationID: pd.OrganizationID,
18371823
})
18381824
version := dbgen.TemplateVersion(t, db, database.TemplateVersion{
1839-
OrganizationID: pd.OrganizationID,
1840-
TemplateID: uuid.NullUUID{
1841-
UUID: template.ID,
1842-
Valid: true,
1843-
},
1844-
JobID: uuid.New(),
1825+
OrganizationID: pd.OrganizationID, TemplateID: uuid.NullUUID{UUID: template.ID, Valid: true}, JobID: uuid.New(),
18451826
})
18461827
build := dbgen.WorkspaceBuild(t, db, database.WorkspaceBuild{
1847-
WorkspaceID: workspace.ID,
1848-
TemplateVersionID: version.ID,
1849-
InitiatorID: initiator.ID,
1850-
Transition: database.WorkspaceTransitionDelete,
1851-
Reason: database.BuildReasonInitiator,
1828+
WorkspaceID: workspace.ID, TemplateVersionID: version.ID, InitiatorID: user.ID, Transition: database.WorkspaceTransitionDelete, Reason: database.BuildReasonInitiator,
18521829
})
18531830
job := dbgen.ProvisionerJob(t, db, ps, database.ProvisionerJob{
1854-
FileID: file.ID,
1855-
Type: database.ProvisionerJobTypeWorkspaceBuild,
1856-
Input: must(json.Marshal(provisionerdserver.WorkspaceProvisionJob{
1857-
WorkspaceBuildID: build.ID,
1858-
})),
1831+
FileID: dbgen.File(t, db, database.File{CreatedBy: user.ID}).ID,
1832+
Type: database.ProvisionerJobTypeWorkspaceBuild,
1833+
Input: must(json.Marshal(provisionerdserver.WorkspaceProvisionJob{WorkspaceBuildID: build.ID})),
18591834
OrganizationID: pd.OrganizationID,
18601835
})
1861-
_, err = db.AcquireProvisionerJob(ctx, database.AcquireProvisionerJobParams{
1836+
_, err := db.AcquireProvisionerJob(ctx, database.AcquireProvisionerJobParams{
18621837
OrganizationID: pd.OrganizationID,
1863-
WorkerID: uuid.NullUUID{
1864-
UUID: pd.ID,
1865-
Valid: true,
1866-
},
1867-
Types: []database.ProvisionerType{database.ProvisionerTypeEcho},
1838+
WorkerID: uuid.NullUUID{UUID: pd.ID, Valid: true},
1839+
Types: []database.ProvisionerType{database.ProvisionerTypeEcho},
18681840
})
18691841
require.NoError(t, err)
18701842

1843+
// when
18711844
_, err = srv.FailJob(ctx, &proto.FailedJob{
1872-
JobId: job.ID.String(),
1873-
Type: &proto.FailedJob_WorkspaceBuild_{
1874-
WorkspaceBuild: &proto.FailedJob_WorkspaceBuild{
1875-
State: []byte{},
1876-
},
1877-
},
1845+
JobId: job.ID.String(), Type: &proto.FailedJob_WorkspaceBuild_{WorkspaceBuild: &proto.FailedJob_WorkspaceBuild{State: []byte{}}},
18781846
})
18791847
require.NoError(t, err)
18801848

1849+
// then
18811850
require.Len(t, notifEnq.Sent, 1)
18821851
require.Equal(t, notifEnq.Sent[0].UserID, templateAdmin.ID)
18831852
require.Equal(t, notifEnq.Sent[0].TemplateID, notifications.TemplateWorkspaceManualBuildFailed)

0 commit comments

Comments
 (0)