Skip to content

Commit e360e33

Browse files
committed
Merge branch 'main' into fakebuild
2 parents b1c5a08 + 5abfe5a commit e360e33

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+238
-222
lines changed

.vscode/settings.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"codersdk",
2121
"cronstrue",
2222
"databasefake",
23-
"dbfake",
23+
"dbmem",
2424
"dbgen",
2525
"dbtype",
2626
"DERP",

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -448,7 +448,7 @@ lint/helm:
448448
DB_GEN_FILES := \
449449
coderd/database/querier.go \
450450
coderd/database/unique_constraint.go \
451-
coderd/database/dbfake/dbfake.go \
451+
coderd/database/dbmem/dbmem.go \
452452
coderd/database/dbmetrics/dbmetrics.go \
453453
coderd/database/dbauthz/dbauthz.go \
454454
coderd/database/dbmock/dbmock.go

cli/server.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ import (
6868
"github.com/coder/coder/v2/coderd/autobuild"
6969
"github.com/coder/coder/v2/coderd/batchstats"
7070
"github.com/coder/coder/v2/coderd/database"
71-
"github.com/coder/coder/v2/coderd/database/dbfake"
71+
"github.com/coder/coder/v2/coderd/database/dbmem"
7272
"github.com/coder/coder/v2/coderd/database/dbmetrics"
7373
"github.com/coder/coder/v2/coderd/database/dbpurge"
7474
"github.com/coder/coder/v2/coderd/database/migrations"
@@ -542,7 +542,7 @@ func (r *RootCmd) Server(newAPI func(context.Context, *coderd.Options) (*coderd.
542542
AppHostname: appHostname,
543543
AppHostnameRegex: appHostnameRegex,
544544
Logger: logger.Named("coderd"),
545-
Database: dbfake.New(),
545+
Database: dbmem.New(),
546546
BaseDERPMap: derpMap,
547547
Pubsub: pubsub.NewInMemory(),
548548
CacheDir: cacheDir,
@@ -633,7 +633,7 @@ func (r *RootCmd) Server(newAPI func(context.Context, *coderd.Options) (*coderd.
633633

634634
if vals.InMemoryDatabase {
635635
// This is only used for testing.
636-
options.Database = dbfake.New()
636+
options.Database = dbmem.New()
637637
options.Pubsub = pubsub.NewInMemory()
638638
} else {
639639
sqlDB, err := ConnectToPostgres(ctx, logger, sqlDriver, vals.PostgresURL.String())

coderd/database/dbauthz/dbauthz_test.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ import (
1616
"github.com/coder/coder/v2/coderd/coderdtest"
1717
"github.com/coder/coder/v2/coderd/database"
1818
"github.com/coder/coder/v2/coderd/database/dbauthz"
19-
"github.com/coder/coder/v2/coderd/database/dbfake"
2019
"github.com/coder/coder/v2/coderd/database/dbgen"
20+
"github.com/coder/coder/v2/coderd/database/dbmem"
2121
"github.com/coder/coder/v2/coderd/database/dbtime"
2222
"github.com/coder/coder/v2/coderd/rbac"
2323
"github.com/coder/coder/v2/coderd/util/slice"
@@ -62,7 +62,7 @@ func TestAsNoActor(t *testing.T) {
6262
func TestPing(t *testing.T) {
6363
t.Parallel()
6464

65-
q := dbauthz.New(dbfake.New(), &coderdtest.RecordingAuthorizer{}, slog.Make(), accessControlStorePointer())
65+
q := dbauthz.New(dbmem.New(), &coderdtest.RecordingAuthorizer{}, slog.Make(), accessControlStorePointer())
6666
_, err := q.Ping(context.Background())
6767
require.NoError(t, err, "must not error")
6868
}
@@ -71,7 +71,7 @@ func TestPing(t *testing.T) {
7171
func TestInTX(t *testing.T) {
7272
t.Parallel()
7373

74-
db := dbfake.New()
74+
db := dbmem.New()
7575
q := dbauthz.New(db, &coderdtest.RecordingAuthorizer{
7676
Wrapped: &coderdtest.FakeAuthorizer{AlwaysReturn: xerrors.New("custom error")},
7777
}, slog.Make(), accessControlStorePointer())
@@ -99,7 +99,7 @@ func TestNew(t *testing.T) {
9999
t.Parallel()
100100

101101
var (
102-
db = dbfake.New()
102+
db = dbmem.New()
103103
exp = dbgen.Workspace(t, db, database.Workspace{})
104104
rec = &coderdtest.RecordingAuthorizer{
105105
Wrapped: &coderdtest.FakeAuthorizer{AlwaysReturn: nil},
@@ -126,7 +126,7 @@ func TestNew(t *testing.T) {
126126
// as only the first db call will be made. But it is better than nothing.
127127
func TestDBAuthzRecursive(t *testing.T) {
128128
t.Parallel()
129-
q := dbauthz.New(dbfake.New(), &coderdtest.RecordingAuthorizer{
129+
q := dbauthz.New(dbmem.New(), &coderdtest.RecordingAuthorizer{
130130
Wrapped: &coderdtest.FakeAuthorizer{AlwaysReturn: nil},
131131
}, slog.Make(), accessControlStorePointer())
132132
actor := rbac.Subject{

coderd/database/dbauthz/setup_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import (
2020
"github.com/coder/coder/v2/coderd/coderdtest"
2121
"github.com/coder/coder/v2/coderd/database"
2222
"github.com/coder/coder/v2/coderd/database/dbauthz"
23-
"github.com/coder/coder/v2/coderd/database/dbfake"
23+
"github.com/coder/coder/v2/coderd/database/dbmem"
2424
"github.com/coder/coder/v2/coderd/database/dbmock"
2525
"github.com/coder/coder/v2/coderd/rbac"
2626
"github.com/coder/coder/v2/coderd/rbac/regosql"
@@ -104,7 +104,7 @@ func (s *MethodTestSuite) Subtest(testCaseF func(db database.Store, check *expec
104104
methodName := names[len(names)-1]
105105
s.methodAccounting[methodName]++
106106

107-
db := dbfake.New()
107+
db := dbmem.New()
108108
fakeAuthorizer := &coderdtest.FakeAuthorizer{
109109
AlwaysReturn: nil,
110110
}

coderd/database/dbgen/dbgen_test.go

+22-22
Original file line numberDiff line numberDiff line change
@@ -8,45 +8,45 @@ import (
88
"github.com/stretchr/testify/require"
99

1010
"github.com/coder/coder/v2/coderd/database"
11-
"github.com/coder/coder/v2/coderd/database/dbfake"
1211
"github.com/coder/coder/v2/coderd/database/dbgen"
12+
"github.com/coder/coder/v2/coderd/database/dbmem"
1313
)
1414

1515
func TestGenerator(t *testing.T) {
1616
t.Parallel()
1717

1818
t.Run("AuditLog", func(t *testing.T) {
1919
t.Parallel()
20-
db := dbfake.New()
20+
db := dbmem.New()
2121
_ = dbgen.AuditLog(t, db, database.AuditLog{})
2222
logs := must(db.GetAuditLogsOffset(context.Background(), database.GetAuditLogsOffsetParams{Limit: 1}))
2323
require.Len(t, logs, 1)
2424
})
2525

2626
t.Run("APIKey", func(t *testing.T) {
2727
t.Parallel()
28-
db := dbfake.New()
28+
db := dbmem.New()
2929
exp, _ := dbgen.APIKey(t, db, database.APIKey{})
3030
require.Equal(t, exp, must(db.GetAPIKeyByID(context.Background(), exp.ID)))
3131
})
3232

3333
t.Run("File", func(t *testing.T) {
3434
t.Parallel()
35-
db := dbfake.New()
35+
db := dbmem.New()
3636
exp := dbgen.File(t, db, database.File{})
3737
require.Equal(t, exp, must(db.GetFileByID(context.Background(), exp.ID)))
3838
})
3939

4040
t.Run("UserLink", func(t *testing.T) {
4141
t.Parallel()
42-
db := dbfake.New()
42+
db := dbmem.New()
4343
exp := dbgen.UserLink(t, db, database.UserLink{})
4444
require.Equal(t, exp, must(db.GetUserLinkByLinkedID(context.Background(), exp.LinkedID)))
4545
})
4646

4747
t.Run("GitAuthLink", func(t *testing.T) {
4848
t.Parallel()
49-
db := dbfake.New()
49+
db := dbmem.New()
5050
exp := dbgen.ExternalAuthLink(t, db, database.ExternalAuthLink{})
5151
require.Equal(t, exp, must(db.GetExternalAuthLink(context.Background(), database.GetExternalAuthLinkParams{
5252
ProviderID: exp.ProviderID,
@@ -56,50 +56,50 @@ func TestGenerator(t *testing.T) {
5656

5757
t.Run("WorkspaceResource", func(t *testing.T) {
5858
t.Parallel()
59-
db := dbfake.New()
59+
db := dbmem.New()
6060
exp := dbgen.WorkspaceResource(t, db, database.WorkspaceResource{})
6161
require.Equal(t, exp, must(db.GetWorkspaceResourceByID(context.Background(), exp.ID)))
6262
})
6363

6464
t.Run("WorkspaceApp", func(t *testing.T) {
6565
t.Parallel()
66-
db := dbfake.New()
66+
db := dbmem.New()
6767
exp := dbgen.WorkspaceApp(t, db, database.WorkspaceApp{})
6868
require.Equal(t, exp, must(db.GetWorkspaceAppsByAgentID(context.Background(), exp.AgentID))[0])
6969
})
7070

7171
t.Run("WorkspaceResourceMetadata", func(t *testing.T) {
7272
t.Parallel()
73-
db := dbfake.New()
73+
db := dbmem.New()
7474
exp := dbgen.WorkspaceResourceMetadatums(t, db, database.WorkspaceResourceMetadatum{})
7575
require.Equal(t, exp, must(db.GetWorkspaceResourceMetadataByResourceIDs(context.Background(), []uuid.UUID{exp[0].WorkspaceResourceID})))
7676
})
7777

7878
t.Run("WorkspaceProxy", func(t *testing.T) {
7979
t.Parallel()
80-
db := dbfake.New()
80+
db := dbmem.New()
8181
exp, secret := dbgen.WorkspaceProxy(t, db, database.WorkspaceProxy{})
8282
require.Len(t, secret, 64)
8383
require.Equal(t, exp, must(db.GetWorkspaceProxyByID(context.Background(), exp.ID)))
8484
})
8585

8686
t.Run("Job", func(t *testing.T) {
8787
t.Parallel()
88-
db := dbfake.New()
88+
db := dbmem.New()
8989
exp := dbgen.ProvisionerJob(t, db, nil, database.ProvisionerJob{})
9090
require.Equal(t, exp, must(db.GetProvisionerJobByID(context.Background(), exp.ID)))
9191
})
9292

9393
t.Run("Group", func(t *testing.T) {
9494
t.Parallel()
95-
db := dbfake.New()
95+
db := dbmem.New()
9696
exp := dbgen.Group(t, db, database.Group{})
9797
require.Equal(t, exp, must(db.GetGroupByID(context.Background(), exp.ID)))
9898
})
9999

100100
t.Run("GroupMember", func(t *testing.T) {
101101
t.Parallel()
102-
db := dbfake.New()
102+
db := dbmem.New()
103103
g := dbgen.Group(t, db, database.Group{})
104104
u := dbgen.User(t, db, database.User{})
105105
exp := []database.User{u}
@@ -110,14 +110,14 @@ func TestGenerator(t *testing.T) {
110110

111111
t.Run("Organization", func(t *testing.T) {
112112
t.Parallel()
113-
db := dbfake.New()
113+
db := dbmem.New()
114114
exp := dbgen.Organization(t, db, database.Organization{})
115115
require.Equal(t, exp, must(db.GetOrganizationByID(context.Background(), exp.ID)))
116116
})
117117

118118
t.Run("OrganizationMember", func(t *testing.T) {
119119
t.Parallel()
120-
db := dbfake.New()
120+
db := dbmem.New()
121121
exp := dbgen.OrganizationMember(t, db, database.OrganizationMember{})
122122
require.Equal(t, exp, must(db.GetOrganizationMemberByUserID(context.Background(), database.GetOrganizationMemberByUserIDParams{
123123
OrganizationID: exp.OrganizationID,
@@ -127,49 +127,49 @@ func TestGenerator(t *testing.T) {
127127

128128
t.Run("Workspace", func(t *testing.T) {
129129
t.Parallel()
130-
db := dbfake.New()
130+
db := dbmem.New()
131131
exp := dbgen.Workspace(t, db, database.Workspace{})
132132
require.Equal(t, exp, must(db.GetWorkspaceByID(context.Background(), exp.ID)))
133133
})
134134

135135
t.Run("WorkspaceAgent", func(t *testing.T) {
136136
t.Parallel()
137-
db := dbfake.New()
137+
db := dbmem.New()
138138
exp := dbgen.WorkspaceAgent(t, db, database.WorkspaceAgent{})
139139
require.Equal(t, exp, must(db.GetWorkspaceAgentByID(context.Background(), exp.ID)))
140140
})
141141

142142
t.Run("Template", func(t *testing.T) {
143143
t.Parallel()
144-
db := dbfake.New()
144+
db := dbmem.New()
145145
exp := dbgen.Template(t, db, database.Template{})
146146
require.Equal(t, exp, must(db.GetTemplateByID(context.Background(), exp.ID)))
147147
})
148148

149149
t.Run("TemplateVersion", func(t *testing.T) {
150150
t.Parallel()
151-
db := dbfake.New()
151+
db := dbmem.New()
152152
exp := dbgen.TemplateVersion(t, db, database.TemplateVersion{})
153153
require.Equal(t, exp, must(db.GetTemplateVersionByID(context.Background(), exp.ID)))
154154
})
155155

156156
t.Run("WorkspaceBuild", func(t *testing.T) {
157157
t.Parallel()
158-
db := dbfake.New()
158+
db := dbmem.New()
159159
exp := dbgen.WorkspaceBuild(t, db, database.WorkspaceBuild{})
160160
require.Equal(t, exp, must(db.GetWorkspaceBuildByID(context.Background(), exp.ID)))
161161
})
162162

163163
t.Run("User", func(t *testing.T) {
164164
t.Parallel()
165-
db := dbfake.New()
165+
db := dbmem.New()
166166
exp := dbgen.User(t, db, database.User{})
167167
require.Equal(t, exp, must(db.GetUserByID(context.Background(), exp.ID)))
168168
})
169169

170170
t.Run("SSHKey", func(t *testing.T) {
171171
t.Parallel()
172-
db := dbfake.New()
172+
db := dbmem.New()
173173
exp := dbgen.GitSSHKey(t, db, database.GitSSHKey{})
174174
require.Equal(t, exp, must(db.GetGitSSHKey(context.Background(), exp.UserID)))
175175
})

coderd/database/dbfake/dbfake.go renamed to coderd/database/dbmem/dbmem.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package dbfake
1+
package dbmem
22

33
import (
44
"context"
@@ -705,7 +705,7 @@ func provisonerJobStatus(j database.ProvisionerJob) database.ProvisionerJobStatu
705705
return database.ProvisionerJobStatusRunning
706706
}
707707

708-
// isNull is only used in dbfake, so reflect is ok. Use this to make the logic
708+
// isNull is only used in dbmem, so reflect is ok. Use this to make the logic
709709
// look more similar to the postgres.
710710
func isNull(v interface{}) bool {
711711
return !isNotNull(v)
@@ -4868,7 +4868,7 @@ func (q *FakeQuerier) InsertUser(_ context.Context, arg database.InsertUserParam
48684868
return database.User{}, err
48694869
}
48704870

4871-
// There is a common bug when using dbfake that 2 inserted users have the
4871+
// There is a common bug when using dbmem that 2 inserted users have the
48724872
// same created_at time. This causes user order to not be deterministic,
48734873
// which breaks some unit tests.
48744874
// To fix this, we make sure that the created_at time is always greater

coderd/database/dbfake/dbfake_test.go renamed to coderd/database/dbmem/dbmem_test.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package dbfake_test
1+
package dbmem_test
22

33
import (
44
"context"
@@ -11,16 +11,16 @@ import (
1111
"github.com/stretchr/testify/require"
1212

1313
"github.com/coder/coder/v2/coderd/database"
14-
"github.com/coder/coder/v2/coderd/database/dbfake"
1514
"github.com/coder/coder/v2/coderd/database/dbgen"
15+
"github.com/coder/coder/v2/coderd/database/dbmem"
1616
"github.com/coder/coder/v2/coderd/database/dbtime"
1717
)
1818

1919
// test that transactions don't deadlock, and that we don't see intermediate state.
2020
func TestInTx(t *testing.T) {
2121
t.Parallel()
2222

23-
uut := dbfake.New()
23+
uut := dbmem.New()
2424

2525
inTx := make(chan any)
2626
queriesDone := make(chan any)
@@ -67,7 +67,7 @@ func TestInTx(t *testing.T) {
6767
func TestUserOrder(t *testing.T) {
6868
t.Parallel()
6969

70-
db := dbfake.New()
70+
db := dbmem.New()
7171
now := dbtime.Now()
7272

7373
usernames := []string{"b-user", "d-user", "a-user", "c-user", "e-user"}
@@ -88,7 +88,7 @@ func TestUserOrder(t *testing.T) {
8888
func TestProxyByHostname(t *testing.T) {
8989
t.Parallel()
9090

91-
db := dbfake.New()
91+
db := dbmem.New()
9292

9393
// Insert a bunch of different proxies.
9494
proxies := []struct {

coderd/database/dbpurge/dbpurge_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import (
99
"github.com/stretchr/testify/require"
1010

1111
"cdr.dev/slog/sloggers/slogtest"
12-
"github.com/coder/coder/v2/coderd/database/dbfake"
12+
"github.com/coder/coder/v2/coderd/database/dbmem"
1313
"github.com/coder/coder/v2/coderd/database/dbpurge"
1414
)
1515

@@ -20,7 +20,7 @@ func TestMain(m *testing.M) {
2020
// Ensures no goroutines leak.
2121
func TestPurge(t *testing.T) {
2222
t.Parallel()
23-
purger := dbpurge.New(context.Background(), slogtest.Make(t, nil), dbfake.New())
23+
purger := dbpurge.New(context.Background(), slogtest.Make(t, nil), dbmem.New())
2424
err := purger.Close()
2525
require.NoError(t, err)
2626
}

coderd/database/dbtestutil/db.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import (
1818
"golang.org/x/xerrors"
1919

2020
"github.com/coder/coder/v2/coderd/database"
21-
"github.com/coder/coder/v2/coderd/database/dbfake"
21+
"github.com/coder/coder/v2/coderd/database/dbmem"
2222
"github.com/coder/coder/v2/coderd/database/postgres"
2323
"github.com/coder/coder/v2/coderd/database/pubsub"
2424
)
@@ -79,7 +79,7 @@ func NewDB(t testing.TB, opts ...Option) (database.Store, pubsub.Pubsub) {
7979
opt(&o)
8080
}
8181

82-
db := dbfake.New()
82+
db := dbmem.New()
8383
ps := pubsub.NewInMemory()
8484
if WillUsePostgres() {
8585
connectionURL := os.Getenv("CODER_PG_CONNECTION_URL")

0 commit comments

Comments
 (0)