Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit1ff8f54

Browse files
blink-so[bot]hugodutka
authored andcommitted
test(dbauthz): migrate TestConnectionLogs to mocked db\n\n- Convert connection log tests to s.Mocked\n- Add gomock expectations (authorized and non-authorized paths)\n\nCo-authored-by: hugodutka <28019628+hugodutka@users.noreply.github.com>
1 parent7465e88 commit1ff8f54

File tree

1 file changed

+27
-101
lines changed

1 file changed

+27
-101
lines changed

‎coderd/database/dbauthz/dbauthz_test.go‎

Lines changed: 27 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -315,107 +315,33 @@ func (s *MethodTestSuite) TestAuditLogs() {
315315
}
316316

317317
func (s*MethodTestSuite)TestConnectionLogs() {
318-
createWorkspace:=func(t*testing.T,db database.Store) database.WorkspaceTable {
319-
u:=dbgen.User(s.T(),db, database.User{})
320-
o:=dbgen.Organization(s.T(),db, database.Organization{})
321-
tpl:=dbgen.Template(s.T(),db, database.Template{
322-
OrganizationID:o.ID,
323-
CreatedBy:u.ID,
324-
})
325-
returndbgen.Workspace(s.T(),db, database.WorkspaceTable{
326-
ID:uuid.New(),
327-
OwnerID:u.ID,
328-
OrganizationID:o.ID,
329-
AutomaticUpdates:database.AutomaticUpdatesNever,
330-
TemplateID:tpl.ID,
331-
})
332-
}
333-
s.Run("UpsertConnectionLog",s.Subtest(func(db database.Store,check*expects) {
334-
ws:=createWorkspace(s.T(),db)
335-
check.Args(database.UpsertConnectionLogParams{
336-
Ip:defaultIPAddress(),
337-
Type:database.ConnectionTypeSsh,
338-
WorkspaceID:ws.ID,
339-
OrganizationID:ws.OrganizationID,
340-
ConnectionStatus:database.ConnectionStatusConnected,
341-
WorkspaceOwnerID:ws.OwnerID,
342-
}).Asserts(rbac.ResourceConnectionLog,policy.ActionUpdate)
343-
}))
344-
s.Run("GetConnectionLogsOffset",s.Subtest(func(db database.Store,check*expects) {
345-
ws:=createWorkspace(s.T(),db)
346-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
347-
Ip:defaultIPAddress(),
348-
Type:database.ConnectionTypeSsh,
349-
WorkspaceID:ws.ID,
350-
OrganizationID:ws.OrganizationID,
351-
WorkspaceOwnerID:ws.OwnerID,
352-
})
353-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
354-
Ip:defaultIPAddress(),
355-
Type:database.ConnectionTypeSsh,
356-
WorkspaceID:ws.ID,
357-
OrganizationID:ws.OrganizationID,
358-
WorkspaceOwnerID:ws.OwnerID,
359-
})
360-
check.Args(database.GetConnectionLogsOffsetParams{
361-
LimitOpt:10,
362-
}).Asserts(rbac.ResourceConnectionLog,policy.ActionRead).WithNotAuthorized("nil")
363-
}))
364-
s.Run("GetAuthorizedConnectionLogsOffset",s.Subtest(func(db database.Store,check*expects) {
365-
ws:=createWorkspace(s.T(),db)
366-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
367-
Ip:defaultIPAddress(),
368-
Type:database.ConnectionTypeSsh,
369-
WorkspaceID:ws.ID,
370-
OrganizationID:ws.OrganizationID,
371-
WorkspaceOwnerID:ws.OwnerID,
372-
})
373-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
374-
Ip:defaultIPAddress(),
375-
Type:database.ConnectionTypeSsh,
376-
WorkspaceID:ws.ID,
377-
OrganizationID:ws.OrganizationID,
378-
WorkspaceOwnerID:ws.OwnerID,
379-
})
380-
check.Args(database.GetConnectionLogsOffsetParams{
381-
LimitOpt:10,
382-
},emptyPreparedAuthorized{}).Asserts(rbac.ResourceConnectionLog,policy.ActionRead)
383-
}))
384-
s.Run("CountConnectionLogs",s.Subtest(func(db database.Store,check*expects) {
385-
ws:=createWorkspace(s.T(),db)
386-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
387-
Type:database.ConnectionTypeSsh,
388-
WorkspaceID:ws.ID,
389-
OrganizationID:ws.OrganizationID,
390-
WorkspaceOwnerID:ws.OwnerID,
391-
})
392-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
393-
Type:database.ConnectionTypeSsh,
394-
WorkspaceID:ws.ID,
395-
OrganizationID:ws.OrganizationID,
396-
WorkspaceOwnerID:ws.OwnerID,
397-
})
398-
check.Args(database.CountConnectionLogsParams{}).Asserts(
399-
rbac.ResourceConnectionLog,policy.ActionRead,
400-
).WithNotAuthorized("nil")
401-
}))
402-
s.Run("CountAuthorizedConnectionLogs",s.Subtest(func(db database.Store,check*expects) {
403-
ws:=createWorkspace(s.T(),db)
404-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
405-
Type:database.ConnectionTypeSsh,
406-
WorkspaceID:ws.ID,
407-
OrganizationID:ws.OrganizationID,
408-
WorkspaceOwnerID:ws.OwnerID,
409-
})
410-
_=dbgen.ConnectionLog(s.T(),db, database.UpsertConnectionLogParams{
411-
Type:database.ConnectionTypeSsh,
412-
WorkspaceID:ws.ID,
413-
OrganizationID:ws.OrganizationID,
414-
WorkspaceOwnerID:ws.OwnerID,
415-
})
416-
check.Args(database.CountConnectionLogsParams{},emptyPreparedAuthorized{}).Asserts(
417-
rbac.ResourceConnectionLog,policy.ActionRead,
418-
)
318+
s.Run("UpsertConnectionLog",s.Mocked(func(dbm*dbmock.MockStore,faker*gofakeit.Faker,check*expects) {
319+
ws:=testutil.Fake(s.T(),faker, database.WorkspaceTable{})
320+
arg:= database.UpsertConnectionLogParams{Ip:defaultIPAddress(),Type:database.ConnectionTypeSsh,WorkspaceID:ws.ID,OrganizationID:ws.OrganizationID,ConnectionStatus:database.ConnectionStatusConnected,WorkspaceOwnerID:ws.OwnerID}
321+
dbm.EXPECT().UpsertConnectionLog(gomock.Any(),arg).Return(database.ConnectionLog{},nil).AnyTimes()
322+
check.Args(arg).Asserts(rbac.ResourceConnectionLog,policy.ActionUpdate)
323+
}))
324+
s.Run("GetConnectionLogsOffset",s.Mocked(func(dbm*dbmock.MockStore,_*gofakeit.Faker,check*expects) {
325+
arg:= database.GetConnectionLogsOffsetParams{LimitOpt:10}
326+
dbm.EXPECT().GetConnectionLogsOffset(gomock.Any(),arg).Return([]database.GetConnectionLogsOffsetRow{},nil).AnyTimes()
327+
dbm.EXPECT().GetAuthorizedConnectionLogsOffset(gomock.Any(),arg,gomock.Any()).Return([]database.GetConnectionLogsOffsetRow{},nil).AnyTimes()
328+
check.Args(arg).Asserts(rbac.ResourceConnectionLog,policy.ActionRead).WithNotAuthorized("nil")
329+
}))
330+
s.Run("GetAuthorizedConnectionLogsOffset",s.Mocked(func(dbm*dbmock.MockStore,_*gofakeit.Faker,check*expects) {
331+
arg:= database.GetConnectionLogsOffsetParams{LimitOpt:10}
332+
dbm.EXPECT().GetAuthorizedConnectionLogsOffset(gomock.Any(),arg,gomock.Any()).Return([]database.GetConnectionLogsOffsetRow{},nil).AnyTimes()
333+
dbm.EXPECT().GetConnectionLogsOffset(gomock.Any(),arg).Return([]database.GetConnectionLogsOffsetRow{},nil).AnyTimes()
334+
check.Args(arg,emptyPreparedAuthorized{}).Asserts(rbac.ResourceConnectionLog,policy.ActionRead)
335+
}))
336+
s.Run("CountConnectionLogs",s.Mocked(func(dbm*dbmock.MockStore,_*gofakeit.Faker,check*expects) {
337+
dbm.EXPECT().CountConnectionLogs(gomock.Any(), database.CountConnectionLogsParams{}).Return(int64(0),nil).AnyTimes()
338+
dbm.EXPECT().CountAuthorizedConnectionLogs(gomock.Any(), database.CountConnectionLogsParams{},gomock.Any()).Return(int64(0),nil).AnyTimes()
339+
check.Args(database.CountConnectionLogsParams{}).Asserts(rbac.ResourceConnectionLog,policy.ActionRead).WithNotAuthorized("nil")
340+
}))
341+
s.Run("CountAuthorizedConnectionLogs",s.Mocked(func(dbm*dbmock.MockStore,_*gofakeit.Faker,check*expects) {
342+
dbm.EXPECT().CountAuthorizedConnectionLogs(gomock.Any(), database.CountConnectionLogsParams{},gomock.Any()).Return(int64(0),nil).AnyTimes()
343+
dbm.EXPECT().CountConnectionLogs(gomock.Any(), database.CountConnectionLogsParams{}).Return(int64(0),nil).AnyTimes()
344+
check.Args(database.CountConnectionLogsParams{},emptyPreparedAuthorized{}).Asserts(rbac.ResourceConnectionLog,policy.ActionRead)
419345
}))
420346
}
421347

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp