Skip to content

Commit 9d2d583

Browse files
committed
fix conflicts
1 parent 313187a commit 9d2d583

File tree

3 files changed

+44
-33
lines changed

3 files changed

+44
-33
lines changed

coderd/database/dbfake/dbfake.go

+42-28
Original file line numberDiff line numberDiff line change
@@ -534,27 +534,6 @@ func isNotNull(v interface{}) bool {
534534
// these methods remain unimplemented in the FakeQuerier.
535535
var ErrUnimplemented = xerrors.New("unimplemented")
536536

537-
func (q *FakeQuerier) UpdateWorkspaceLockedAt(_ context.Context, arg database.UpdateWorkspaceLockedAtParams) error {
538-
if err := validateDatabaseType(arg); err != nil {
539-
return err
540-
}
541-
542-
q.mutex.Lock()
543-
defer q.mutex.Unlock()
544-
545-
for index, workspace := range q.workspaces {
546-
if workspace.ID != arg.ID {
547-
continue
548-
}
549-
workspace.LockedAt = arg.LockedAt
550-
workspace.LastUsedAt = database.Now()
551-
q.workspaces[index] = workspace
552-
return nil
553-
}
554-
555-
return sql.ErrNoRows
556-
}
557-
558537
func (*FakeQuerier) AcquireLock(_ context.Context, _ int64) error {
559538
return xerrors.New("AcquireLock must only be called within a transaction")
560539
}
@@ -4836,13 +4815,31 @@ func (q *FakeQuerier) UpdateWorkspaceLastUsedAt(_ context.Context, arg database.
48364815
return sql.ErrNoRows
48374816
}
48384817

4839-
func (q *FakeQuerier) UpdateWorkspaceLockedDeletingAt(ctx context.Context, arg database.UpdateWorkspaceLockedDeletingAtParams) error {
4840-
err := validateDatabaseType(arg)
4841-
if err != nil {
4818+
func (q *FakeQuerier) UpdateWorkspaceLockedDeletingAt(_ context.Context, arg database.UpdateWorkspaceLockedDeletingAtParams) error {
4819+
if err := validateDatabaseType(arg); err != nil {
48424820
return err
48434821
}
4844-
4845-
panic("not implemented")
4822+
q.mutex.Lock()
4823+
defer q.mutex.Unlock()
4824+
for index, workspace := range q.workspaces {
4825+
if workspace.ID != arg.ID {
4826+
continue
4827+
}
4828+
workspace.LockedAt = arg.LockedAt
4829+
if workspace.LockedAt.Time.IsZero() {
4830+
workspace.LastUsedAt = database.Now()
4831+
workspace.DeletingAt = sql.NullTime{}
4832+
}
4833+
if arg.LockedTtlMs > 0 && !workspace.LockedAt.Time.IsZero() {
4834+
workspace.DeletingAt = sql.NullTime{
4835+
Valid: true,
4836+
Time: workspace.LockedAt.Time.Add(time.Duration(arg.LockedTtlMs) * time.Millisecond),
4837+
}
4838+
}
4839+
q.workspaces[index] = workspace
4840+
return nil
4841+
}
4842+
return sql.ErrNoRows
48464843
}
48474844

48484845
func (q *FakeQuerier) UpdateWorkspaceProxy(_ context.Context, arg database.UpdateWorkspaceProxyParams) (database.WorkspaceProxy, error) {
@@ -4925,13 +4922,30 @@ func (q *FakeQuerier) UpdateWorkspaceTTLToBeWithinTemplateMax(_ context.Context,
49254922
return nil
49264923
}
49274924

4928-
func (q *FakeQuerier) UpdateWorkspacesDeletingAtByTemplateID(ctx context.Context, arg database.UpdateWorkspacesDeletingAtByTemplateIDParams) error {
4925+
func (q *FakeQuerier) UpdateWorkspacesDeletingAtByTemplateID(_ context.Context, arg database.UpdateWorkspacesDeletingAtByTemplateIDParams) error {
4926+
q.mutex.Lock()
4927+
defer q.mutex.Unlock()
4928+
49294929
err := validateDatabaseType(arg)
49304930
if err != nil {
49314931
return err
49324932
}
49334933

4934-
panic("not implemented")
4934+
for i, ws := range q.workspaces {
4935+
if ws.LockedAt.Time.IsZero() {
4936+
continue
4937+
}
4938+
deletingAt := sql.NullTime{
4939+
Valid: arg.LockedTtlMs > 0,
4940+
}
4941+
if arg.LockedTtlMs > 0 {
4942+
deletingAt.Time = ws.LockedAt.Time.Add(time.Duration(arg.LockedTtlMs) * time.Millisecond)
4943+
}
4944+
ws.DeletingAt = deletingAt
4945+
q.workspaces[i] = ws
4946+
}
4947+
4948+
return nil
49354949
}
49364950

49374951
func (q *FakeQuerier) UpsertAppSecurityKey(_ context.Context, data string) error {

enterprise/coderd/templates_test.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -260,12 +260,11 @@ func TestTemplates(t *testing.T) {
260260
t.Parallel()
261261

262262
ctx := testutil.Context(t, testutil.WaitMedium)
263-
client := coderdenttest.New(t, &coderdenttest.Options{
263+
client, user := coderdenttest.New(t, &coderdenttest.Options{
264264
Options: &coderdtest.Options{
265265
IncludeProvisionerDaemon: true,
266266
},
267267
})
268-
user := coderdtest.CreateFirstUser(t, client)
269268
_ = coderdenttest.AddFullLicense(t, client)
270269

271270
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil)

enterprise/coderd/workspaces_test.go

+1-3
Original file line numberDiff line numberDiff line change
@@ -634,7 +634,6 @@ func TestWorkspacesFiltering(t *testing.T) {
634634
IncludeProvisionerDaemon: true,
635635
},
636636
})
637-
user := coderdtest.CreateFirstUser(t, client)
638637
_ = coderdenttest.AddFullLicense(t, client)
639638

640639
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil)
@@ -680,14 +679,13 @@ func TestWorkspaceLock(t *testing.T) {
680679
t.Run("TemplateLockedTTL", func(t *testing.T) {
681680
t.Parallel()
682681
var (
683-
client = coderdenttest.New(t, &coderdenttest.Options{
682+
client, user = coderdenttest.New(t, &coderdenttest.Options{
684683
Options: &coderdtest.Options{
685684
IncludeProvisionerDaemon: true,
686685
TemplateScheduleStore: &coderd.EnterpriseTemplateScheduleStore{},
687686
},
688687
})
689688

690-
user = coderdtest.CreateFirstUser(t, client)
691689
_ = coderdenttest.AddFullLicense(t, client)
692690
version = coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil)
693691
_ = coderdtest.AwaitTemplateVersionJob(t, client, version.ID)

0 commit comments

Comments
 (0)