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

Function TestFirstUser

coderd/users_test.go:39–118  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

37)
38
39func TestFirstUser(t *testing.T) {
40 t.Parallel()
41 t.Run("BadRequest", func(t *testing.T) {
42 t.Parallel()
43 client := coderdtest.New(t, nil)
44
45 ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
46 defer cancel()
47
48 has, err := client.HasFirstUser(context.Background())
49 require.NoError(t, err)
50 require.False(t, has)
51
52 _, err = client.CreateFirstUser(ctx, codersdk.CreateFirstUserRequest{})
53 require.Error(t, err)
54 })
55
56 t.Run("AlreadyExists", func(t *testing.T) {
57 t.Parallel()
58 client := coderdtest.New(t, nil)
59 _ = coderdtest.CreateFirstUser(t, client)
60
61 ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
62 defer cancel()
63
64 _, err := client.CreateFirstUser(ctx, codersdk.CreateFirstUserRequest{
65 Email: "some@email.com",
66 Username: "exampleuser",
67 Password: "SomeSecurePassword!",
68 })
69 var apiErr *codersdk.Error
70 require.ErrorAs(t, err, &apiErr)
71 require.Equal(t, http.StatusConflict, apiErr.StatusCode())
72 })
73
74 t.Run("Create", func(t *testing.T) {
75 t.Parallel()
76 ctx := testutil.Context(t, testutil.WaitShort)
77 client := coderdtest.New(t, nil)
78 _ = coderdtest.CreateFirstUser(t, client)
79 u, err := client.User(ctx, codersdk.Me)
80 require.NoError(t, err)
81 assert.Equal(t, coderdtest.FirstUserParams.Name, u.Name)
82 assert.Equal(t, coderdtest.FirstUserParams.Email, u.Email)
83 assert.Equal(t, coderdtest.FirstUserParams.Username, u.Username)
84 })
85
86 t.Run("Trial", func(t *testing.T) {
87 t.Parallel()
88 trialGenerated := make(chan struct{})
89 entitlementsRefreshed := make(chan struct{})
90
91 client := coderdtest.New(t, &coderdtest.Options{
92 TrialGenerator: func(context.Context, codersdk.LicensorTrialRequest) error {
93 close(trialGenerated)
94 return nil
95 },
96 RefreshEntitlements: func(context.Context) error {

Callers

nothing calls this directly

Calls 11

StatusCodeMethod · 0.95
NewFunction · 0.92
CreateFirstUserFunction · 0.92
ContextFunction · 0.92
TryReceiveFunction · 0.92
HasFirstUserMethod · 0.80
CreateFirstUserMethod · 0.80
RunMethod · 0.65
UserMethod · 0.65
ErrorMethod · 0.45
EqualMethod · 0.45

Tested by

no test coverage detected