fix tests and test values
This commit is contained in:
parent
383725b641
commit
834617e526
@ -1,7 +1,7 @@
|
|||||||
import { CartItem } from "@root/model/cart";
|
import { CartItem } from "../../model/cart";
|
||||||
import { Tariff } from "@root/model/tariff";
|
import { SERVICE_LIST, Tariff } from "../../model/tariff";
|
||||||
import { User } from "@root/model/user";
|
import { User } from "../../model/user";
|
||||||
import { exampleCartValues, TestCase } from "@stores/mocks/exampleCartValues";
|
import { exampleCartValues, TestCase } from "../../stores/mocks/exampleCartValues";
|
||||||
import { calcCartData, createCartItem } from "./calc";
|
import { calcCartData, createCartItem } from "./calc";
|
||||||
|
|
||||||
|
|
||||||
@ -13,9 +13,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[0]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[0]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -34,9 +37,12 @@ describe("cart tests", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -55,9 +61,12 @@ describe("cart tests", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -76,9 +85,12 @@ describe("cart tests", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -97,9 +109,12 @@ describe("cart tests", () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discountsWithoutTemplategen);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -110,9 +125,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[5]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[5]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -123,9 +141,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[6]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[6]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -136,9 +157,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[7]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[7]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -149,9 +173,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[8]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[8]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -162,9 +189,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[9]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[9]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts, "ABCD");
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts, "ABCD");
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -175,9 +205,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[10]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[10]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
@ -188,9 +221,12 @@ describe("cart tests", () => {
|
|||||||
const testCase = prepareTestCase(exampleCartValues.testCases[11]);
|
const testCase = prepareTestCase(exampleCartValues.testCases[11]);
|
||||||
|
|
||||||
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
const cartTotal = calcCartData(testCase.user, testCase.cartItems, discounts);
|
||||||
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscounts];
|
const allEnvolvedDiscounts: string[] = [...cartTotal.envolvedCartDiscountIds];
|
||||||
cartTotal.items.forEach(cartItem => {
|
cartTotal.items.forEach(cartItem => {
|
||||||
allEnvolvedDiscounts.push(...cartItem.envolvedDiscounts);
|
allEnvolvedDiscounts.push(...cartItem.envolvedDiscountIds);
|
||||||
|
});
|
||||||
|
SERVICE_LIST.map(service => service.serviceKey).forEach(service => {
|
||||||
|
if (cartTotal.discountsByService[service]) allEnvolvedDiscounts.push(cartTotal.discountsByService[service]!._id);
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
expect(allEnvolvedDiscounts.sort()).toEqual(testCase.expect.envolvedDiscounts.sort());
|
||||||
|
@ -1114,9 +1114,10 @@ export const exampleCartValues: ExampleCartValues = {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"expect": {
|
"expect": {
|
||||||
"price": 12000 * 0.985,
|
"price": 12000 * 0.985 * 0.96,
|
||||||
"envolvedDiscounts": [
|
"envolvedDiscounts": [
|
||||||
"id4"
|
"id4",
|
||||||
|
"id31"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -4,5 +4,5 @@ import { User } from "@root/model/user";
|
|||||||
export const testUser: User = {
|
export const testUser: User = {
|
||||||
"ID": "buddy",
|
"ID": "buddy",
|
||||||
"Type": "",
|
"Type": "",
|
||||||
"PurchasesAmount": 0,
|
"PurchasesAmount": 11000,
|
||||||
};
|
};
|
Loading…
Reference in New Issue
Block a user