@@ -227,39 +227,49 @@ func WorkspaceAgent(t testing.TB, db database.Store, orig database.WorkspaceAgen
227
227
require .NoError (t , err , "update workspace agent first connected at" )
228
228
}
229
229
230
- // Add a test antagonist. For every agent we add a deleted sub agent
231
- // to discover cases where deletion should be handled.
232
- subAgt , err := db .InsertWorkspaceAgent (genCtx , database.InsertWorkspaceAgentParams {
233
- ID : uuid .New (),
234
- ParentID : uuid.NullUUID {UUID : agt .ID , Valid : true },
235
- CreatedAt : dbtime .Now (),
236
- UpdatedAt : dbtime .Now (),
237
- Name : testutil .GetRandomName (t ),
238
- ResourceID : agt .ResourceID ,
239
- AuthToken : uuid .New (),
240
- AuthInstanceID : sql.NullString {},
241
- Architecture : agt .Architecture ,
242
- EnvironmentVariables : pqtype.NullRawMessage {},
243
- OperatingSystem : agt .OperatingSystem ,
244
- Directory : agt .Directory ,
245
- InstanceMetadata : pqtype.NullRawMessage {},
246
- ResourceMetadata : pqtype.NullRawMessage {},
247
- ConnectionTimeoutSeconds : agt .ConnectionTimeoutSeconds ,
248
- TroubleshootingURL : "I AM A TEST ANTAGONIST AND I AM HERE TO MESS UP YOUR TESTS. IF YOU SEE ME, SOMETHING IS WRONG AND SUB AGENT DELETION MAY NOT BE HANDLED CORRECTLY IN A QUERY." ,
249
- MOTDFile : "" ,
250
- DisplayApps : nil ,
251
- DisplayOrder : agt .DisplayOrder ,
252
- APIKeyScope : agt .APIKeyScope ,
253
- })
254
- require .NoError (t , err , "insert workspace agent subagent antagonist" )
255
- err = db .DeleteWorkspaceSubAgentByID (genCtx , subAgt .ID )
256
- require .NoError (t , err , "delete workspace agent subagent antagonist" )
230
+ if orig .ParentID .UUID == uuid .Nil {
231
+ // Add a test antagonist. For every agent we add a deleted sub agent
232
+ // to discover cases where deletion should be handled.
233
+ // See also `(dbfake.WorkspaceBuildBuilder).Do()`.
234
+ subAgt , err := db .InsertWorkspaceAgent (genCtx , database.InsertWorkspaceAgentParams {
235
+ ID : uuid .New (),
236
+ ParentID : uuid.NullUUID {UUID : agt .ID , Valid : true },
237
+ CreatedAt : dbtime .Now (),
238
+ UpdatedAt : dbtime .Now (),
239
+ Name : testutil .GetRandomName (t ),
240
+ ResourceID : agt .ResourceID ,
241
+ AuthToken : uuid .New (),
242
+ AuthInstanceID : sql.NullString {},
243
+ Architecture : agt .Architecture ,
244
+ EnvironmentVariables : pqtype.NullRawMessage {},
245
+ OperatingSystem : agt .OperatingSystem ,
246
+ Directory : agt .Directory ,
247
+ InstanceMetadata : pqtype.NullRawMessage {},
248
+ ResourceMetadata : pqtype.NullRawMessage {},
249
+ ConnectionTimeoutSeconds : agt .ConnectionTimeoutSeconds ,
250
+ TroubleshootingURL : "I AM A TEST ANTAGONIST AND I AM HERE TO MESS UP YOUR TESTS. IF YOU SEE ME, SOMETHING IS WRONG AND SUB AGENT DELETION MAY NOT BE HANDLED CORRECTLY IN A QUERY." ,
251
+ MOTDFile : "" ,
252
+ DisplayApps : nil ,
253
+ DisplayOrder : agt .DisplayOrder ,
254
+ APIKeyScope : agt .APIKeyScope ,
255
+ })
256
+ require .NoError (t , err , "insert workspace agent subagent antagonist" )
257
+ err = db .DeleteWorkspaceSubAgentByID (genCtx , subAgt .ID )
258
+ require .NoError (t , err , "delete workspace agent subagent antagonist" )
257
259
258
- t .Logf ("inserted workspace agent %s (%v) with deleted subagent antagonist %s (%v)" , agt .Name , agt .ID , subAgt .Name , subAgt .ID )
260
+ t .Logf ("inserted deleted subagent antagonist %s (%v) for workspace agent %s (%v)" , subAgt .Name , subAgt .ID , agt .Name , agt .ID )
261
+ }
259
262
260
263
return agt
261
264
}
262
265
266
+ func WorkspaceSubAgent (t testing.TB , db database.Store , parentAgent database.WorkspaceAgent , orig database.WorkspaceAgent ) database.WorkspaceAgent {
267
+ orig .ParentID = uuid.NullUUID {UUID : parentAgent .ID , Valid : true }
268
+ orig .ResourceID = parentAgent .ResourceID
269
+ subAgt := WorkspaceAgent (t , db , orig )
270
+ return subAgt
271
+ }
272
+
263
273
func WorkspaceAgentScript (t testing.TB , db database.Store , orig database.WorkspaceAgentScript ) database.WorkspaceAgentScript {
264
274
scripts , err := db .InsertWorkspaceAgentScripts (genCtx , database.InsertWorkspaceAgentScriptsParams {
265
275
WorkspaceAgentID : takeFirst (orig .WorkspaceAgentID , uuid .New ()),
0 commit comments