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

Function TestListMembers

coderd/members_test.go:72–135  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

70}
71
72func TestListMembers(t *testing.T) {
73 t.Parallel()
74
75 client, db := coderdtest.NewWithDatabase(t, nil)
76 owner := coderdtest.CreateFirstUser(t, client)
77 _, orgMember := coderdtest.CreateAnotherUser(t, client, owner.OrganizationID)
78 _, orgAdmin := coderdtest.CreateAnotherUser(t, client, owner.OrganizationID)
79 anotherOrg := dbgen.Organization(t, db, database.Organization{})
80 anotherUser := dbgen.User(t, db, database.User{
81 GithubComUserID: sql.NullInt64{Valid: true, Int64: 12345},
82 })
83 _ = dbgen.OrganizationMember(t, db, database.OrganizationMember{
84 OrganizationID: anotherOrg.ID,
85 UserID: anotherUser.ID,
86 })
87
88 t.Run("OK", func(t *testing.T) {
89 t.Parallel()
90
91 ctx := testutil.Context(t, testutil.WaitShort)
92 members, err := client.OrganizationMembers(ctx, owner.OrganizationID)
93 require.NoError(t, err)
94 require.Len(t, members, 3)
95 require.ElementsMatch(t,
96 []uuid.UUID{owner.UserID, orgMember.ID, orgAdmin.ID},
97 slice.List(members, onlyIDs))
98 })
99
100 t.Run("UserID", func(t *testing.T) {
101 t.Parallel()
102
103 ctx := testutil.Context(t, testutil.WaitShort)
104 members, err := client.OrganizationMembers(ctx, owner.OrganizationID, codersdk.OrganizationMembersQueryOptionUserID(orgMember.ID))
105 require.NoError(t, err)
106 require.Len(t, members, 1)
107 require.ElementsMatch(t,
108 []uuid.UUID{orgMember.ID},
109 slice.List(members, onlyIDs))
110 })
111
112 t.Run("IncludeSystem", func(t *testing.T) {
113 t.Parallel()
114
115 ctx := testutil.Context(t, testutil.WaitShort)
116 members, err := client.OrganizationMembers(ctx, owner.OrganizationID, codersdk.OrganizationMembersQueryOptionIncludeSystem())
117 require.NoError(t, err)
118 require.Len(t, members, 4)
119 require.ElementsMatch(t,
120 []uuid.UUID{owner.UserID, orgMember.ID, orgAdmin.ID, database.PrebuildsSystemUserID},
121 slice.List(members, onlyIDs))
122 })
123
124 t.Run("GithubUserID", func(t *testing.T) {
125 t.Parallel()
126
127 ctx := testutil.Context(t, testutil.WaitShort)
128 members, err := client.OrganizationMembers(ctx, anotherOrg.ID, codersdk.OrganizationMembersQueryOptionGithubUserID(anotherUser.GithubComUserID.Int64))
129 require.NoError(t, err)

Callers

nothing calls this directly

Calls 14

NewWithDatabaseFunction · 0.92
CreateFirstUserFunction · 0.92
CreateAnotherUserFunction · 0.92
OrganizationFunction · 0.92
UserFunction · 0.92
OrganizationMemberFunction · 0.92
ContextFunction · 0.92
ListFunction · 0.92
RunMethod · 0.65

Tested by

no test coverage detected