UNPKG

beerbay-math

Version:

234 lines (228 loc) 6.04 kB
"use strict"; var _cart = require("./mock/cart"); var _countries = require("./mock/countries"); var _coupon = require("./mock/coupon"); var _stripe = require("./stripe"); var SELECTED_COUNTRY = _countries.MOCK_SHIPPING_COUNTRIES[0]; //Spain describe("Test for Stripe", function () { test("cartToLineItems includes shipping fee to product list", function () { expect((0, _stripe.cartToLineItems)(_cart.MOCK_CART, SELECTED_COUNTRY)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 1220 }, quantity: 3 }, { price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 1220 }, quantity: 3 }, { price_data: { currency: "eur", product_data: { name: "Shipping Fees" }, unit_amount: 495 }, quantity: 1 }]); }); test("cartToLineItems does not includes shipping fee to product list when a free shipping coupon is applied", function () { expect((0, _stripe.cartToLineItems)(_cart.MOCK_CART, SELECTED_COUNTRY, _coupon.FREE_SHIPPING_SPAIN_COUPON)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 1220 }, quantity: 3 }, { price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 1220 }, quantity: 3 }]); }); test("cartToLineItems product list has the correct single product price with high quantity when applying flat coupon", function () { expect((0, _stripe.cartToLineItems)(_cart.MOCK_25_ITEMS_CART, SELECTED_COUNTRY, _coupon.USD_10_COUPON)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 402 }, quantity: 25 }, { price_data: { currency: "eur", product_data: { name: "Shipping Fees" }, unit_amount: 495 }, quantity: 1 }]); }); test("cartToLineItems product list has the correct single product price when applying a percentage coupon", function () { expect((0, _stripe.cartToLineItems)(_cart.MOCK_25_ITEMS_CART, SELECTED_COUNTRY, _coupon.PERCENTAGE_20_COUPON)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 354 }, quantity: 25 }, { price_data: { currency: "eur", product_data: { name: "Shipping Fees" }, unit_amount: 495 }, quantity: 1 }]); }); test("cartToLineItems product list has the correct product price when applying percentage coupon", function () { expect((0, _stripe.cartToLineItems)(_cart.MOCK_CART, SELECTED_COUNTRY, _coupon.PERCENTAGE_20_COUPON)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 976 }, quantity: 3 }, { price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 976 }, quantity: 3 }, { price_data: { currency: "eur", product_data: { name: "Shipping Fees" }, unit_amount: 495 }, quantity: 1 }]); }); test("cartToLineItems product list has the correct product price when applying flat coupon", function () { expect((0, _stripe.cartToLineItems)(_cart.MOCK_CART, SELECTED_COUNTRY, _coupon.USD_10_COUPON)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 1053 }, quantity: 3 }, { price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 1053 }, quantity: 3 }, { price_data: { currency: "eur", product_data: { name: "Shipping Fees" }, unit_amount: 495 }, quantity: 1 }]); }); test("cartToLineItems product list has the correct product price when a product has a low price", function () { expect((0, _stripe.cartToLineItems)(_cart.MOCK_CART_2, SELECTED_COUNTRY, _coupon.USD_10_COUPON)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 833 }, quantity: 5 }, { price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 171 }, quantity: 1 }, { price_data: { currency: "eur", product_data: { name: "Shipping Fees" }, unit_amount: 495 }, quantity: 1 }]); }); expect((0, _stripe.cartToLineItems)(_cart.MOCK_CART_3, SELECTED_COUNTRY, _coupon.USD_10_COUPON)).toStrictEqual([{ price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 868 }, quantity: 5 }, { price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 508 }, quantity: 2 }, { price_data: { currency: "eur", product_data: { name: "A&H The Funky Saison 75 cl." }, unit_amount: 178 }, quantity: 1 }, { price_data: { currency: "eur", product_data: { name: "Shipping Fees" }, unit_amount: 495 }, quantity: 1 }]); });