turf-common 1.4.2-beta.7 → 2.0.0

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.
Files changed (65) hide show
  1. package/build/jest.config.js +2 -1
  2. package/build/src/@model.d.ts +1 -0
  3. package/build/src/@model.js +1 -0
  4. package/build/src/enums/booking-history-operation-type.enum.d.ts +4 -1
  5. package/build/src/enums/booking-history-operation-type.enum.js +3 -0
  6. package/build/src/enums/organization-status.enum.d.ts +4 -0
  7. package/build/src/enums/organization-status.enum.js +6 -1
  8. package/build/src/enums/transaction-type.enum.d.ts +2 -1
  9. package/build/src/enums/transaction-type.enum.js +1 -0
  10. package/build/src/enums/valid-coupon-type.enum.d.ts +3 -0
  11. package/build/src/enums/valid-coupon-type.enum.js +18 -0
  12. package/build/src/interface/api/booking-availablity-by-pitch.interface.d.ts +1 -0
  13. package/build/src/interface/api/booking-pending-payment-writeoff.interface.d.ts +10 -0
  14. package/build/src/interface/api/booking-pending-payment-writeoff.interface.js +2 -0
  15. package/build/src/interface/api/create-recurring-slot-booking.interface.d.ts +4 -1
  16. package/build/src/interface/api/create-user.interface.d.ts +1 -1
  17. package/build/src/interface/api/get-availability-by-turf.interface.d.ts +1 -0
  18. package/build/src/interface/api/get-booking-by-organization-id.interface.d.ts +1 -1
  19. package/build/src/interface/api/get-booking-history.interface.d.ts +1 -0
  20. package/build/src/interface/api/get-collection.interface.d.ts +1 -1
  21. package/build/src/interface/api/get-organization-configuration.interface.d.ts +8 -0
  22. package/build/src/interface/api/get-organization-configuration.interface.js +2 -0
  23. package/build/src/interface/api/index.d.ts +3 -0
  24. package/build/src/interface/api/index.js +3 -0
  25. package/build/src/interface/api/login-response.interface.d.ts +4 -1
  26. package/build/src/interface/api/one-slot-booking.interface.d.ts +2 -0
  27. package/build/src/interface/api/staff-member-list.interface.d.ts +1 -1
  28. package/build/src/interface/api/update-organization-configuration.interface.d.ts +6 -0
  29. package/build/src/interface/api/update-organization-configuration.interface.js +2 -0
  30. package/build/src/interface/api/update-recurring-booking.interface.d.ts +1 -0
  31. package/build/src/interface/api/update-staff-member.interface.d.ts +1 -1
  32. package/build/src/interface/entity/organization-entity.interface.d.ts +15 -3
  33. package/build/src/interface/entity/user-entity.interface.d.ts +6 -6
  34. package/build/src/interface/get-booking-by-id.interface.d.ts +2 -2
  35. package/build/src/interface/model/booking-details-model.interface.d.ts +8 -0
  36. package/build/src/interface/user-entity-essential-info.interface.d.ts +1 -1
  37. package/build/src/models/booking-code-model.d.ts +16 -2
  38. package/build/src/models/booking-code-model.js +83 -40
  39. package/build/src/models/charge-model.d.ts +2 -0
  40. package/build/src/models/charge-model.js +41 -11
  41. package/build/src/models/entity/booking-details-model.d.ts +2 -1
  42. package/build/src/models/entity/booking-details-model.js +19 -0
  43. package/build/src/models/entity/booking-entity-model.d.ts +1 -0
  44. package/build/src/models/entity/booking-entity-model.js +3 -0
  45. package/build/src/models/entity/user-model.d.ts +6 -6
  46. package/build/src/models/time-slot-model.d.ts +1 -0
  47. package/build/src/models/time-slot-model.js +3 -0
  48. package/build/src/models/turf-availability-model.d.ts +18 -3
  49. package/build/src/models/turf-availability-model.js +60 -3
  50. package/build/src/models/weekday-time-slot-model.d.ts +12 -0
  51. package/build/src/models/weekday-time-slot-model.js +30 -0
  52. package/build/src/utils/constant.d.ts +3 -0
  53. package/build/src/utils/constant.js +4 -1
  54. package/build/src/utils/date-util.d.ts +8 -1
  55. package/build/src/utils/date-util.js +22 -3
  56. package/build/tests/booking-code/method.spec.d.ts +1 -0
  57. package/build/tests/booking-code/method.spec.js +11 -0
  58. package/build/tests/unit/charges/discount-relative/basic.spec.d.ts +1 -0
  59. package/build/tests/unit/charges/discount-relative/basic.spec.js +209 -0
  60. package/build/tests/unit/charges/extension/basic.amount-fully-paid.spec.d.ts +1 -0
  61. package/build/tests/unit/charges/extension/basic.amount-fully-paid.spec.js +208 -0
  62. package/build/tests/unit/charges/extension/basic.spec.d.ts +1 -0
  63. package/build/tests/unit/charges/extension/basic.spec.js +215 -0
  64. package/build/tests/unit/pricing-plan/basic-scenario.spec.js +1 -1
  65. package/package.json +54 -43
