fix(medusa): Validate customer_id when completing a cart (#3967)
This commit is contained in:
1 parent
eff9f4c6f9
commit
0c58ead6d8
4 files changed
+43
-4
No files matched your search
@@ -2152,6 +2152,33 @@ describe("/store/carts", () => {
|
||||
})
|
||||
})
|
||||
|
||||
it("complete cart throws if there is no customer on the cart", async () => {
|
||||
const api = useApi()
|
||||
const product = await simpleProductFactory(dbConnection)
|
||||
const region = await simpleRegionFactory(dbConnection, { tax_rate: 10 })
|
||||
const cart = await simpleCartFactory(dbConnection, {
|
||||
region: region.id,
|
||||
line_items: [
|
||||
{
|
||||
variant_id: product.variants[0].id,
|
||||
quantity: 1,
|
||||
unit_price: 1000,
|
||||
},
|
||||
],
|
||||
})
|
||||
|
||||
await api.post(`/store/carts/${cart.id}/payment-sessions`)
|
||||
|
||||
try {
|
||||
await api.post(`/store/carts/${cart.id}/complete`)
|
||||
} catch (err) {
|
||||
expect(err.response.status).toEqual(400)
|
||||
expect(err.response.data.message).toEqual(
|
||||
"Cannot create an order from the cart without a customer"
|
||||
)
|
||||
}
|
||||
})
|
||||
|
||||
describe("POST /store/carts/:id/shipping-methods", () => {
|
||||
beforeEach(async () => {
|
||||
await cartSeeder(dbConnection)
|
||||
|
||||
@@ -222,8 +222,7 @@ describe("/store/carts", () => {
|
||||
expect(getRes.response.status).toEqual(400)
|
||||
expect(getRes.response.data).toEqual({
|
||||
type: "invalid_data",
|
||||
message:
|
||||
"Can't insert null value in field customer_id on insert in table order",
|
||||
message: "Cannot create an order from the cart without a customer",
|
||||
})
|
||||
|
||||
const inventoryService = appContainer.resolve("inventoryService")
|
||||
@@ -232,6 +231,7 @@ describe("/store/carts", () => {
|
||||
})
|
||||
expect(count).toEqual(0)
|
||||
})
|
||||
|
||||
it("fails to add a item on the cart if the inventory isn't enough", async () => {
|
||||
const api = useApi()
|
||||
|
||||
|
||||
Reference in new issue
Block a user