MCPcopy Index your code
hub / github.com/coder/coder / TestUserSecrets

Method TestUserSecrets

coderd/database/dbauthz/dbauthz_test.go:6003–6068  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

6001}
6002
6003func (s *MethodTestSuite) TestUserSecrets() {
6004 s.Run("GetUserSecretByUserIDAndName", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) {
6005 user := testutil.Fake(s.T(), faker, database.User{})
6006 secret := testutil.Fake(s.T(), faker, database.UserSecret{UserID: user.ID})
6007 arg := database.GetUserSecretByUserIDAndNameParams{UserID: user.ID, Name: secret.Name}
6008 dbm.EXPECT().GetUserSecretByUserIDAndName(gomock.Any(), arg).Return(secret, nil).AnyTimes()
6009 check.Args(arg).
6010 Asserts(rbac.ResourceUserSecret.WithOwner(user.ID.String()), policy.ActionRead).
6011 Returns(secret)
6012 }))
6013 s.Run("ListUserSecrets", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) {
6014 user := testutil.Fake(s.T(), faker, database.User{})
6015 row := testutil.Fake(s.T(), faker, database.ListUserSecretsRow{UserID: user.ID})
6016 dbm.EXPECT().ListUserSecrets(gomock.Any(), user.ID).Return([]database.ListUserSecretsRow{row}, nil).AnyTimes()
6017 check.Args(user.ID).
6018 Asserts(rbac.ResourceUserSecret.WithOwner(user.ID.String()), policy.ActionRead).
6019 Returns([]database.ListUserSecretsRow{row})
6020 }))
6021 s.Run("ListUserSecretsWithValues", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) {
6022 user := testutil.Fake(s.T(), faker, database.User{})
6023 secret := testutil.Fake(s.T(), faker, database.UserSecret{UserID: user.ID})
6024 dbm.EXPECT().ListUserSecretsWithValues(gomock.Any(), user.ID).Return([]database.UserSecret{secret}, nil).AnyTimes()
6025 check.Args(user.ID).
6026 Asserts(rbac.ResourceUserSecret, policy.ActionRead).
6027 Returns([]database.UserSecret{secret})
6028 }))
6029 s.Run("CreateUserSecret", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) {
6030 user := testutil.Fake(s.T(), faker, database.User{})
6031 arg := database.CreateUserSecretParams{UserID: user.ID}
6032 ret := testutil.Fake(s.T(), faker, database.UserSecret{UserID: user.ID})
6033 dbm.EXPECT().CreateUserSecret(gomock.Any(), arg).Return(ret, nil).AnyTimes()
6034 check.Args(arg).
6035 Asserts(rbac.ResourceUserSecret.WithOwner(user.ID.String()), policy.ActionCreate).
6036 Returns(ret)
6037 }))
6038 s.Run("UpdateUserSecretByUserIDAndName", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) {
6039 user := testutil.Fake(s.T(), faker, database.User{})
6040 updated := testutil.Fake(s.T(), faker, database.UserSecret{UserID: user.ID})
6041 arg := database.UpdateUserSecretByUserIDAndNameParams{UserID: user.ID, Name: "test"}
6042 dbm.EXPECT().UpdateUserSecretByUserIDAndName(gomock.Any(), arg).Return(updated, nil).AnyTimes()
6043 check.Args(arg).
6044 Asserts(rbac.ResourceUserSecret.WithOwner(user.ID.String()), policy.ActionUpdate).
6045 Returns(updated)
6046 }))
6047 s.Run("DeleteUserSecretByUserIDAndName", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) {
6048 user := testutil.Fake(s.T(), faker, database.User{})
6049 deleted := testutil.Fake(s.T(), faker, database.UserSecret{UserID: user.ID, Name: "test"})
6050 arg := database.DeleteUserSecretByUserIDAndNameParams{UserID: user.ID, Name: "test"}
6051 dbm.EXPECT().DeleteUserSecretByUserIDAndName(gomock.Any(), arg).Return(deleted, nil).AnyTimes()
6052 check.Args(arg).
6053 Asserts(rbac.ResourceUserSecret.WithOwner(user.ID.String()), policy.ActionDelete).
6054 Returns(deleted)
6055 }))
6056 s.Run("GetUserSecretByID", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) {
6057 user := testutil.Fake(s.T(), faker, database.User{})
6058 secret := testutil.Fake(s.T(), faker, database.UserSecret{UserID: user.ID})
6059 dbm.EXPECT().GetUserSecretByID(gomock.Any(), secret.ID).Return(secret, nil).AnyTimes()
6060 check.Args(secret.ID).

Callers

nothing calls this directly

Calls 15

MockedMethod · 0.95
FakeFunction · 0.92
ReturnsMethod · 0.80
AssertsMethod · 0.80
ArgsMethod · 0.80
WithOwnerMethod · 0.80
RunMethod · 0.65
ListUserSecretsMethod · 0.65
CreateUserSecretMethod · 0.65

Tested by

no test coverage detected