@@ -0,0 +1,209 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var _enum_1 = require("../../../../@enum");
4
+ var _model_1 = require("../../../../src/@model");
5
+ var booking_entity_test_1 = require("../../../utils/models/booking-entity-test");
6
+ describe("AppController (e2e)", function () {
7
+ var initialBookingCode1 = _model_1.BookingCode.getInstanceByComponents(1, 1, 230813, '1000', '1200', '500,500,500,500');
8
+ var initialBookingCode2 = _model_1.BookingCode.getInstanceByComponents(1, 1, 230814, '1000', '1100', '500,500');
9
+ var modify1ExtendBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 1, 230814, '1000', '1200', '500,500,500,500');
10
+ var modify2ExtensionBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1200', '1230', '500');
11
+ var modify3ReduceOldBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1000', '1230', '500,500,500,500,500');
12
+ var modify3ReduceNewBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1000', '1100', '500,500');
13
+ var modify4ExtensionBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '0900', '1000', '500,500');
14
+ var modify5DeleteNewBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '0900', '1100', '500,500,500,500');
15
+ var bookingCodes = [
16
+ initialBookingCode1, initialBookingCode2
17
+ ];
18
+ var initialGrossAmount = bookingCodes
19
+ .map(function (bookingCode) { return bookingCode.getCost(); })
20
+ .reduce(function (a, b) { return a + b; }, 0);
21
+ var totalBookingHours = booking_entity_test_1.BookingEntityTest.getTotalHours(bookingCodes);
22
+ var chargeModel = new _model_1.ChargesModel(initialGrossAmount, 0, "", totalBookingHours, _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL);
23
+ var currentChargeModel = chargeModel;
24
+ it("create", function () {
25
+ var expectedInitialBookingGrossAmount = 3000;
26
+ var expectedAdditionalBookingGrossAmount = 0;
27
+ var expectedCancellationGrossAmount = 0;
28
+ var expectedTotalCancellationCharges = 0;
29
+ var expectedRefundPayable = 0;
30
+ var expectedNetTotal = 2700;
31
+ var expectedAmountPaid = 0;
32
+ var expectedAmountPayable = 2700;
33
+ var expectedTotalRefundedAmount = 0;
34
+ var expectedCouponCode = "100PHU";
35
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_RELATIVE;
36
+ var initialGrossAmount = bookingCodes
37
+ .map(function (bookingCode) { return bookingCode.getCost(); })
38
+ .reduce(function (a, b) { return a + b; }, 0);
39
+ chargeModel = new _model_1.ChargesModel(initialGrossAmount, 0, "100PHU", totalBookingHours, _enum_1.ModificationDiscountPolicy.DISCOUNT_RELATIVE);
40
+ currentChargeModel = chargeModel;
41
+ expect(chargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
42
+ expect(chargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
43
+ expect(chargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
44
+ expect(chargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
45
+ expect(chargeModel.refundPayable).toEqual(expectedRefundPayable);
46
+ expect(chargeModel.netTotal).toEqual(expectedNetTotal);
47
+ expect(chargeModel.amountPaid).toEqual(expectedAmountPaid);
48
+ expect(chargeModel.amountPayable).toEqual(expectedAmountPayable);
49
+ expect(chargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
50
+ expect(chargeModel.couponCode).toEqual(expectedCouponCode);
51
+ expect(chargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
52
+ });
53
+ it("1. modify extend", function () {
54
+ var expectedInitialBookingGrossAmount = 3000;
55
+ var expectedAdditionalBookingGrossAmount = 1000;
56
+ var expectedCancellationGrossAmount = 0;
57
+ var expectedTotalCancellationCharges = 0;
58
+ var expectedRefundPayable = 0;
59
+ var expectedNetTotal = 3600;
60
+ var expectedAmountPaid = 0;
61
+ var expectedAmountPayable = 3600;
62
+ var expectedTotalRefundedAmount = 0;
63
+ var expectedCouponCode = "100PHU";
64
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_RELATIVE;
65
+ if (currentChargeModel)
66
+ currentChargeModel = currentChargeModel.modify({
67
+ oldBookingCode: initialBookingCode2,
68
+ newBookingCode: modify1ExtendBookingCode,
69
+ });
70
+ expect(currentChargeModel).not.toBeNull();
71
+ if (currentChargeModel) {
72
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
73
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
74
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
75
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
76
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
77
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
78
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
79
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
80
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
81
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
82
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
83
+ }
84
+ });
85
+ it("2. extension", function () {
86
+ var expectedInitialBookingGrossAmount = 3000;
87
+ var expectedAdditionalBookingGrossAmount = 1000 + 500;
88
+ var expectedCancellationGrossAmount = 0;
89
+ var expectedTotalCancellationCharges = 0;
90
+ var expectedRefundPayable = 0;
91
+ var expectedNetTotal = 3600 + 450;
92
+ var expectedAmountPaid = 0;
93
+ var expectedAmountPayable = 3600 + 450;
94
+ var expectedTotalRefundedAmount = 0;
95
+ var expectedCouponCode = "100PHU";
96
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_RELATIVE;
97
+ if (currentChargeModel)
98
+ currentChargeModel = currentChargeModel.extension(modify2ExtensionBookingCode);
99
+ expect(currentChargeModel).not.toBeNull();
100
+ if (currentChargeModel) {
101
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
102
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
103
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
104
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
105
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
106
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
107
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
108
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
109
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
110
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
111
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
112
+ }
113
+ });
114
+ it("3. modify reduce", function () {
115
+ var expectedInitialBookingGrossAmount = 3000;
116
+ var expectedAdditionalBookingGrossAmount = 1500;
117
+ var expectedCancellationGrossAmount = 0 + 1500;
118
+ var expectedTotalCancellationCharges = 0 + 100;
119
+ var expectedRefundPayable = 0;
120
+ var expectedNetTotal = 4050 - 1500 + 150;
121
+ var expectedAmountPaid = 0;
122
+ var expectedAmountPayable = 4050 - 1500 + 150 + 100;
123
+ var expectedTotalRefundedAmount = 0;
124
+ var expectedCouponCode = "100PHU";
125
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_RELATIVE;
126
+ if (currentChargeModel)
127
+ currentChargeModel = currentChargeModel.modify({
128
+ oldBookingCode: modify3ReduceOldBookingCode,
129
+ newBookingCode: modify3ReduceNewBookingCode,
130
+ cancellationUnit: "100U",
131
+ });
132
+ expect(currentChargeModel).not.toBeNull();
133
+ if (currentChargeModel) {
134
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
135
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
136
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
137
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
138
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
139
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
140
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
141
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
142
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
143
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
144
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
145
+ }
146
+ });
147
+ it("4. extension", function () {
148
+ var expectedInitialBookingGrossAmount = 3000;
149
+ var expectedAdditionalBookingGrossAmount = 1500 + 1000;
150
+ var expectedCancellationGrossAmount = 1500;
151
+ var expectedTotalCancellationCharges = 100;
152
+ var expectedRefundPayable = 0;
153
+ var expectedNetTotal = 2700 + 900;
154
+ var expectedAmountPaid = 0;
155
+ var expectedAmountPayable = 2800 + 900;
156
+ var expectedTotalRefundedAmount = 0;
157
+ var expectedCouponCode = "100PHU";
158
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_RELATIVE;
159
+ if (currentChargeModel)
160
+ currentChargeModel = currentChargeModel.extension(modify4ExtensionBookingCode);
161
+ expect(currentChargeModel).not.toBeNull();
162
+ if (currentChargeModel) {
163
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
164
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
165
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
166
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
167
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
168
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
169
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
170
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
171
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
172
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
173
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
174
+ }
175
+ });
176
+ it("5. delete", function () {
177
+ var expectedInitialBookingGrossAmount = 3000;
178
+ var expectedAdditionalBookingGrossAmount = 2500;
179
+ var expectedCancellationGrossAmount = 1500 + 2000;
180
+ var expectedTotalCancellationCharges = 100 + 100;
181
+ var expectedRefundPayable = 0;
182
+ var expectedNetTotal = 3600 - 2000 + 200;
183
+ var expectedAmountPaid = 0;
184
+ var expectedAmountPayable = 3700 - 2000 + 200 + 100;
185
+ var expectedTotalRefundedAmount = 0;
186
+ var expectedCouponCode = "100PHU";
187
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_RELATIVE;
188
+ if (currentChargeModel) {
189
+ currentChargeModel = currentChargeModel.modify({
190
+ oldBookingCode: modify5DeleteNewBookingCode,
191
+ cancellationUnit: "100U",
192
+ });
193
+ }
194
+ expect(currentChargeModel).not.toBeNull();
195
+ if (currentChargeModel) {
196
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
197
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
198
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
199
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
200
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
201
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
202
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
203
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
204
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
205
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
206
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
207
+ }
208
+ });
209
+ });
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var _enum_1 = require("../../../../@enum");
4
+ var _model_1 = require("../../../../src/@model");
5
+ var booking_entity_test_1 = require("../../../utils/models/booking-entity-test");
6
+ describe("AppController (e2e)", function () {
7
+ var initialBookingCode1 = _model_1.BookingCode.getInstanceByComponents(1, 1, 230813, '1000', '1200', '500,500,500,500');
8
+ var initialBookingCode2 = _model_1.BookingCode.getInstanceByComponents(1, 1, 230814, '1000', '1100', '500,500');
9
+ var modify1ExtendBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 1, 230814, '1000', '1200', '500,500,500,500');
10
+ var modify2ExtensionBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1200', '1230', '500');
11
+ var modify3ReduceOldBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1000', '1230', '500,500,500,500,500');
12
+ var modify3ReduceNewBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1000', '1100', '500,500');
13
+ var modify4ExtensionBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '0900', '1000', '500,500');
14
+ var modify5DeleteNewBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '0900', '1100', '500,500,500,500');
15
+ var bookingCodes = [
16
+ initialBookingCode1, initialBookingCode2
17
+ ];
18
+ var initialGrossAmount = bookingCodes
19
+ .map(function (bookingCode) { return bookingCode.getCost(); })
20
+ .reduce(function (a, b) { return a + b; }, 0);
21
+ var totalBookingHours = booking_entity_test_1.BookingEntityTest.getTotalHours(bookingCodes);
22
+ var chargeModel = new _model_1.ChargesModel(initialGrossAmount, 0, "", totalBookingHours, _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL);
23
+ var currentChargeModel = chargeModel;
24
+ it("create", function () {
25
+ var expectedInitialBookingGrossAmount = 3000;
26
+ var expectedAdditionalBookingGrossAmount = 0;
27
+ var expectedCancellationGrossAmount = 0;
28
+ var expectedTotalCancellationCharges = 0;
29
+ var expectedRefundPayable = 0;
30
+ var expectedNetTotal = 2700;
31
+ var expectedAmountPaid = 2700;
32
+ var expectedAmountPayable = 0;
33
+ var expectedTotalRefundedAmount = 0;
34
+ var expectedCouponCode = "100PHU";
35
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
36
+ var initialGrossAmount = bookingCodes
37
+ .map(function (bookingCode) { return bookingCode.getCost(); })
38
+ .reduce(function (a, b) { return a + b; }, 0);
39
+ chargeModel = new _model_1.ChargesModel(initialGrossAmount, 2700, "100PHU", totalBookingHours, _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL);
40
+ currentChargeModel = chargeModel;
41
+ expect(chargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
42
+ expect(chargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
43
+ expect(chargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
44
+ expect(chargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
45
+ expect(chargeModel.refundPayable).toEqual(expectedRefundPayable);
46
+ expect(chargeModel.netTotal).toEqual(expectedNetTotal);
47
+ expect(chargeModel.amountPaid).toEqual(expectedAmountPaid);
48
+ expect(chargeModel.amountPayable).toEqual(expectedAmountPayable);
49
+ expect(chargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
50
+ expect(chargeModel.couponCode).toEqual(expectedCouponCode);
51
+ expect(chargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
52
+ });
53
+ it("1. modify extend", function () {
54
+ var expectedInitialBookingGrossAmount = 3000;
55
+ var expectedAdditionalBookingGrossAmount = 1000;
56
+ var expectedCancellationGrossAmount = 0;
57
+ var expectedTotalCancellationCharges = 0;
58
+ var expectedRefundPayable = 0;
59
+ var expectedNetTotal = 2700 + 900;
60
+ var expectedAmountPaid = 2700;
61
+ var expectedAmountPayable = 0 + 900;
62
+ var expectedTotalRefundedAmount = 0;
63
+ var expectedCouponCode = "100PHU";
64
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
65
+ if (currentChargeModel)
66
+ currentChargeModel = currentChargeModel.modify({
67
+ oldBookingCode: initialBookingCode2,
68
+ newBookingCode: modify1ExtendBookingCode,
69
+ });
70
+ expect(currentChargeModel).not.toBeNull();
71
+ if (currentChargeModel) {
72
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
73
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
74
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
75
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
76
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
77
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
78
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
79
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
80
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
81
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
82
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
83
+ }
84
+ });
85
+ it("2. extension", function () {
86
+ var expectedInitialBookingGrossAmount = 3000;
87
+ var expectedAdditionalBookingGrossAmount = 1000 + 500;
88
+ var expectedCancellationGrossAmount = 0;
89
+ var expectedTotalCancellationCharges = 0;
90
+ var expectedRefundPayable = 0;
91
+ var expectedNetTotal = 3600 + 450;
92
+ var expectedAmountPaid = 2700;
93
+ var expectedAmountPayable = 900 + 450;
94
+ var expectedTotalRefundedAmount = 0;
95
+ var expectedCouponCode = "100PHU";
96
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
97
+ if (currentChargeModel)
98
+ currentChargeModel = currentChargeModel.extension(modify2ExtensionBookingCode);
99
+ expect(currentChargeModel).not.toBeNull();
100
+ if (currentChargeModel) {
101
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
102
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
103
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
104
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
105
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
106
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
107
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
108
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
109
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
110
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
111
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
112
+ }
113
+ });
114
+ it("3. modify reduce", function () {
115
+ var expectedInitialBookingGrossAmount = 3000;
116
+ var expectedAdditionalBookingGrossAmount = 1500;
117
+ var expectedCancellationGrossAmount = 0 + 1500;
118
+ var expectedTotalCancellationCharges = 0 + 100;
119
+ var expectedNetTotal = 4050 - 1500 + 450;
120
+ var expectedAmountPaid = 2700;
121
+ var expectedAmountPayable = 1350 + 450 + 100 - 1500;
122
+ var expectedRefundPayable = 0;
123
+ var expectedTotalRefundedAmount = 0;
124
+ var expectedCouponCode = "";
125
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
126
+ if (currentChargeModel)
127
+ currentChargeModel = currentChargeModel.modify({
128
+ oldBookingCode: modify3ReduceOldBookingCode,
129
+ newBookingCode: modify3ReduceNewBookingCode,
130
+ cancellationUnit: "100U",
131
+ });
132
+ expect(currentChargeModel).not.toBeNull();
133
+ if (currentChargeModel) {
134
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
135
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
136
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
137
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
138
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
139
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
140
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
141
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
142
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
143
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
144
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
145
+ }
146
+ });
147
+ it("4. extension", function () {
148
+ var expectedInitialBookingGrossAmount = 3000;
149
+ var expectedAdditionalBookingGrossAmount = 1500 + 1000;
150
+ var expectedCancellationGrossAmount = 1500;
151
+ var expectedTotalCancellationCharges = 100;
152
+ var expectedNetTotal = 3000 + 1000;
153
+ var expectedAmountPaid = 2700;
154
+ var expectedAmountPayable = 400 + 1000;
155
+ var expectedRefundPayable = 0;
156
+ var expectedTotalRefundedAmount = 0;
157
+ var expectedCouponCode = "";
158
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
159
+ if (currentChargeModel)
160
+ currentChargeModel = currentChargeModel.extension(modify4ExtensionBookingCode);
161
+ expect(currentChargeModel).not.toBeNull();
162
+ if (currentChargeModel) {
163
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
164
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
165
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
166
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
167
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
168
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
169
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
170
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
171
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
172
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
173
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
174
+ }
175
+ });
176
+ it("5. delete", function () {
177
+ var expectedInitialBookingGrossAmount = 3000;
178
+ var expectedAdditionalBookingGrossAmount = 2500;
179
+ var expectedCancellationGrossAmount = 1500 + 2000;
180
+ var expectedTotalCancellationCharges = 100 + 100;
181
+ var expectedNetTotal = 4000 - 2000;
182
+ var expectedAmountPaid = 2700;
183
+ var expectedAmountPayable = 1400 - 2000 + 100 < 0 ? 0 : 1400 - 2000 + 100;
184
+ var expectedRefundPayable = 1400 - 2000 + 100 < 0 ? Math.abs(1400 - 2000 + 100) : 0;
185
+ var expectedTotalRefundedAmount = 0;
186
+ var expectedCouponCode = "";
187
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
188
+ if (currentChargeModel)
189
+ currentChargeModel = currentChargeModel.modify({
190
+ oldBookingCode: modify5DeleteNewBookingCode,
191
+ cancellationUnit: "100U",
192
+ });
193
+ expect(currentChargeModel).not.toBeNull();
194
+ if (currentChargeModel) {
195
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
196
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
197
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
198
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
199
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
200
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
201
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
202
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
203
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
204
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
205
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
206
+ }
207
+ });
208
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var _enum_1 = require("../../../../@enum");
4
+ var _model_1 = require("../../../../src/@model");
5
+ var booking_entity_test_1 = require("../../../utils/models/booking-entity-test");
6
+ describe("AppController (e2e)", function () {
7
+ var initialBookingCode1 = _model_1.BookingCode.getInstanceByComponents(1, 1, 230813, '1000', '1200', '500,500,500,500');
8
+ var initialBookingCode2 = _model_1.BookingCode.getInstanceByComponents(1, 1, 230814, '1000', '1100', '500,500');
9
+ var modify1ExtendBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 1, 230814, '1000', '1200', '500,500,500,500');
10
+ var modify2ExtensionBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1200', '1230', '500');
11
+ var modify3ReduceOldBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1000', '1230', '500,500,500,500,500');
12
+ var modify3ReduceNewBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '1000', '1100', '500,500');
13
+ var modify4ExtensionBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '0900', '1000', '500,500');
14
+ var modify5DeleteNewBookingCode = _model_1.BookingCode.getInstanceByComponents(1, 2, 230814, '0900', '1100', '500,500,500,500');
15
+ var bookingCodes = [
16
+ initialBookingCode1, initialBookingCode2
17
+ ];
18
+ var initialGrossAmount = bookingCodes
19
+ .map(function (bookingCode) { return bookingCode.getCost(); })
20
+ .reduce(function (a, b) { return a + b; }, 0);
21
+ var totalBookingHours = booking_entity_test_1.BookingEntityTest.getTotalHours(bookingCodes);
22
+ var chargeModel = new _model_1.ChargesModel(initialGrossAmount, 0, "", totalBookingHours, _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL);
23
+ var currentChargeModel = chargeModel;
24
+ it("create", function () {
25
+ var expectedInitialBookingGrossAmount = 3000;
26
+ var expectedAdditionalBookingGrossAmount = 0;
27
+ var expectedCancellationGrossAmount = 0;
28
+ var expectedTotalCancellationCharges = 0;
29
+ var expectedRefundPayable = 0;
30
+ var expectedNetTotal = 2700;
31
+ var expectedAmountPaid = 0;
32
+ var expectedAmountPayable = 2700;
33
+ var expectedTotalRefundedAmount = 0;
34
+ var expectedCouponCode = "100PHU";
35
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
36
+ var expectedTotalBookingHours = 3;
37
+ var initialGrossAmount = bookingCodes
38
+ .map(function (bookingCode) { return bookingCode.getCost(); })
39
+ .reduce(function (a, b) { return a + b; }, 0);
40
+ chargeModel = new _model_1.ChargesModel(initialGrossAmount, 0, "100PHU", totalBookingHours, _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL);
41
+ currentChargeModel = chargeModel;
42
+ expect(chargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
43
+ expect(chargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
44
+ expect(chargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
45
+ expect(chargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
46
+ expect(chargeModel.refundPayable).toEqual(expectedRefundPayable);
47
+ expect(chargeModel.netTotal).toEqual(expectedNetTotal);
48
+ expect(chargeModel.amountPaid).toEqual(expectedAmountPaid);
49
+ expect(chargeModel.amountPayable).toEqual(expectedAmountPayable);
50
+ expect(chargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
51
+ expect(chargeModel.couponCode).toEqual(expectedCouponCode);
52
+ expect(chargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
53
+ expect(chargeModel.totalBookingHours).toEqual(expectedTotalBookingHours);
54
+ });
55
+ it("1. modify extend", function () {
56
+ var expectedInitialBookingGrossAmount = 3000;
57
+ var expectedAdditionalBookingGrossAmount = 1000;
58
+ var expectedCancellationGrossAmount = 0;
59
+ var expectedTotalCancellationCharges = 0;
60
+ var expectedRefundPayable = 0;
61
+ var expectedNetTotal = 3600;
62
+ var expectedAmountPaid = 0;
63
+ var expectedAmountPayable = 3600;
64
+ var expectedTotalRefundedAmount = 0;
65
+ var expectedCouponCode = "100PHU";
66
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
67
+ var expectedTotalBookingHours = 4;
68
+ if (currentChargeModel)
69
+ currentChargeModel = currentChargeModel.modify({
70
+ oldBookingCode: initialBookingCode2,
71
+ newBookingCode: modify1ExtendBookingCode,
72
+ });
73
+ expect(currentChargeModel).not.toBeNull();
74
+ if (currentChargeModel) {
75
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
76
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
77
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
78
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
79
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
80
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
81
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
82
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
83
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
84
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
85
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
86
+ expect(currentChargeModel.totalBookingHours).toEqual(expectedTotalBookingHours);
87
+ }
88
+ });
89
+ it("2. extension", function () {
90
+ var expectedInitialBookingGrossAmount = 3000;
91
+ var expectedAdditionalBookingGrossAmount = 1000 + 500;
92
+ var expectedCancellationGrossAmount = 0;
93
+ var expectedTotalCancellationCharges = 0;
94
+ var expectedRefundPayable = 0;
95
+ var expectedNetTotal = 3600 + 450;
96
+ var expectedAmountPaid = 0;
97
+ var expectedAmountPayable = 3600 + 450;
98
+ var expectedTotalRefundedAmount = 0;
99
+ var expectedCouponCode = "100PHU";
100
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
101
+ var expectedTotalBookingHours = 4.5;
102
+ if (currentChargeModel)
103
+ currentChargeModel = currentChargeModel.extension(modify2ExtensionBookingCode);
104
+ expect(currentChargeModel).not.toBeNull();
105
+ if (currentChargeModel) {
106
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
107
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
108
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
109
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
110
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
111
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
112
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
113
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
114
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
115
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
116
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
117
+ expect(currentChargeModel.totalBookingHours).toEqual(expectedTotalBookingHours);
118
+ }
119
+ });
120
+ it("3. modify reduce", function () {
121
+ var expectedInitialBookingGrossAmount = 3000;
122
+ var expectedAdditionalBookingGrossAmount = 1500;
123
+ var expectedCancellationGrossAmount = 0 + 1500;
124
+ var expectedTotalCancellationCharges = 0 + 100;
125
+ var expectedRefundPayable = 0;
126
+ var expectedNetTotal = 3000;
127
+ var expectedAmountPaid = 0;
128
+ var expectedAmountPayable = 3000 + 100;
129
+ var expectedTotalRefundedAmount = 0;
130
+ var expectedCouponCode = "";
131
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
132
+ if (currentChargeModel)
133
+ currentChargeModel = currentChargeModel.modify({
134
+ oldBookingCode: modify3ReduceOldBookingCode,
135
+ newBookingCode: modify3ReduceNewBookingCode,
136
+ cancellationUnit: "100U",
137
+ });
138
+ expect(currentChargeModel).not.toBeNull();
139
+ if (currentChargeModel) {
140
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
141
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
142
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
143
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
144
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
145
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
146
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
147
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
148
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
149
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
150
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
151
+ }
152
+ });
153
+ it("4. extension", function () {
154
+ var expectedInitialBookingGrossAmount = 3000;
155
+ var expectedAdditionalBookingGrossAmount = 1500 + 1000;
156
+ var expectedCancellationGrossAmount = 1500;
157
+ var expectedTotalCancellationCharges = 100;
158
+ var expectedRefundPayable = 0;
159
+ var expectedNetTotal = 3000 + 1000;
160
+ var expectedAmountPaid = 0;
161
+ var expectedAmountPayable = 3100 + 1000;
162
+ var expectedTotalRefundedAmount = 0;
163
+ var expectedCouponCode = "";
164
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
165
+ if (currentChargeModel)
166
+ currentChargeModel = currentChargeModel.extension(modify4ExtensionBookingCode);
167
+ expect(currentChargeModel).not.toBeNull();
168
+ if (currentChargeModel) {
169
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
170
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
171
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
172
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
173
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
174
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
175
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
176
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
177
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
178
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
179
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
180
+ }
181
+ });
182
+ it("5. delete", function () {
183
+ var expectedInitialBookingGrossAmount = 3000;
184
+ var expectedAdditionalBookingGrossAmount = 2500;
185
+ var expectedCancellationGrossAmount = 1500 + 2000;
186
+ var expectedTotalCancellationCharges = 100 + 100;
187
+ var expectedRefundPayable = 0;
188
+ var expectedNetTotal = 4000 - 2000;
189
+ var expectedAmountPaid = 0;
190
+ var expectedAmountPayable = 4100 + 100 - 2000;
191
+ var expectedTotalRefundedAmount = 0;
192
+ var expectedCouponCode = "";
193
+ var expectedDiscountPolicy = _enum_1.ModificationDiscountPolicy.DISCOUNT_CONDITIONAL;
194
+ if (currentChargeModel) {
195
+ currentChargeModel = currentChargeModel.modify({
196
+ oldBookingCode: modify5DeleteNewBookingCode,
197
+ cancellationUnit: "100U",
198
+ });
199
+ }
200
+ expect(currentChargeModel).not.toBeNull();
201
+ if (currentChargeModel) {
202
+ expect(currentChargeModel.initialBookingGrossAmount).toEqual(expectedInitialBookingGrossAmount);
203
+ expect(currentChargeModel.additionalBookingGrossAmount).toEqual(expectedAdditionalBookingGrossAmount);
204
+ expect(currentChargeModel.cancelledBookingGrossAmount).toEqual(expectedCancellationGrossAmount);
205
+ expect(currentChargeModel.totalCancellationCharges).toEqual(expectedTotalCancellationCharges);
206
+ expect(currentChargeModel.refundPayable).toEqual(expectedRefundPayable);
207
+ expect(currentChargeModel.netTotal).toEqual(expectedNetTotal);
208
+ expect(currentChargeModel.amountPaid).toEqual(expectedAmountPaid);
209
+ expect(currentChargeModel.amountPayable).toEqual(expectedAmountPayable);
210
+ expect(currentChargeModel.totalRefundedAmount).toEqual(expectedTotalRefundedAmount);
211
+ expect(currentChargeModel.couponCode).toEqual(expectedCouponCode);
212
+ expect(currentChargeModel.discountPolicy).toEqual(expectedDiscountPolicy);
213
+ }
214
+ });
215
+ });
@@ -153,7 +153,7 @@ describe("AppController (e2e)", function () {
153
153
  for (var _l = 0, expectedBillingCycleKeys_3 = expectedBillingCycleKeys; _l < expectedBillingCycleKeys_3.length; _l++) {
154
154
  var billingCycleKey = expectedBillingCycleKeys_3[_l];
155
155
  var subscribedPricingPlanModelV2 = new _model_1.SubscribedPricingPlanModelV2(pricingPlanModelV2, pitchCount, billingCycleKey);
156
- console.log("---- Pitch Count: '".concat(subscribedPricingPlanModelV2.pitchCount, "', Billing: '").concat(subscribedPricingPlanModelV2.billingCycle, "'"));
156
+ // console.log(`---- Pitch Count: '${subscribedPricingPlanModelV2.pitchCount}', Billing: '${subscribedPricingPlanModelV2.billingCycle}'`)
157
157
  // TODO: Need to check the usability of the below method
158
158
  // console.log(`subscribedPricingPlanModelV2.getMonths() : ${subscribedPricingPlanModelV2.getMonths()}`)
159
159
  // TODO: Needs to change the name to getBasePriceByPitchSlab for Monthly