fix: Support array of payment status filters when listing orders (#1013)

This commit is contained in:
Oliver Windall Juhl
2022-02-01 17:24:13 +01:00
committed by GitHub
parent d87a3a5503
commit fdc493df7f
2 changed files with 14 additions and 11 deletions

View File

@@ -1234,15 +1234,18 @@ describe("/admin/orders", () => {
])
})
it("lists all orders with a fulfillment status = fulfilled", async () => {
it("lists all orders with a fulfillment status = fulfilled and payment status = captured", async () => {
const api = useApi()
const response = await api
.get("/admin/orders?fulfillment_status[]=fulfilled", {
headers: {
authorization: "Bearer test_token",
},
})
.get(
"/admin/orders?fulfillment_status[]=fulfilled&payment_status[]=captured",
{
headers: {
authorization: "Bearer test_token",
},
}
)
.catch((err) => console.log(err))
expect(response.status).toEqual(200)

View File

@@ -1,12 +1,12 @@
import { Type } from "class-transformer"
import {
IsString,
IsOptional,
IsArray,
IsEnum,
ValidateNested,
IsNotEmpty,
IsInt,
IsNotEmpty,
IsOptional,
IsString,
ValidateNested,
} from "class-validator"
import { DateComparisonOperator } from "./common"
@@ -60,7 +60,7 @@ export class AdminListOrdersSelector {
fulfillment_status?: string[]
@IsArray()
@IsEnum(PaymentStatus)
@IsEnum(PaymentStatus, { each: true })
@IsOptional()
payment_status?: string[]