MCPcopy Index your code
hub / github.com/rilldata/rill / testProjectsWithAnnotations

Function testProjectsWithAnnotations

admin/database/postgres/postgres_test.go:270–314  ·  view source on GitHub ↗
(t *testing.T, db database.DB)

Source from the content-addressed store, hash-verified

268}
269
270func testProjectsWithAnnotations(t *testing.T, db database.DB) {
271 ctx := context.Background()
272
273 org, err := db.InsertOrganization(ctx, &database.InsertOrganizationOptions{Name: "foo"})
274 require.NoError(t, err)
275 require.Equal(t, "foo", org.Name)
276
277 opts := &database.InsertProjectOptions{
278 OrganizationID: org.ID,
279 Name: "bar",
280 }
281 proj, err := db.InsertProject(ctx, opts)
282 require.NoError(t, err)
283 require.Empty(t, proj.Annotations)
284
285 annotations := map[string]string{"foo": "bar", "bar": "baz"}
286 _, err = db.UpdateProject(ctx, proj.ID, &database.UpdateProjectOptions{
287 Name: proj.Name,
288 Annotations: annotations,
289 })
290 require.NoError(t, err)
291
292 proj, err = db.FindProjectByName(ctx, org.Name, proj.Name)
293 require.NoError(t, err)
294 require.Equal(t, "bar", proj.Name)
295 require.Equal(t, annotations, proj.Annotations)
296
297 projs, err := db.FindProjectPathsByPatternAndAnnotations(ctx, "%", "", []string{"foo"}, nil, 10)
298 require.NoError(t, err)
299 require.Equal(t, "foo/bar", projs[0])
300
301 projs, err = db.FindProjectPathsByPatternAndAnnotations(ctx, "%", "", nil, map[string]string{"foo": "bar"}, 1)
302 require.NoError(t, err)
303 require.Equal(t, "foo/bar", projs[0])
304
305 projs, err = db.FindProjectPathsByPatternAndAnnotations(ctx, "%", "", nil, map[string]string{"foo": ""}, 1)
306 require.NoError(t, err)
307 require.Len(t, projs, 0)
308
309 err = db.DeleteProject(ctx, proj.ID)
310 require.NoError(t, err)
311
312 err = db.DeleteOrganization(ctx, org.Name)
313 require.NoError(t, err)
314}
315
316func testProjectsWithPagination(t *testing.T, db database.DB) {
317 ctx := context.Background()

Callers 1

TestPostgresFunction · 0.85

Calls 8

InsertOrganizationMethod · 0.65
InsertProjectMethod · 0.65
UpdateProjectMethod · 0.65
FindProjectByNameMethod · 0.65
DeleteProjectMethod · 0.65
DeleteOrganizationMethod · 0.65
LenMethod · 0.45

Tested by

no test coverage detected