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

Function User

coderd/database/dbgen/dbgen.go:940–987  ·  view source on GitHub ↗
(t testing.TB, db database.Store, orig database.User)

Source from the content-addressed store, hash-verified

938}
939
940func User(t testing.TB, db database.Store, orig database.User) database.User {
941 loginType := takeFirst(orig.LoginType, database.LoginTypePassword)
942 email := takeFirst(orig.Email, testutil.GetRandomName(t))
943 // A DB constraint requires login_type = 'none' and email = '' for service
944 // accounts.
945 if orig.IsServiceAccount {
946 loginType = database.LoginTypeNone
947 email = ""
948 }
949
950 user, err := db.InsertUser(genCtx, database.InsertUserParams{
951 ID: takeFirst(orig.ID, uuid.New()),
952 Email: email,
953 Username: takeFirst(orig.Username, testutil.GetRandomName(t)),
954 Name: takeFirst(orig.Name, testutil.GetRandomName(t)),
955 HashedPassword: takeFirstSlice(orig.HashedPassword, []byte(must(cryptorand.String(32)))),
956 CreatedAt: takeFirst(orig.CreatedAt, dbtime.Now()),
957 UpdatedAt: takeFirst(orig.UpdatedAt, dbtime.Now()),
958 RBACRoles: takeFirstSlice(orig.RBACRoles, []string{}),
959 LoginType: loginType,
960 Status: string(takeFirst(orig.Status, database.UserStatusDormant)),
961 IsServiceAccount: orig.IsServiceAccount,
962 })
963 require.NoError(t, err, "insert user")
964
965 user, err = db.UpdateUserStatus(genCtx, database.UpdateUserStatusParams{
966 ID: user.ID,
967 Status: takeFirst(orig.Status, database.UserStatusActive),
968 UpdatedAt: dbtime.Now(),
969 UserIsSeen: false,
970 })
971 require.NoError(t, err, "insert user")
972
973 if !orig.LastSeenAt.IsZero() {
974 user, err = db.UpdateUserLastSeenAt(genCtx, database.UpdateUserLastSeenAtParams{
975 ID: user.ID,
976 LastSeenAt: orig.LastSeenAt,
977 UpdatedAt: user.UpdatedAt,
978 })
979 require.NoError(t, err, "user last seen")
980 }
981
982 if orig.Deleted {
983 err = db.UpdateUserDeletedByID(genCtx, user.ID)
984 require.NoError(t, err, "set user as deleted")
985 }
986 return user
987}
988
989func GitSSHKey(t testing.TB, db database.Store, orig database.GitSSHKey) database.GitSSHKey {
990 key, err := db.InsertGitSSHKey(genCtx, database.InsertGitSSHKeyParams{

Callers 15

TestUserOAuth2GithubFunction · 0.92
TestUserOIDCFunction · 0.92
TestListMembersFunction · 0.92
TestPostLoginFunction · 0.92
TestPaginatedUsersFunction · 0.92
TestOIDCMCPTokenSourceFunction · 0.92
TestAPIKeyFunction · 0.92
TestTaskParamFunction · 0.92
TestOrganizationParamFunction · 0.92

Calls 12

GetRandomNameFunction · 0.92
StringFunction · 0.92
NowFunction · 0.92
takeFirstSliceFunction · 0.85
takeFirstFunction · 0.70
mustFunction · 0.70
InsertUserMethod · 0.65
NewMethod · 0.65
UpdateUserStatusMethod · 0.65
UpdateUserLastSeenAtMethod · 0.65
UpdateUserDeletedByIDMethod · 0.65
IsZeroMethod · 0.45

Tested by 15

TestUserOAuth2GithubFunction · 0.74
TestUserOIDCFunction · 0.74
TestListMembersFunction · 0.74
TestPostLoginFunction · 0.74
TestPaginatedUsersFunction · 0.74
TestOIDCMCPTokenSourceFunction · 0.74
TestAPIKeyFunction · 0.74
TestTaskParamFunction · 0.74
TestOrganizationParamFunction · 0.74