test: adds integration test for shipping-option-requirements

This commit is contained in:
Sebastian Rindom
2021-06-08 17:21:42 +02:00
parent eb0a4afd79
commit 10113d0657
3 changed files with 98 additions and 0 deletions

View File

@@ -45,6 +45,7 @@ describe("/admin/draft-orders", () => {
await manager.query(`DELETE FROM "product_variant"`);
await manager.query(`DELETE FROM "product"`);
await manager.query(`DELETE FROM "shipping_method"`);
await manager.query(`DELETE FROM "shipping_option_requirement"`);
await manager.query(`DELETE FROM "shipping_option"`);
await manager.query(`UPDATE "discount" SET rule_id=NULL`);
await manager.query(`DELETE FROM "discount"`);
@@ -104,6 +105,79 @@ describe("/admin/draft-orders", () => {
expect(response.status).toEqual(200);
});
it("fails to create a draft order with option requirement", async () => {
const api = useApi();
const payload = {
email: "oli@test.dk",
shipping_address: "oli-shipping",
items: [
{
quantity: 1,
metadata: {},
unit_price: 1,
},
],
region_id: "test-region",
customer_id: "oli-test",
shipping_methods: [
{
option_id: "test-option-req",
},
],
};
const response = await api
.post("/admin/draft-orders", payload, {
headers: {
Authorization: "Bearer test_token",
},
})
.catch((err) => {
return err.response;
});
expect(response.status).toEqual(400);
});
it("creates a draft order with option requirement", async () => {
const api = useApi();
const payload = {
email: "oli@test.dk",
shipping_address: "oli-shipping",
items: [
{
variant_id: "test-variant",
quantity: 2,
metadata: {},
},
{
quantity: 1,
metadata: {},
unit_price: 10000,
},
],
region_id: "test-region",
customer_id: "oli-test",
shipping_methods: [
{
option_id: "test-option-req",
},
],
};
const response = await api
.post("/admin/draft-orders", payload, {
headers: {
Authorization: "Bearer test_token",
},
})
.catch((err) => {
console.log(err);
});
expect(response.status).toEqual(200);
});
it("creates a draft order with custom item", async () => {
const api = useApi();
@@ -322,6 +396,7 @@ describe("/admin/draft-orders", () => {
await manager.query(`DELETE FROM "product_variant"`);
await manager.query(`DELETE FROM "product"`);
await manager.query(`DELETE FROM "shipping_method"`);
await manager.query(`DELETE FROM "shipping_option_requirement"`);
await manager.query(`DELETE FROM "shipping_option"`);
await manager.query(`UPDATE "discount" SET rule_id=NULL`);
await manager.query(`DELETE FROM "discount"`);
@@ -431,6 +506,7 @@ describe("/admin/draft-orders", () => {
await manager.query(`DELETE FROM "product_variant"`);
await manager.query(`DELETE FROM "product"`);
await manager.query(`DELETE FROM "shipping_method"`);
await manager.query(`DELETE FROM "shipping_option_requirement"`);
await manager.query(`DELETE FROM "shipping_option"`);
await manager.query(`UPDATE "discount" SET rule_id=NULL`);
await manager.query(`DELETE FROM "discount"`);
@@ -496,6 +572,7 @@ describe("/admin/draft-orders", () => {
await manager.query(`DELETE FROM "product_variant"`);
await manager.query(`DELETE FROM "product"`);
await manager.query(`DELETE FROM "shipping_method"`);
await manager.query(`DELETE FROM "shipping_option_requirement"`);
await manager.query(`DELETE FROM "shipping_option"`);
await manager.query(`UPDATE "discount" SET rule_id=NULL`);
await manager.query(`DELETE FROM "discount"`);
@@ -612,6 +689,7 @@ describe("/admin/draft-orders", () => {
await manager.query(`DELETE FROM "product_variant"`);
await manager.query(`DELETE FROM "product"`);
await manager.query(`DELETE FROM "shipping_method"`);
await manager.query(`DELETE FROM "shipping_option_requirement"`);
await manager.query(`DELETE FROM "shipping_option"`);
await manager.query(`UPDATE "discount" SET rule_id=NULL`);
await manager.query(`DELETE FROM "discount"`);