Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 370f0b9

Browse files
authoredSep 17, 2024
fix(coderd): check if timings can be read (coder#14697)
1 parent 14d3e30 commit 370f0b9

File tree

2 files changed

+11
-4
lines changed

2 files changed

+11
-4
lines changed
 

‎coderd/database/dbauthz/dbauthz.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1792,6 +1792,10 @@ func (q *querier) GetProvisionerJobByID(ctx context.Context, id uuid.UUID) (data
17921792
}
17931793

17941794
func (q *querier) GetProvisionerJobTimingsByJobID(ctx context.Context, jobID uuid.UUID) ([]database.ProvisionerJobTiming, error) {
1795+
_, err := q.GetProvisionerJobByID(ctx, jobID)
1796+
if err != nil {
1797+
return nil, err
1798+
}
17951799
return q.db.GetProvisionerJobTimingsByJobID(ctx, jobID)
17961800
}
17971801

‎coderd/database/dbauthz/dbauthz_test.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -552,10 +552,13 @@ func (s *MethodTestSuite) TestProvisionerJob() {
552552
Asserts(v.RBACObject(tpl), []policy.Action{policy.ActionRead, policy.ActionUpdate}).Returns()
553553
}))
554554
s.Run("GetProvisionerJobTimingsByJobID", s.Subtest(func(db database.Store, check *expects) {
555-
jobID := uuid.New()
556-
j := dbgen.ProvisionerJob(s.T(), db, nil, database.ProvisionerJob{ID: jobID})
555+
w := dbgen.Workspace(s.T(), db, database.Workspace{})
556+
j := dbgen.ProvisionerJob(s.T(), db, nil, database.ProvisionerJob{
557+
Type: database.ProvisionerJobTypeWorkspaceBuild,
558+
})
559+
_ = dbgen.WorkspaceBuild(s.T(), db, database.WorkspaceBuild{JobID: j.ID, WorkspaceID: w.ID})
557560
t := dbgen.ProvisionerJobTimings(s.T(), db, database.InsertProvisionerJobTimingsParams{
558-
JobID: jobID,
561+
JobID: j.ID,
559562
StartedAt: []time.Time{dbtime.Now(), dbtime.Now()},
560563
EndedAt: []time.Time{dbtime.Now(), dbtime.Now()},
561564
Stage: []database.ProvisionerJobTimingStage{
@@ -566,7 +569,7 @@ func (s *MethodTestSuite) TestProvisionerJob() {
566569
Action: []string{"action1", "action2"},
567570
Resource: []string{"resource1", "resource2"},
568571
})
569-
check.Args(j.ID).Asserts().Returns(t)
572+
check.Args(j.ID).Asserts(w, policy.ActionRead).Returns(t)
570573
}))
571574
s.Run("GetProvisionerJobsByIDs", s.Subtest(func(db database.Store, check *expects) {
572575
a := dbgen.ProvisionerJob(s.T(), db, nil, database.ProvisionerJob{})

0 commit comments

Comments
 (0)
Failed to load comments.