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

Function TestTemplateFilterHasExternalAgent

coderd/templates_test.go:2253–2307  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

2251}
2252
2253func TestTemplateFilterHasExternalAgent(t *testing.T) {
2254 t.Parallel()
2255
2256 db, pubsub := dbtestutil.NewDB(t)
2257 client := coderdtest.New(t, &coderdtest.Options{
2258 Database: db,
2259 Pubsub: pubsub,
2260 IncludeProvisionerDaemon: true,
2261 })
2262 user := coderdtest.CreateFirstUser(t, client)
2263
2264 jobWithExternalAgent := dbgen.ProvisionerJob(t, db, pubsub, database.ProvisionerJob{
2265 OrganizationID: user.OrganizationID,
2266 InitiatorID: user.UserID,
2267 Tags: database.StringMap{},
2268 Type: database.ProvisionerJobTypeTemplateVersionImport,
2269 })
2270 jobWithoutExternalAgent := dbgen.ProvisionerJob(t, db, pubsub, database.ProvisionerJob{
2271 OrganizationID: user.OrganizationID,
2272 InitiatorID: user.UserID,
2273 Tags: database.StringMap{},
2274 Type: database.ProvisionerJobTypeTemplateVersionImport,
2275 })
2276 versionWithExternalAgent := dbgen.TemplateVersion(t, db, database.TemplateVersion{
2277 OrganizationID: user.OrganizationID,
2278 CreatedBy: user.UserID,
2279 HasExternalAgent: sql.NullBool{Bool: true, Valid: true},
2280 JobID: jobWithExternalAgent.ID,
2281 })
2282 versionWithoutExternalAgent := dbgen.TemplateVersion(t, db, database.TemplateVersion{
2283 OrganizationID: user.OrganizationID,
2284 CreatedBy: user.UserID,
2285 HasExternalAgent: sql.NullBool{Bool: false, Valid: true},
2286 JobID: jobWithoutExternalAgent.ID,
2287 })
2288 templateWithExternalAgent := coderdtest.CreateTemplate(t, client, user.OrganizationID, versionWithExternalAgent.ID)
2289 templateWithoutExternalAgent := coderdtest.CreateTemplate(t, client, user.OrganizationID, versionWithoutExternalAgent.ID)
2290
2291 ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
2292 defer cancel()
2293
2294 templates, err := client.Templates(ctx, codersdk.TemplateFilter{
2295 SearchQuery: "has_external_agent:true",
2296 })
2297 require.NoError(t, err)
2298 require.Len(t, templates, 1)
2299 require.Equal(t, templateWithExternalAgent.ID, templates[0].ID)
2300
2301 templates, err = client.Templates(ctx, codersdk.TemplateFilter{
2302 SearchQuery: "has_external_agent:false",
2303 })
2304 require.NoError(t, err)
2305 require.Len(t, templates, 1)
2306 require.Equal(t, templateWithoutExternalAgent.ID, templates[0].ID)
2307}

Callers

nothing calls this directly

Calls 9

NewDBFunction · 0.92
NewFunction · 0.92
CreateFirstUserFunction · 0.92
ProvisionerJobFunction · 0.92
TemplateVersionFunction · 0.92
CreateTemplateFunction · 0.92
TemplatesMethod · 0.80
LenMethod · 0.45
EqualMethod · 0.45

Tested by

no test coverage detected