github.com/rawahars/moby@v24.0.4+incompatible/integration/container/ps_test.go (about) 1 package container // import "github.com/docker/docker/integration/container" 2 3 import ( 4 "context" 5 "testing" 6 7 "github.com/docker/docker/api/types" 8 "github.com/docker/docker/api/types/filters" 9 "github.com/docker/docker/integration/internal/container" 10 "gotest.tools/v3/assert" 11 is "gotest.tools/v3/assert/cmp" 12 ) 13 14 func TestPsFilter(t *testing.T) { 15 defer setupTest(t)() 16 client := testEnv.APIClient() 17 ctx := context.Background() 18 19 prev := container.Create(ctx, t, client) 20 top := container.Create(ctx, t, client) 21 next := container.Create(ctx, t, client) 22 23 containerIDs := func(containers []types.Container) []string { 24 var entries []string 25 for _, c := range containers { 26 entries = append(entries, c.ID) 27 } 28 return entries 29 } 30 31 t.Run("since", func(t *testing.T) { 32 results, err := client.ContainerList(ctx, types.ContainerListOptions{ 33 All: true, 34 Filters: filters.NewArgs(filters.Arg("since", top)), 35 }) 36 assert.NilError(t, err) 37 assert.Check(t, is.Contains(containerIDs(results), next)) 38 }) 39 40 t.Run("before", func(t *testing.T) { 41 results, err := client.ContainerList(ctx, types.ContainerListOptions{ 42 All: true, 43 Filters: filters.NewArgs(filters.Arg("before", top)), 44 }) 45 assert.NilError(t, err) 46 assert.Check(t, is.Contains(containerIDs(results), prev)) 47 }) 48 }