diff options
-rw-r--r-- | pkg/domain/filters/containers.go | 4 | ||||
-rw-r--r-- | test/apiv2/20-containers.at | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/pkg/domain/filters/containers.go b/pkg/domain/filters/containers.go index 0557e75d6..3e5b9cad9 100644 --- a/pkg/domain/filters/containers.go +++ b/pkg/domain/filters/containers.go @@ -52,8 +52,8 @@ func GenerateContainerFilterFuncs(filter string, filterValues []string, r *libpo }, nil case "status": for _, filterValue := range filterValues { - if !util.StringInSlice(filterValue, []string{"created", "running", "paused", "stopped", "exited", "unknown"}) { - return nil, errors.Errorf("%s is not a valid status", filterValue) + if _, err := define.StringToContainerStatus(filterValue); err != nil { + return nil, err } } return func(c *libpod.Container) bool { diff --git a/test/apiv2/20-containers.at b/test/apiv2/20-containers.at index 2d5754077..7a38dfea0 100644 --- a/test/apiv2/20-containers.at +++ b/test/apiv2/20-containers.at @@ -321,7 +321,11 @@ t GET containers/json?filters='garb1age}' 500 \ t GET containers/json?filters='{"label":["testl' 500 \ .cause="unexpected end of JSON input" + #libpod api list containers sanity checks +t GET libpod/containers/json?filters='{"status":["removing"]}' 200 length=0 +t GET libpod/containers/json?filters='{"status":["bogus"]}' 500 \ + .cause="invalid argument" t GET libpod/containers/json?filters='garb1age}' 500 \ .cause="invalid character 'g' looking for beginning of value" t GET libpod/containers/json?filters='{"label":["testl' 500 \ |