@hyper.software/common-helpers 1.10.7 → 1.10.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/interfaces.d.ts +3 -1
- package/lib/interfaces.js +2 -0
- package/lib/interfaces.js.map +1 -1
- package/lib/services/bookingService/__tests__/bookingsService.getAccommodationCost.test.js +51 -0
- package/lib/services/bookingService/__tests__/bookingsService.getAccommodationCost.test.js.map +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getChildrenCost.test.d.ts +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getChildrenCost.test.js +73 -0
- package/lib/services/bookingService/__tests__/bookingsService.getChildrenCost.test.js.map +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getLengthOfStay.test.d.ts +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getLengthOfStay.test.js +51 -0
- package/lib/services/bookingService/__tests__/bookingsService.getLengthOfStay.test.js.map +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getServicesCost.test.d.ts +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getServicesCost.test.js +32 -0
- package/lib/services/bookingService/__tests__/bookingsService.getServicesCost.test.js.map +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getTotalCost.test.d.ts +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.getTotalCost.test.js +48 -0
- package/lib/services/bookingService/__tests__/bookingsService.getTotalCost.test.js.map +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.d.ts +1 -0
- package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.js +185 -0
- package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.js.map +1 -0
- package/lib/services/bookingService/bookingsService.js +4 -2
- package/lib/services/bookingService/bookingsService.js.map +1 -1
- package/lib/testingData/bookingData.js +49 -0
- package/lib/testingData/bookingData.js.map +1 -1
- package/package.json +1 -1
- package/lib/services/bookingService/__tests__/bookingsService.test.js +0 -413
- package/lib/services/bookingService/__tests__/bookingsService.test.js.map +0 -1
- /package/lib/services/bookingService/__tests__/{bookingsService.test.d.ts → bookingsService.getAccommodationCost.test.d.ts} +0 -0
package/lib/interfaces.d.ts
CHANGED
|
@@ -84,7 +84,9 @@ export declare enum BOOKING_SOURCE {
|
|
|
84
84
|
PHONE_CALL = "PHONE_CALL",
|
|
85
85
|
MANUAL = "MANUAL",
|
|
86
86
|
IMPORT = "IMPORT",
|
|
87
|
-
CLASSIFIEDS = "CLASSIFIEDS"
|
|
87
|
+
CLASSIFIEDS = "CLASSIFIEDS",
|
|
88
|
+
FEWO_DIREKT = "FEWO_DIREKT",
|
|
89
|
+
VRBO = "VRBO"
|
|
88
90
|
}
|
|
89
91
|
export declare enum BOOKING_STATUS {
|
|
90
92
|
ACTIVE = "ACTIVE",
|
package/lib/interfaces.js
CHANGED
|
@@ -50,6 +50,8 @@ var BOOKING_SOURCE;
|
|
|
50
50
|
BOOKING_SOURCE["MANUAL"] = "MANUAL";
|
|
51
51
|
BOOKING_SOURCE["IMPORT"] = "IMPORT";
|
|
52
52
|
BOOKING_SOURCE["CLASSIFIEDS"] = "CLASSIFIEDS";
|
|
53
|
+
BOOKING_SOURCE["FEWO_DIREKT"] = "FEWO_DIREKT";
|
|
54
|
+
BOOKING_SOURCE["VRBO"] = "VRBO";
|
|
53
55
|
})(BOOKING_SOURCE || (exports.BOOKING_SOURCE = BOOKING_SOURCE = {}));
|
|
54
56
|
var BOOKING_STATUS;
|
|
55
57
|
(function (BOOKING_STATUS) {
|
package/lib/interfaces.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;AAEA,IAAM,kBAAkB,GAAG,UAAU,KAAU,IAAU,OAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,KAAK,CAAC,GAAG,CAAC,EAAV,CAAU,CAAC,EAA3C,CAA2C,CAAA;AAuBpG,IAAY,QASX;AATD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;IACf,2BAAe,CAAA;AACjB,CAAC,EATW,QAAQ,wBAAR,QAAQ,QASnB;AACY,QAAA,YAAY,GAAG,kBAAkB,CAAW,QAAQ,CAAC,CAAA;AAIlE,IAAY,QAKX;AALD,WAAY,QAAQ;IAClB,uBAAW,CAAA;IACX,uBAAW,CAAA;IACX,uBAAW,CAAA;IACX,uBAAW,CAAA;AACb,CAAC,EALW,QAAQ,wBAAR,QAAQ,QAKnB;AACY,QAAA,YAAY,GAAG,kBAAkB,CAAW,QAAQ,CAAC,CAAA;AAElE,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,0CAAyB,CAAA;IACzB,8CAA6B,CAAA;AAC/B,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AACY,QAAA,iBAAiB,GAAG,kBAAkB,CAAgB,aAAa,CAAC,CAAA;AAEjF,IAAY,YAOX;AAPD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,6CAA6B,CAAA;IAC7B,mCAAmB,CAAA;IACnB,+BAAe,CAAA;AACjB,CAAC,EAPW,YAAY,4BAAZ,YAAY,QAOvB;AACY,QAAA,gBAAgB,GAAG,kBAAkB,CAAe,YAAY,CAAC,CAAA;AA4B9E,IAAY,
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var bookingData_1 = require("../../../testingData/bookingData");
|
|
4
|
+
var bookingsService_1 = require("../bookingsService");
|
|
5
|
+
describe('WHEN testing .getAccommodationCost()', function () {
|
|
6
|
+
it('SHOULD compute the correct accommodation cost for case 1 - A 2 day booking at the normal price without OBP or Length of stay Discount', function () {
|
|
7
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking1);
|
|
8
|
+
expect(accommodationCost).toBe(1341);
|
|
9
|
+
});
|
|
10
|
+
it('SHOULD compute the correct accommodation cost for case 2 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount', function () {
|
|
11
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking2);
|
|
12
|
+
expect(accommodationCost).toBe(248);
|
|
13
|
+
});
|
|
14
|
+
it('SHOULD compute the correct accommodation cost for case 3 - A 2-day booking with services (that are enabled by default), without OBP and without Length of Stay Discount ', function () {
|
|
15
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking3);
|
|
16
|
+
expect(accommodationCost).toBe(298);
|
|
17
|
+
});
|
|
18
|
+
it('SHOULD compute the correct accommodation cost for case 4 - A 2-day booking with services (that are enabled by default), with OBP and without Length of Stay Discount ', function () {
|
|
19
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking4);
|
|
20
|
+
expect(accommodationCost).toBe(248);
|
|
21
|
+
});
|
|
22
|
+
it('SHOULD compute the correct accommodation cost for case 5 - A 3-day booking with a reduced price by OBP and by the Length of Stay Discount', function () {
|
|
23
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking5);
|
|
24
|
+
expect(accommodationCost).toBe(402.29999999999995);
|
|
25
|
+
});
|
|
26
|
+
it('SHOULD compute the correct accommodation cost for case 6 - A 3-day booking with services (enabled by default), with a reduced price by OBP and by the Length of Stay Discount ', function () {
|
|
27
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking6);
|
|
28
|
+
expect(accommodationCost).toBe(417);
|
|
29
|
+
});
|
|
30
|
+
it('SHOULD compute the correct accommodation cost for case 7 - A 2-day booking at the normal price without OBP or Length of Stay Discount, with 1 child aged 5 years (0 - 10 range)', function () {
|
|
31
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking7);
|
|
32
|
+
expect(accommodationCost).toBe(298);
|
|
33
|
+
});
|
|
34
|
+
it('SHOULD compute the correct accommodation cost for case 8 - A 2-day booking at the normal price with OBP or Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
35
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking8);
|
|
36
|
+
expect(accommodationCost).toBe(298);
|
|
37
|
+
});
|
|
38
|
+
it('SHOULD compute the correct accommodation cost for case 9 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
39
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking9);
|
|
40
|
+
expect(accommodationCost).toBe(178.79999999999998);
|
|
41
|
+
});
|
|
42
|
+
it('SHOULD compute the correct accommodation cost for case 9 - A 3-day booking with normal price by OBP and with Length of Stay Discount, with 4 children of various age ranges', function () {
|
|
43
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking10);
|
|
44
|
+
expect(accommodationCost).toBe(447);
|
|
45
|
+
});
|
|
46
|
+
it('SHOULD compute correct accommodation cost for case 12 - A 4-day booking with services that are enabled by default and are seasonal between 2 seasons Extended stay', function () {
|
|
47
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking12);
|
|
48
|
+
expect(accommodationCost).toBe(1788);
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=bookingsService.getAccommodationCost.test.js.map
|
package/lib/services/bookingService/__tests__/bookingsService.getAccommodationCost.test.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookingsService.getAccommodationCost.test.js","sourceRoot":"","sources":["../../../../src/services/bookingService/__tests__/bookingsService.getAccommodationCost.test.ts"],"names":[],"mappings":";;AAAA,gEAYyC;AACzC,sDAAyD;AAEzD,QAAQ,CAAC,sCAAsC,EAAE;IAC/C,EAAE,CAAC,uIAAuI,EAAE;QAC1I,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4IAA4I,EAAE;QAC/I,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0KAA0K,EAAE;QAC7K,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uKAAuK,EAAE;QAC1K,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,2IAA2I,EAAE;QAC9I,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gLAAgL,EAAE;QACnL,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iLAAiL,EAAE;QACpL,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4KAA4K,EAAE;QAC/K,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oLAAoL,EAAE;QACvL,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6KAA6K,EAAE;QAChL,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,uBAAS,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oKAAoK,EAAE;QACvK,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,uBAAS,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var bookingData_1 = require("../../../testingData/bookingData");
|
|
4
|
+
var bookingsService_1 = require("../bookingsService");
|
|
5
|
+
describe('WHEN testing getChildrenCost() + getChildrenTourismTax()', function () {
|
|
6
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 1 - A 2 day booking at the normal price without OBP or Length of stay Discount', function () {
|
|
7
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking1);
|
|
8
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking1);
|
|
9
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
10
|
+
expect(childrenTotalCost).toBe(0);
|
|
11
|
+
});
|
|
12
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 2 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount', function () {
|
|
13
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking2);
|
|
14
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking2);
|
|
15
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
16
|
+
expect(childrenTotalCost).toBe(0);
|
|
17
|
+
});
|
|
18
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 3 - A 2-day booking with services (that are enabled by default), without OBP and without Length of Stay Discount ', function () {
|
|
19
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking3);
|
|
20
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking3);
|
|
21
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
22
|
+
expect(childrenTotalCost).toBe(0);
|
|
23
|
+
});
|
|
24
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 4 - A 2-day booking with services (that are enabled by default), with OBP and without Length of Stay Discount ', function () {
|
|
25
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking4);
|
|
26
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking4);
|
|
27
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
28
|
+
expect(childrenTotalCost).toBe(0);
|
|
29
|
+
});
|
|
30
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 5 - A 3-day booking with a reduced price by OBP and by the Length of Stay Discount', function () {
|
|
31
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking5);
|
|
32
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking5);
|
|
33
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
34
|
+
expect(childrenTotalCost).toBe(0);
|
|
35
|
+
});
|
|
36
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 6 - A 3-day booking with services (enabled by default), with a reduced price by OBP and by the Length of Stay Discount ', function () {
|
|
37
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking6);
|
|
38
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking6);
|
|
39
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
40
|
+
expect(childrenTotalCost).toBe(0);
|
|
41
|
+
});
|
|
42
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 7 - A 2-day booking at the normal price without OBP or Length of Stay Discount, with 1 child aged 5 years (0 - 10 range)', function () {
|
|
43
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking7);
|
|
44
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking7);
|
|
45
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
46
|
+
expect(childrenTotalCost).toBe(70);
|
|
47
|
+
});
|
|
48
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 8 - A 2-day booking at the normal price with OBP or Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
49
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking8);
|
|
50
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking8);
|
|
51
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
52
|
+
expect(childrenTotalCost).toBe(210);
|
|
53
|
+
});
|
|
54
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 9 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
55
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking9);
|
|
56
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking9);
|
|
57
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
58
|
+
expect(childrenTotalCost).toBe(210);
|
|
59
|
+
});
|
|
60
|
+
it('SHOULD compute the correct getChildrenCost() + getChildrenTourismTax() cost for case 10 - A 3-day booking with normal price by OBP and with Length of Stay Discount, with 4 children of various age ranges', function () {
|
|
61
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking10);
|
|
62
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking10);
|
|
63
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
64
|
+
expect(childrenTotalCost).toBe(315);
|
|
65
|
+
});
|
|
66
|
+
it('SHOULD compute correct accommodation cost for case 12 - A 4-day booking with services that are enabled by default and are seasonal between 2 seasons Extended stay', function () {
|
|
67
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking12);
|
|
68
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking12);
|
|
69
|
+
var childrenTotalCost = childrenCost + childrenTourismTax;
|
|
70
|
+
expect(childrenTotalCost).toBe(0);
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
//# sourceMappingURL=bookingsService.getChildrenCost.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookingsService.getChildrenCost.test.js","sourceRoot":"","sources":["../../../../src/services/bookingService/__tests__/bookingsService.getChildrenCost.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var bookingData_1 = require("../../../testingData/bookingData");
|
|
4
|
+
var bookingsService_1 = require("../bookingsService");
|
|
5
|
+
describe('WHEN testing .getLengthOfStay()', function () {
|
|
6
|
+
it('SHOULD compute the correct length of stay for booking1', function () {
|
|
7
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking1);
|
|
8
|
+
expect(lengthOfStay).toBe(3);
|
|
9
|
+
});
|
|
10
|
+
it('SHOULD compute the correct length of stay for booking2', function () {
|
|
11
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking2);
|
|
12
|
+
expect(lengthOfStay).toBe(2);
|
|
13
|
+
});
|
|
14
|
+
it('SHOULD compute the correct length of stay for booking3', function () {
|
|
15
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking3);
|
|
16
|
+
expect(lengthOfStay).toBe(2);
|
|
17
|
+
});
|
|
18
|
+
it('SHOULD compute the correct length of stay for booking4', function () {
|
|
19
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking4);
|
|
20
|
+
expect(lengthOfStay).toBe(2);
|
|
21
|
+
});
|
|
22
|
+
it('SHOULD compute the correct length of stay for booking5', function () {
|
|
23
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking5);
|
|
24
|
+
expect(lengthOfStay).toBe(3);
|
|
25
|
+
});
|
|
26
|
+
it('SHOULD compute the correct length of stay for booking6', function () {
|
|
27
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking6);
|
|
28
|
+
expect(lengthOfStay).toBe(3);
|
|
29
|
+
});
|
|
30
|
+
it('SHOULD compute the correct length of stay for booking7', function () {
|
|
31
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking7);
|
|
32
|
+
expect(lengthOfStay).toBe(2);
|
|
33
|
+
});
|
|
34
|
+
it('SHOULD compute the correct length of stay for booking8', function () {
|
|
35
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking8);
|
|
36
|
+
expect(lengthOfStay).toBe(2);
|
|
37
|
+
});
|
|
38
|
+
it('SHOULD compute the correct length of stay for booking9', function () {
|
|
39
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking9);
|
|
40
|
+
expect(lengthOfStay).toBe(2);
|
|
41
|
+
});
|
|
42
|
+
it('SHOULD compute the correct length of stay for booking10', function () {
|
|
43
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking10);
|
|
44
|
+
expect(lengthOfStay).toBe(3);
|
|
45
|
+
});
|
|
46
|
+
it('SHOULD compute correct accommodation cost for case 12 - A 4-day booking with services that are enabled by default and are seasonal between 2 seasons Extended stay', function () {
|
|
47
|
+
var lengthOfStay = (0, bookingsService_1.getLengthOfStay)(bookingData_1.booking12);
|
|
48
|
+
expect(lengthOfStay).toBe(4);
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=bookingsService.getLengthOfStay.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookingsService.getLengthOfStay.test.js","sourceRoot":"","sources":["../../../../src/services/bookingService/__tests__/bookingsService.getLengthOfStay.test.ts"],"names":[],"mappings":";;AAAA,gEAYyC;AACzC,sDAAoD;AAEpD,QAAQ,CAAC,iCAAiC,EAAE;IAC1C,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE;QAC3D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,sBAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yDAAyD,EAAE;QAC5D,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,uBAAS,CAAC,CAAA;QACvD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oKAAoK,EAAE;QACvK,IAAM,YAAY,GAAW,IAAA,iCAAe,EAAC,uBAAS,CAAC,CAAA;QACvD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var bookingData_1 = require("../../../testingData/bookingData");
|
|
4
|
+
var companyData_1 = require("../../../testingData/companyData");
|
|
5
|
+
var bookingsService_1 = require("../bookingsService");
|
|
6
|
+
describe('WHEN testing .getServicesCost()', function () {
|
|
7
|
+
it('SHOULD compute the correct accommodation cost for case 3 - A 2-day booking with services (that are enabled by default), without OBP and without Length of Stay Discount ', function () {
|
|
8
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking3, companyData_1.company);
|
|
9
|
+
expect(servicesCost).toBe(65);
|
|
10
|
+
});
|
|
11
|
+
it('SHOULD compute the correct accommodation cost for case 4 - A 2-day booking with services (that are enabled by default), with OBP and without Length of Stay Discount ', function () {
|
|
12
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking4, companyData_1.company);
|
|
13
|
+
expect(servicesCost).toBe(55);
|
|
14
|
+
});
|
|
15
|
+
it('SHOULD compute the correct accommodation cost for case 6 - A 3-day booking with services (enabled by default), with a reduced price by OBP and by the Length of Stay Discount ', function () {
|
|
16
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking6, companyData_1.company);
|
|
17
|
+
expect(servicesCost).toBe(40);
|
|
18
|
+
});
|
|
19
|
+
it('SHOULD compute correct accommodation cost for case 11 - A 3-day booking with services that are enabled by default and are seasonal between 2 seasons Extended stay and breakfast', function () {
|
|
20
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking11, companyData_1.company);
|
|
21
|
+
expect(servicesCost).toBe(105);
|
|
22
|
+
});
|
|
23
|
+
it('SHOULD compute correct accommodation cost for case 12 - A 4-day booking with services that are enabled by default and are seasonal between 2 seasons Extended stay', function () {
|
|
24
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking12, companyData_1.company);
|
|
25
|
+
expect(servicesCost).toBe(320);
|
|
26
|
+
});
|
|
27
|
+
it('SHOULD compute correct accommodation cost for case 13 - A 4-day booking with services that are enabled by default and are seasonal between 2 seasons Extended stay', function () {
|
|
28
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking13, companyData_1.company);
|
|
29
|
+
expect(servicesCost).toBe(240);
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=bookingsService.getServicesCost.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookingsService.getServicesCost.test.js","sourceRoot":"","sources":["../../../../src/services/bookingService/__tests__/bookingsService.getServicesCost.test.ts"],"names":[],"mappings":";;AAAA,gEAAgH;AAChH,gEAA0D;AAC1D,sDAAoD;AAEpD,QAAQ,CAAC,iCAAiC,EAAE;IAC1C,EAAE,CAAC,0KAA0K,EAAE;QAC7K,IAAM,YAAY,GAAG,IAAA,iCAAe,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACvD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uKAAuK,EAAE;QAC1K,IAAM,YAAY,GAAG,IAAA,iCAAe,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACvD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gLAAgL,EAAE;QACnL,IAAM,YAAY,GAAG,IAAA,iCAAe,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACvD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kLAAkL,EAAE;QACrL,IAAM,YAAY,GAAG,IAAA,iCAAe,EAAC,uBAAS,EAAE,qBAAO,CAAC,CAAA;QACxD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oKAAoK,EAAE;QACvK,IAAM,YAAY,GAAG,IAAA,iCAAe,EAAC,uBAAS,EAAE,qBAAO,CAAC,CAAA;QACxD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oKAAoK,EAAE;QACvK,IAAM,YAAY,GAAG,IAAA,iCAAe,EAAC,uBAAS,EAAE,qBAAO,CAAC,CAAA;QACxD,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var bookingData_1 = require("../../../testingData/bookingData");
|
|
4
|
+
var companyData_1 = require("../../../testingData/companyData");
|
|
5
|
+
var bookingsService_1 = require("../bookingsService");
|
|
6
|
+
describe('WHEN testing .getTotalCost()', function () {
|
|
7
|
+
it('SHOULD compute the correct accommodation cost for case 1 - A 2 day booking at the normal price without OBP or Length of stay Discount', function () {
|
|
8
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking1, companyData_1.company);
|
|
9
|
+
expect(accommodationCost).toBe(1099.62);
|
|
10
|
+
});
|
|
11
|
+
it('SHOULD compute the correct accommodation cost for case 2 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount', function () {
|
|
12
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking2, companyData_1.company);
|
|
13
|
+
expect(accommodationCost).toBe(248);
|
|
14
|
+
});
|
|
15
|
+
it('SHOULD compute the correct accommodation cost for case 3 - A 2-day booking with services (that are enabled by default), without OBP and without Length of Stay Discount ', function () {
|
|
16
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking3);
|
|
17
|
+
expect(accommodationCost).toBe(298);
|
|
18
|
+
});
|
|
19
|
+
it('SHOULD compute the correct accommodation cost for case 4 - A 2-day booking with services (that are enabled by default), with OBP and without Length of Stay Discount ', function () {
|
|
20
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking4, companyData_1.company);
|
|
21
|
+
expect(accommodationCost).toBe(303);
|
|
22
|
+
});
|
|
23
|
+
it('SHOULD compute the correct accommodation cost for case 5 - A 3-day booking with a reduced price by OBP and by the Length of Stay Discount', function () {
|
|
24
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking5, companyData_1.company);
|
|
25
|
+
expect(accommodationCost).toBe(329.88599999999997);
|
|
26
|
+
});
|
|
27
|
+
it('SHOULD compute the correct accommodation cost for case 6 - A 3-day booking with services (enabled by default), with a reduced price by OBP and by the Length of Stay Discount ', function () {
|
|
28
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking6, companyData_1.company);
|
|
29
|
+
expect(accommodationCost).toBe(381.94);
|
|
30
|
+
});
|
|
31
|
+
it('SHOULD compute the correct accommodation cost for case 7 - A 2-day booking at the normal price without OBP or Length of Stay Discount, with 1 child aged 5 years (0 - 10 range)', function () {
|
|
32
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking7, companyData_1.company);
|
|
33
|
+
expect(accommodationCost).toBe(368);
|
|
34
|
+
});
|
|
35
|
+
it('SHOULD compute the correct accommodation cost for case 8 - A 2-day booking at the normal price with OBP or Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
36
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking8, companyData_1.company);
|
|
37
|
+
expect(accommodationCost).toBe(508);
|
|
38
|
+
});
|
|
39
|
+
it('SHOULD compute the correct accommodation cost for case 9 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
40
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking9, companyData_1.company);
|
|
41
|
+
expect(accommodationCost).toBe(388.79999999999995);
|
|
42
|
+
});
|
|
43
|
+
it('SHOULD compute the correct accommodation cost for case 9 - A 3-day booking with normal price by OBP and with Length of Stay Discount, with 4 children of various age ranges', function () {
|
|
44
|
+
var accommodationCost = (0, bookingsService_1.getTotalCost)(bookingData_1.booking10, companyData_1.company);
|
|
45
|
+
expect(accommodationCost).toBe(681.54);
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=bookingsService.getTotalCost.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookingsService.getTotalCost.test.js","sourceRoot":"","sources":["../../../../src/services/bookingService/__tests__/bookingsService.getTotalCost.test.ts"],"names":[],"mappings":";;AAAA,gEAWyC;AACzC,gEAA0D;AAC1D,sDAAuE;AAEvE,QAAQ,CAAC,8BAA8B,EAAE;IACvC,EAAE,CAAC,uIAAuI,EAAE;QAC1I,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4IAA4I,EAAE;QAC/I,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0KAA0K,EAAE;QAC7K,IAAM,iBAAiB,GAAG,IAAA,sCAAoB,EAAC,sBAAQ,CAAC,CAAA;QACxD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uKAAuK,EAAE;QAC1K,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,2IAA2I,EAAE;QAC9I,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gLAAgL,EAAE;QACnL,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iLAAiL,EAAE;QACpL,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4KAA4K,EAAE;QAC/K,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oLAAoL,EAAE;QACvL,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,sBAAQ,EAAE,qBAAO,CAAC,CAAA;QACzD,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6KAA6K,EAAE;QAChL,IAAM,iBAAiB,GAAG,IAAA,8BAAY,EAAC,uBAAS,EAAE,qBAAO,CAAC,CAAA;QAC1D,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var node_test_1 = require("node:test");
|
|
4
|
+
var bookingsService_1 = require("../bookingsService");
|
|
5
|
+
var bookingData_1 = require("../../../testingData/bookingData");
|
|
6
|
+
var companyData_1 = require("../../../testingData/companyData");
|
|
7
|
+
(0, node_test_1.describe)('WHEN computing the total cost of a booking', function () {
|
|
8
|
+
it('SHOULD compute the correct booking cost for case 1 - A 2 day booking at the normal price without OBP or Length of stay Discount', function () {
|
|
9
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking1);
|
|
10
|
+
expect(accommodationCost).toBe(1341);
|
|
11
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking1);
|
|
12
|
+
expect(breakfastCost).toBe(0);
|
|
13
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking1);
|
|
14
|
+
expect(childrenCost).toBe(0);
|
|
15
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking1);
|
|
16
|
+
expect(childrenTourismTax).toBe(0);
|
|
17
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking1, companyData_1.company);
|
|
18
|
+
expect(servicesCost).toBe(0);
|
|
19
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking1, companyData_1.company);
|
|
20
|
+
expect(lengthOfStayDiscount).toBe(-241.38);
|
|
21
|
+
var bookingTotalCost = accommodationCost + breakfastCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
22
|
+
expect(bookingTotalCost).toBe(1099.62);
|
|
23
|
+
});
|
|
24
|
+
it('SHOULD compute the correct booking cost for case 2 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount', function () {
|
|
25
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking2);
|
|
26
|
+
expect(accommodationCost).toBe(248);
|
|
27
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking2);
|
|
28
|
+
expect(breakfastCost).toBe(0);
|
|
29
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking2);
|
|
30
|
+
expect(childrenCost).toBe(0);
|
|
31
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking2);
|
|
32
|
+
expect(childrenTourismTax).toBe(0);
|
|
33
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking2, companyData_1.company);
|
|
34
|
+
expect(servicesCost).toBe(0);
|
|
35
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking2, companyData_1.company);
|
|
36
|
+
expect(lengthOfStayDiscount).toBe(0);
|
|
37
|
+
var bookingTotalCost = accommodationCost + breakfastCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
38
|
+
expect(bookingTotalCost).toBe(248);
|
|
39
|
+
});
|
|
40
|
+
it('SHOULD compute the correct accommodation cost for case 3 - A 2-day booking with services (that are enabled by default), without OBP and without Length of Stay Discount ', function () {
|
|
41
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking3);
|
|
42
|
+
expect(accommodationCost).toBe(298);
|
|
43
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking3);
|
|
44
|
+
expect(breakfastCost).toBe(0);
|
|
45
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking3);
|
|
46
|
+
expect(childrenCost).toBe(0);
|
|
47
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking3);
|
|
48
|
+
expect(childrenTourismTax).toBe(0);
|
|
49
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking3, companyData_1.company);
|
|
50
|
+
expect(servicesCost).toBe(65);
|
|
51
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking3, companyData_1.company);
|
|
52
|
+
expect(lengthOfStayDiscount).toBe(0);
|
|
53
|
+
var bookingTotalCost = accommodationCost + breakfastCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
54
|
+
expect(bookingTotalCost).toBe(363);
|
|
55
|
+
});
|
|
56
|
+
it('SHOULD compute the correct accommodation cost for case 4 - A 2-day booking with services (that are enabled by default), with OBP and without Length of Stay Discount ', function () {
|
|
57
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking4);
|
|
58
|
+
expect(accommodationCost).toBe(248);
|
|
59
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking4);
|
|
60
|
+
expect(breakfastCost).toBe(0);
|
|
61
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking4);
|
|
62
|
+
expect(childrenCost).toBe(0);
|
|
63
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking4);
|
|
64
|
+
expect(childrenTourismTax).toBe(0);
|
|
65
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking4, companyData_1.company);
|
|
66
|
+
expect(servicesCost).toBe(55);
|
|
67
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking4, companyData_1.company);
|
|
68
|
+
expect(lengthOfStayDiscount).toBe(0);
|
|
69
|
+
var bookingTotalCost = accommodationCost + breakfastCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
70
|
+
expect(bookingTotalCost).toBe(303);
|
|
71
|
+
});
|
|
72
|
+
it('SHOULD compute the correct accommodation cost for case 5 - A 3-day booking with a reduced price by OBP and by the Length of Stay Discount', function () {
|
|
73
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking5);
|
|
74
|
+
expect(accommodationCost).toBe(402.29999999999995);
|
|
75
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking5);
|
|
76
|
+
expect(breakfastCost).toBe(30); // breakfast cost is included in the accommodation cost
|
|
77
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking5);
|
|
78
|
+
expect(childrenCost).toBe(0);
|
|
79
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking5);
|
|
80
|
+
expect(childrenTourismTax).toBe(0);
|
|
81
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking5, companyData_1.company);
|
|
82
|
+
expect(servicesCost).toBe(0);
|
|
83
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking5, companyData_1.company);
|
|
84
|
+
expect(lengthOfStayDiscount).toBe(-72.41399999999999);
|
|
85
|
+
var bookingTotalCost = accommodationCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
86
|
+
expect(bookingTotalCost).toBe(329.88599999999997);
|
|
87
|
+
});
|
|
88
|
+
it('SHOULD compute the correct accommodation cost for case 6 - A 3-day booking with services (enabled by default), with a reduced price by OBP and by the Length of Stay Discount ', function () {
|
|
89
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking6);
|
|
90
|
+
expect(accommodationCost).toBe(417);
|
|
91
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking6);
|
|
92
|
+
expect(breakfastCost).toBe(90); // breakfast cost is included in the accommodation cost
|
|
93
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking6);
|
|
94
|
+
expect(childrenCost).toBe(0);
|
|
95
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking6);
|
|
96
|
+
expect(childrenTourismTax).toBe(0);
|
|
97
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking6, companyData_1.company);
|
|
98
|
+
expect(servicesCost).toBe(40);
|
|
99
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking6, companyData_1.company);
|
|
100
|
+
expect(lengthOfStayDiscount).toBe(-75.06);
|
|
101
|
+
var bookingTotalCost = accommodationCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
102
|
+
expect(bookingTotalCost).toBe(381.94);
|
|
103
|
+
});
|
|
104
|
+
it('SHOULD compute the correct accommodation cost for case 7 - A 2-day booking at the normal price without OBP or Length of Stay Discount, with 1 child aged 5 years (0 - 10 range)', function () {
|
|
105
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking7);
|
|
106
|
+
expect(accommodationCost).toBe(298);
|
|
107
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking7);
|
|
108
|
+
expect(breakfastCost).toBe(50); // breakfast cost is included in the accommodation cost
|
|
109
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking7);
|
|
110
|
+
expect(childrenCost).toBe(60);
|
|
111
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking7);
|
|
112
|
+
expect(childrenTourismTax).toBe(10);
|
|
113
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking7, companyData_1.company);
|
|
114
|
+
expect(servicesCost).toBe(0);
|
|
115
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking7, companyData_1.company);
|
|
116
|
+
expect(lengthOfStayDiscount).toBe(0);
|
|
117
|
+
var bookingTotalCost = accommodationCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
118
|
+
expect(bookingTotalCost).toBe(368);
|
|
119
|
+
});
|
|
120
|
+
it('SHOULD compute the correct accommodation cost for case 8 - A 2-day booking at the normal price with OBP or Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
121
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking8);
|
|
122
|
+
expect(accommodationCost).toBe(298);
|
|
123
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking8);
|
|
124
|
+
expect(breakfastCost).toBe(60);
|
|
125
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking8);
|
|
126
|
+
expect(childrenCost).toBe(180);
|
|
127
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking8);
|
|
128
|
+
expect(childrenTourismTax).toBe(30);
|
|
129
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking8, companyData_1.company);
|
|
130
|
+
expect(servicesCost).toBe(0);
|
|
131
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking8, companyData_1.company);
|
|
132
|
+
expect(lengthOfStayDiscount).toBe(0);
|
|
133
|
+
var bookingTotalCost = accommodationCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
134
|
+
expect(bookingTotalCost).toBe(508);
|
|
135
|
+
});
|
|
136
|
+
it('SHOULD compute the correct accommodation cost for case 9 - A 2-day booking with a reduced price by OBP and without Length of Stay Discount, with 4 children of various age ranges ', function () {
|
|
137
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking9);
|
|
138
|
+
expect(accommodationCost).toBe(178.79999999999998);
|
|
139
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking9);
|
|
140
|
+
expect(breakfastCost).toBe(0);
|
|
141
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking9);
|
|
142
|
+
expect(childrenCost).toBe(160);
|
|
143
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking9);
|
|
144
|
+
expect(childrenTourismTax).toBe(50);
|
|
145
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking9, companyData_1.company);
|
|
146
|
+
expect(servicesCost).toBe(0);
|
|
147
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking9, companyData_1.company);
|
|
148
|
+
expect(lengthOfStayDiscount).toBe(0);
|
|
149
|
+
var bookingTotalCost = accommodationCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
150
|
+
expect(bookingTotalCost).toBe(388.79999999999995);
|
|
151
|
+
});
|
|
152
|
+
it('SHOULD compute the correct accommodation cost for case 10 - A 3-day booking with normal price by OBP and with Length of Stay Discount, with 4 children of various age ranges', function () {
|
|
153
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking10);
|
|
154
|
+
expect(accommodationCost).toBe(447);
|
|
155
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking10);
|
|
156
|
+
expect(breakfastCost).toBe(0);
|
|
157
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking10);
|
|
158
|
+
expect(childrenCost).toBe(240);
|
|
159
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking10);
|
|
160
|
+
expect(childrenTourismTax).toBe(75);
|
|
161
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking10, companyData_1.company);
|
|
162
|
+
expect(servicesCost).toBe(0);
|
|
163
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking10, companyData_1.company);
|
|
164
|
+
expect(lengthOfStayDiscount).toBe(-80.46);
|
|
165
|
+
var bookingTotalCost = accommodationCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
166
|
+
expect(bookingTotalCost).toBe(681.54);
|
|
167
|
+
});
|
|
168
|
+
it('SHOULD compute correct accommodation cost for case 11 - A 3-day booking with services that are enabled by default and are seasonal between 2 seasons Extended stay and breakfast', function () {
|
|
169
|
+
var accommodationCost = (0, bookingsService_1.getAccommodationCost)(bookingData_1.booking11);
|
|
170
|
+
expect(accommodationCost).toBe(447);
|
|
171
|
+
var breakfastCost = (0, bookingsService_1.getBreakfastCost)(bookingData_1.booking11);
|
|
172
|
+
expect(breakfastCost).toBe(120);
|
|
173
|
+
var childrenCost = (0, bookingsService_1.getChildrenCost)(bookingData_1.booking11);
|
|
174
|
+
expect(childrenCost).toBe(0);
|
|
175
|
+
var childrenTourismTax = (0, bookingsService_1.getChildrenTourismTaxCost)(bookingData_1.booking11);
|
|
176
|
+
expect(childrenTourismTax).toBe(0);
|
|
177
|
+
var servicesCost = (0, bookingsService_1.getServicesCost)(bookingData_1.booking11, companyData_1.company);
|
|
178
|
+
expect(servicesCost).toBe(105);
|
|
179
|
+
var lengthOfStayDiscount = (0, bookingsService_1.getLengthOfStayDiscount)(bookingData_1.booking11, companyData_1.company);
|
|
180
|
+
expect(lengthOfStayDiscount).toBe(-80.46);
|
|
181
|
+
var bookingTotalCost = accommodationCost + breakfastCost + childrenCost + childrenTourismTax + servicesCost + lengthOfStayDiscount;
|
|
182
|
+
expect(bookingTotalCost).toBe(591.54);
|
|
183
|
+
});
|
|
184
|
+
});
|
|
185
|
+
//# sourceMappingURL=bookingsService.manualComputeTotalCost.test.js.map
|
package/lib/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookingsService.manualComputeTotalCost.test.js","sourceRoot":"","sources":["../../../../src/services/bookingService/__tests__/bookingsService.manualComputeTotalCost.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -146,13 +146,15 @@ var getServicesCost = function (booking, company) {
|
|
|
146
146
|
(booking.bookingServices || [])
|
|
147
147
|
.filter(function (bookingService) { return bookingService.isActive; })
|
|
148
148
|
.forEach(function (bookingService) {
|
|
149
|
-
var _a;
|
|
149
|
+
var _a, _b;
|
|
150
150
|
var serviceData = bookingService.service || bookingService.data;
|
|
151
151
|
var amount = serviceData.amount;
|
|
152
152
|
var pricingUnit = serviceData.pricingUnit;
|
|
153
153
|
var startDate = serviceData.startDate;
|
|
154
154
|
var endDate = serviceData.endDate;
|
|
155
|
-
var adultsInRoom = (_a = booking.roomBookings.find(function (roomBooking) { return roomBooking.id === bookingService.roomBookingId; })) === null || _a === void 0 ? void 0 : _a.numberOfAdults
|
|
155
|
+
var adultsInRoom = ((_a = booking.roomBookings.find(function (roomBooking) { return roomBooking.id === bookingService.roomBookingId; })) === null || _a === void 0 ? void 0 : _a.numberOfAdults) ||
|
|
156
|
+
((_b = booking.roomBookings.find(function (roomBooking) { return roomBooking.bookingId === booking.id; })) === null || _b === void 0 ? void 0 : _b.numberOfAdults) ||
|
|
157
|
+
numberOfAdults;
|
|
156
158
|
if (!amount || !pricingUnit) {
|
|
157
159
|
return;
|
|
158
160
|
}
|