@@ -46,12 +46,15 @@ func TestAuditLogsFilter(t *testing.T) {
46
46
47
47
var (
48
48
ctx = context .Background ()
49
- client = coderdtest .New (t , nil )
49
+ client = coderdtest .New (t , & coderdtest. Options { IncludeProvisionerDaemon : true } )
50
50
user = coderdtest .CreateFirstUser (t , client )
51
51
version = coderdtest .CreateTemplateVersion (t , client , user .OrganizationID , nil )
52
52
template = coderdtest .CreateTemplate (t , client , user .OrganizationID , version .ID )
53
53
)
54
54
55
+ coderdtest .AwaitTemplateVersionJob (t , client , version .ID )
56
+ workspace := coderdtest .CreateWorkspace (t , client , user .OrganizationID , template .ID )
57
+
55
58
// Create two logs with "Create"
56
59
err := client .CreateTestAuditLog (ctx , codersdk.CreateTestAuditLogRequest {
57
60
Action : codersdk .AuditActionCreate ,
@@ -77,6 +80,24 @@ func TestAuditLogsFilter(t *testing.T) {
77
80
})
78
81
require .NoError (t , err )
79
82
83
+ // Create one log with "Start"
84
+ err = client .CreateTestAuditLog (ctx , codersdk.CreateTestAuditLogRequest {
85
+ Action : codersdk .AuditActionStart ,
86
+ ResourceType : codersdk .ResourceTypeWorkspaceBuild ,
87
+ ResourceID : workspace .LatestBuild .ID ,
88
+ Time : time .Date (2022 , 8 , 15 , 14 , 30 , 45 , 100 , time .UTC ), // 2022-8-15 14:30:45
89
+ })
90
+ require .NoError (t , err )
91
+
92
+ // Create one log with "Stop"
93
+ err = client .CreateTestAuditLog (ctx , codersdk.CreateTestAuditLogRequest {
94
+ Action : codersdk .AuditActionStop ,
95
+ ResourceType : codersdk .ResourceTypeWorkspaceBuild ,
96
+ ResourceID : workspace .LatestBuild .ID ,
97
+ Time : time .Date (2022 , 8 , 15 , 14 , 30 , 45 , 100 , time .UTC ), // 2022-8-15 14:30:45
98
+ })
99
+ require .NoError (t , err )
100
+
80
101
// Test cases
81
102
testCases := []struct {
82
103
Name string
@@ -106,12 +127,12 @@ func TestAuditLogsFilter(t *testing.T) {
106
127
{
107
128
Name : "FilterByEmail" ,
108
129
SearchQuery : "email:" + coderdtest .FirstUserParams .Email ,
109
- ExpectedResult : 3 ,
130
+ ExpectedResult : 5 ,
110
131
},
111
132
{
112
133
Name : "FilterByUsername" ,
113
134
SearchQuery : "username:" + coderdtest .FirstUserParams .Username ,
114
- ExpectedResult : 3 ,
135
+ ExpectedResult : 5 ,
115
136
},
116
137
{
117
138
Name : "FilterByResourceID" ,
@@ -121,17 +142,17 @@ func TestAuditLogsFilter(t *testing.T) {
121
142
{
122
143
Name : "FilterInvalidSingleValue" ,
123
144
SearchQuery : "invalid" ,
124
- ExpectedResult : 3 ,
145
+ ExpectedResult : 5 ,
125
146
},
126
147
{
127
148
Name : "FilterWithInvalidResourceType" ,
128
149
SearchQuery : "resource_type:invalid" ,
129
- ExpectedResult : 3 ,
150
+ ExpectedResult : 5 ,
130
151
},
131
152
{
132
153
Name : "FilterWithInvalidAction" ,
133
154
SearchQuery : "action:invalid" ,
134
- ExpectedResult : 3 ,
155
+ ExpectedResult : 5 ,
135
156
},
136
157
{
137
158
Name : "FilterOnCreateSingleDay" ,
@@ -148,6 +169,16 @@ func TestAuditLogsFilter(t *testing.T) {
148
169
SearchQuery : "action:create date_to:2022-08-15" ,
149
170
ExpectedResult : 1 ,
150
171
},
172
+ {
173
+ Name : "FilterOnWorkspaceBuildStart" ,
174
+ SearchQuery : "resource_type:workspace_build action:start" ,
175
+ ExpectedResult : 1 ,
176
+ },
177
+ {
178
+ Name : "FilterOnWorkspaceBuildStop" ,
179
+ SearchQuery : "resource_type:workspace_build action:stop" ,
180
+ ExpectedResult : 1 ,
181
+ },
151
182
}
152
183
153
184
for _ , testCase := range testCases {
0 commit comments