Skip to content

Commit c59d370

Browse files
committed
keep moving tests
1 parent 66cd785 commit c59d370

File tree

5 files changed

+293
-194
lines changed

5 files changed

+293
-194
lines changed

coderd/audit_test.go

Lines changed: 0 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -95,92 +95,6 @@ func TestAuditLogs(t *testing.T) {
9595
require.Equal(t, foundUser, *alogs.AuditLogs[0].User)
9696
})
9797

98-
t.Run("IncludeOrganization", func(t *testing.T) {
99-
t.Parallel()
100-
101-
ctx := context.Background()
102-
client := coderdtest.New(t, nil)
103-
user := coderdtest.CreateFirstUser(t, client)
104-
105-
o, err := client.CreateOrganization(ctx, codersdk.CreateOrganizationRequest{
106-
Name: "new-org",
107-
DisplayName: "New organization",
108-
Description: "A new organization to love and cherish until the test is over.",
109-
Icon: "/emojis/1f48f-1f3ff.png",
110-
})
111-
require.NoError(t, err)
112-
113-
err = client.CreateTestAuditLog(ctx, codersdk.CreateTestAuditLogRequest{
114-
OrganizationID: o.ID,
115-
ResourceID: user.UserID,
116-
})
117-
require.NoError(t, err)
118-
119-
alogs, err := client.AuditLogs(ctx, codersdk.AuditLogsRequest{
120-
Pagination: codersdk.Pagination{
121-
Limit: 1,
122-
},
123-
})
124-
require.NoError(t, err)
125-
require.Equal(t, int64(1), alogs.Count)
126-
require.Len(t, alogs.AuditLogs, 1)
127-
128-
// Make sure the organization is fully populated.
129-
require.Equal(t, &codersdk.MinimalOrganization{
130-
ID: o.ID,
131-
Name: o.Name,
132-
DisplayName: o.DisplayName,
133-
Icon: o.Icon,
134-
}, alogs.AuditLogs[0].Organization)
135-
136-
// OrganizationID is deprecated, but make sure it is set.
137-
require.Equal(t, o.ID, alogs.AuditLogs[0].OrganizationID)
138-
139-
// Delete the org and try again, should be mostly empty.
140-
err = client.DeleteOrganization(ctx, o.ID.String())
141-
require.NoError(t, err)
142-
143-
alogs, err = client.AuditLogs(ctx, codersdk.AuditLogsRequest{
144-
Pagination: codersdk.Pagination{
145-
Limit: 1,
146-
},
147-
})
148-
require.NoError(t, err)
149-
require.Equal(t, int64(1), alogs.Count)
150-
require.Len(t, alogs.AuditLogs, 1)
151-
152-
require.Equal(t, &codersdk.MinimalOrganization{
153-
ID: o.ID,
154-
}, alogs.AuditLogs[0].Organization)
155-
156-
// OrganizationID is deprecated, but make sure it is set.
157-
require.Equal(t, o.ID, alogs.AuditLogs[0].OrganizationID)
158-
159-
// Some audit entries do not have an organization at all, in which case the
160-
// response omits the organization.
161-
err = client.CreateTestAuditLog(ctx, codersdk.CreateTestAuditLogRequest{
162-
ResourceType: codersdk.ResourceTypeAPIKey,
163-
ResourceID: user.UserID,
164-
})
165-
require.NoError(t, err)
166-
167-
alogs, err = client.AuditLogs(ctx, codersdk.AuditLogsRequest{
168-
SearchQuery: "resource_type:api_key",
169-
Pagination: codersdk.Pagination{
170-
Limit: 1,
171-
},
172-
})
173-
require.NoError(t, err)
174-
require.Equal(t, int64(1), alogs.Count)
175-
require.Len(t, alogs.AuditLogs, 1)
176-
177-
// The other will have no organization.
178-
require.Equal(t, (*codersdk.MinimalOrganization)(nil), alogs.AuditLogs[0].Organization)
179-
180-
// OrganizationID is deprecated, but make sure it is empty.
181-
require.Equal(t, uuid.Nil, alogs.AuditLogs[0].OrganizationID)
182-
})
183-
18498
t.Run("WorkspaceBuildAuditLink", func(t *testing.T) {
18599
t.Parallel()
186100

coderd/organizations_test.go

Lines changed: 0 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,6 @@ func TestOrganizationByUserAndName(t *testing.T) {
2525
require.Equal(t, http.StatusNotFound, apiErr.StatusCode())
2626
})
2727

28-
t.Run("NoMember", func(t *testing.T) {
29-
t.Parallel()
30-
client := coderdtest.New(t, nil)
31-
first := coderdtest.CreateFirstUser(t, client)
32-
other, _ := coderdtest.CreateAnotherUser(t, client, first.OrganizationID)
33-
ctx := testutil.Context(t, testutil.WaitLong)
34-
35-
org, err := client.CreateOrganization(ctx, codersdk.CreateOrganizationRequest{
36-
Name: "another",
37-
DisplayName: "Another",
38-
})
39-
require.NoError(t, err)
40-
_, err = other.OrganizationByUserAndName(ctx, codersdk.Me, org.Name)
41-
var apiErr *codersdk.Error
42-
require.ErrorAs(t, err, &apiErr)
43-
require.Equal(t, http.StatusNotFound, apiErr.StatusCode())
44-
})
45-
4628
t.Run("Valid", func(t *testing.T) {
4729
t.Parallel()
4830
client := coderdtest.New(t, nil)
@@ -56,70 +38,3 @@ func TestOrganizationByUserAndName(t *testing.T) {
5638
})
5739
}
5840

59-
func TestPostOrganizationsByUser(t *testing.T) {
60-
t.Parallel()
61-
t.Run("Conflict", func(t *testing.T) {
62-
t.Parallel()
63-
client := coderdtest.New(t, nil)
64-
user := coderdtest.CreateFirstUser(t, client)
65-
ctx := testutil.Context(t, testutil.WaitLong)
66-
67-
org, err := client.Organization(ctx, user.OrganizationID)
68-
require.NoError(t, err)
69-
_, err = client.CreateOrganization(ctx, codersdk.CreateOrganizationRequest{
70-
Name: org.Name,
71-
DisplayName: org.DisplayName,
72-
})
73-
var apiErr *codersdk.Error
74-
require.ErrorAs(t, err, &apiErr)
75-
require.Equal(t, http.StatusConflict, apiErr.StatusCode())
76-
})
77-
78-
t.Run("InvalidName", func(t *testing.T) {
79-
t.Parallel()
80-
client := coderdtest.New(t, nil)
81-
_ = coderdtest.CreateFirstUser(t, client)
82-
ctx := testutil.Context(t, testutil.WaitLong)
83-
84-
_, err := client.CreateOrganization(ctx, codersdk.CreateOrganizationRequest{
85-
Name: "A name which is definitely not url safe",
86-
DisplayName: "New",
87-
})
88-
var apiErr *codersdk.Error
89-
require.ErrorAs(t, err, &apiErr)
90-
require.Equal(t, http.StatusBadRequest, apiErr.StatusCode())
91-
})
92-
93-
t.Run("Create", func(t *testing.T) {
94-
t.Parallel()
95-
client := coderdtest.New(t, nil)
96-
_ = coderdtest.CreateFirstUser(t, client)
97-
ctx := testutil.Context(t, testutil.WaitLong)
98-
99-
o, err := client.CreateOrganization(ctx, codersdk.CreateOrganizationRequest{
100-
Name: "new-org",
101-
DisplayName: "New organization",
102-
Description: "A new organization to love and cherish forever.",
103-
Icon: "/emojis/1f48f-1f3ff.png",
104-
})
105-
require.NoError(t, err)
106-
require.Equal(t, "new-org", o.Name)
107-
require.Equal(t, "New organization", o.DisplayName)
108-
require.Equal(t, "A new organization to love and cherish forever.", o.Description)
109-
require.Equal(t, "/emojis/1f48f-1f3ff.png", o.Icon)
110-
})
111-
112-
t.Run("CreateWithoutExplicitDisplayName", func(t *testing.T) {
113-
t.Parallel()
114-
client := coderdtest.New(t, nil)
115-
_ = coderdtest.CreateFirstUser(t, client)
116-
ctx := testutil.Context(t, testutil.WaitLong)
117-
118-
o, err := client.CreateOrganization(ctx, codersdk.CreateOrganizationRequest{
119-
Name: "new-org",
120-
})
121-
require.NoError(t, err)
122-
require.Equal(t, "new-org", o.Name)
123-
require.Equal(t, "new-org", o.DisplayName) // should match the given `Name`
124-
})
125-
}

enterprise/coderd/audit_test.go

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
package coderd_test
2+
3+
import (
4+
"context"
5+
"testing"
6+
7+
"github.com/google/uuid"
8+
"github.com/stretchr/testify/require"
9+
10+
"github.com/coder/coder/v2/coderd/coderdtest"
11+
"github.com/coder/coder/v2/codersdk"
12+
"github.com/coder/coder/v2/enterprise/coderd/coderdenttest"
13+
"github.com/coder/coder/v2/enterprise/coderd/license"
14+
)
15+
16+
func TestEnterpriseAuditLogs(t *testing.T) {
17+
t.Parallel()
18+
19+
t.Run("IncludeOrganization", func(t *testing.T) {
20+
t.Parallel()
21+
22+
ctx := context.Background()
23+
dv := coderdtest.DeploymentValues(t)
24+
dv.Experiments = []string{string(codersdk.ExperimentMultiOrganization)}
25+
client, user := coderdenttest.New(t, &coderdenttest.Options{
26+
Options: &coderdtest.Options{
27+
DeploymentValues: dv,
28+
},
29+
LicenseOptions: &coderdenttest.LicenseOptions{
30+
Features: license.Features{
31+
codersdk.FeatureMultipleOrganizations: 1,
32+
},
33+
},
34+
})
35+
36+
o, err := client.CreateOrganization(ctx, codersdk.CreateOrganizationRequest{
37+
Name: "new-org",
38+
DisplayName: "New organization",
39+
Description: "A new organization to love and cherish until the test is over.",
40+
Icon: "/emojis/1f48f-1f3ff.png",
41+
})
42+
require.NoError(t, err)
43+
44+
err = client.CreateTestAuditLog(ctx, codersdk.CreateTestAuditLogRequest{
45+
OrganizationID: o.ID,
46+
ResourceID: user.UserID,
47+
})
48+
require.NoError(t, err)
49+
50+
alogs, err := client.AuditLogs(ctx, codersdk.AuditLogsRequest{
51+
Pagination: codersdk.Pagination{
52+
Limit: 1,
53+
},
54+
})
55+
require.NoError(t, err)
56+
require.Equal(t, int64(1), alogs.Count)
57+
require.Len(t, alogs.AuditLogs, 1)
58+
59+
// Make sure the organization is fully populated.
60+
require.Equal(t, &codersdk.MinimalOrganization{
61+
ID: o.ID,
62+
Name: o.Name,
63+
DisplayName: o.DisplayName,
64+
Icon: o.Icon,
65+
}, alogs.AuditLogs[0].Organization)
66+
67+
// OrganizationID is deprecated, but make sure it is set.
68+
require.Equal(t, o.ID, alogs.AuditLogs[0].OrganizationID)
69+
70+
// Delete the org and try again, should be mostly empty.
71+
err = client.DeleteOrganization(ctx, o.ID.String())
72+
require.NoError(t, err)
73+
74+
alogs, err = client.AuditLogs(ctx, codersdk.AuditLogsRequest{
75+
Pagination: codersdk.Pagination{
76+
Limit: 1,
77+
},
78+
})
79+
require.NoError(t, err)
80+
require.Equal(t, int64(1), alogs.Count)
81+
require.Len(t, alogs.AuditLogs, 1)
82+
83+
require.Equal(t, &codersdk.MinimalOrganization{
84+
ID: o.ID,
85+
}, alogs.AuditLogs[0].Organization)
86+
87+
// OrganizationID is deprecated, but make sure it is set.
88+
require.Equal(t, o.ID, alogs.AuditLogs[0].OrganizationID)
89+
90+
// Some audit entries do not have an organization at all, in which case the
91+
// response omits the organization.
92+
err = client.CreateTestAuditLog(ctx, codersdk.CreateTestAuditLogRequest{
93+
ResourceType: codersdk.ResourceTypeAPIKey,
94+
ResourceID: user.UserID,
95+
})
96+
require.NoError(t, err)
97+
98+
alogs, err = client.AuditLogs(ctx, codersdk.AuditLogsRequest{
99+
SearchQuery: "resource_type:api_key",
100+
Pagination: codersdk.Pagination{
101+
Limit: 1,
102+
},
103+
})
104+
require.NoError(t, err)
105+
require.Equal(t, int64(1), alogs.Count)
106+
require.Len(t, alogs.AuditLogs, 1)
107+
108+
// The other will have no organization.
109+
require.Equal(t, (*codersdk.MinimalOrganization)(nil), alogs.AuditLogs[0].Organization)
110+
111+
// OrganizationID is deprecated, but make sure it is empty.
112+
require.Equal(t, uuid.Nil, alogs.AuditLogs[0].OrganizationID)
113+
})
114+
}

0 commit comments

Comments
 (0)