fix pr review
This commit is contained in:
@@ -46,7 +46,9 @@ describe("/admin/draft-orders", () => {
|
||||
await manager.query(`DELETE FROM "product"`);
|
||||
await manager.query(`DELETE FROM "shipping_method"`);
|
||||
await manager.query(`DELETE FROM "shipping_option"`);
|
||||
await manager.query(`UPDATE "discount" SET rule_id=NULL`);
|
||||
await manager.query(`DELETE FROM "discount"`);
|
||||
await manager.query(`DELETE FROM "discount_rule"`);
|
||||
await manager.query(`DELETE FROM "payment_provider"`);
|
||||
await manager.query(`DELETE FROM "payment_session"`);
|
||||
await manager.query(`UPDATE "payment" SET order_id=NULL`);
|
||||
@@ -141,12 +143,13 @@ describe("/admin/draft-orders", () => {
|
||||
expect(response.status).toEqual(200);
|
||||
});
|
||||
|
||||
it("creates a draft order with product variant with custom price", async () => {
|
||||
it("creates a draft order with product variant with custom price and custom item price set to 0", async () => {
|
||||
const api = useApi();
|
||||
|
||||
const payload = {
|
||||
email: "oli@test.dk",
|
||||
shipping_address_id: "oli-shipping",
|
||||
discounts: [{ code: "TEST" }],
|
||||
items: [
|
||||
{
|
||||
variant_id: "test-variant",
|
||||
@@ -154,6 +157,11 @@ describe("/admin/draft-orders", () => {
|
||||
metadata: {},
|
||||
unit_price: 10000000,
|
||||
},
|
||||
{
|
||||
quantity: 2,
|
||||
metadata: {},
|
||||
unit_price: -1000,
|
||||
},
|
||||
],
|
||||
region_id: "test-region",
|
||||
customer_id: "oli-test",
|
||||
@@ -185,10 +193,21 @@ describe("/admin/draft-orders", () => {
|
||||
});
|
||||
|
||||
expect(response.status).toEqual(200);
|
||||
expect(created.data.draft_order.cart.items[0]).toEqual(
|
||||
expect(created.data.draft_order.cart.items).toEqual(
|
||||
expect.arrayContaining([
|
||||
expect.objectContaining({
|
||||
variant_id: "test-variant",
|
||||
unit_price: 10000000,
|
||||
}),
|
||||
expect.objectContaining({
|
||||
unit_price: 0,
|
||||
}),
|
||||
])
|
||||
);
|
||||
// Check that discount is applied
|
||||
expect(created.data.draft_order.cart.discounts[0]).toEqual(
|
||||
expect.objectContaining({
|
||||
variant_id: "test-variant",
|
||||
unit_price: 10000000,
|
||||
code: "TEST",
|
||||
})
|
||||
);
|
||||
});
|
||||
@@ -303,7 +322,9 @@ describe("/admin/draft-orders", () => {
|
||||
await manager.query(`DELETE FROM "product"`);
|
||||
await manager.query(`DELETE FROM "shipping_method"`);
|
||||
await manager.query(`DELETE FROM "shipping_option"`);
|
||||
await manager.query(`UPDATE "discount" SET rule_id=NULL`);
|
||||
await manager.query(`DELETE FROM "discount"`);
|
||||
await manager.query(`DELETE FROM "discount_rule"`);
|
||||
await manager.query(`DELETE FROM "payment_provider"`);
|
||||
await manager.query(`DELETE FROM "payment_session"`);
|
||||
await manager.query(`UPDATE "payment" SET order_id=NULL`);
|
||||
|
||||
@@ -10,6 +10,8 @@ const {
|
||||
Cart,
|
||||
PaymentSession,
|
||||
DraftOrder,
|
||||
Discount,
|
||||
DiscountRule,
|
||||
} = require("@medusajs/medusa");
|
||||
|
||||
module.exports = async (connection, data = {}) => {
|
||||
@@ -107,6 +109,33 @@ module.exports = async (connection, data = {}) => {
|
||||
],
|
||||
});
|
||||
|
||||
await manager.insert(DiscountRule, {
|
||||
id: "discount_rule_id",
|
||||
description: "test description",
|
||||
value: 10,
|
||||
allocation: "total",
|
||||
type: "percentage",
|
||||
});
|
||||
|
||||
const d = manager.create(Discount, {
|
||||
id: "test-discount",
|
||||
code: "TEST",
|
||||
is_dynamic: false,
|
||||
is_disabled: false,
|
||||
rule_id: "discount_rule_id",
|
||||
});
|
||||
|
||||
d.regions = [
|
||||
{
|
||||
id: "test-region",
|
||||
name: "Test Region",
|
||||
currency_code: "usd",
|
||||
tax_rate: 0,
|
||||
},
|
||||
];
|
||||
|
||||
await manager.save(d);
|
||||
|
||||
await manager.query(
|
||||
`UPDATE "country" SET region_id='test-region' WHERE iso_2 = 'us'`
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user