creditu-common-library 2.1.0 → 2.2.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.
- package/debt/models/dto/debt-inputs.dto.d.ts +6 -1
- package/debt/services/amortization.service.d.ts +5 -5
- package/debt/services/amortization.service.js +1 -1
- package/debt/services/insurance.service.js +1 -3
- package/package.json +1 -1
- package/test/br/installment.service.spec.ts +69 -3
- package/test/br/new-installment.service.specto.ts +6257 -14
- package/test/br/test.ts +5 -3
|
@@ -16,9 +16,14 @@ export declare class DebtInputs {
|
|
|
16
16
|
*/
|
|
17
17
|
paymentNumber: PaymentNumber;
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
19
|
+
* Indica si el pago es mes de gracia (sin ningún pago)
|
|
20
20
|
*/
|
|
21
21
|
isGraceMonth: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Indica si no se amortiza durante esta cuota, manteniendo todos los otros cobros (antiguo comportamiento de isGraceMonth en Brasil).
|
|
24
|
+
* Por defecto es false.
|
|
25
|
+
*/
|
|
26
|
+
isAmortizationPostponed?: boolean;
|
|
22
27
|
/**
|
|
23
28
|
* Numero de meses (cuotas) totales del credito
|
|
24
29
|
*/
|
|
@@ -29,9 +29,9 @@ export declare class AmortizationService {
|
|
|
29
29
|
*/
|
|
30
30
|
getAmortizationGerman(periods: number, balance: number): number;
|
|
31
31
|
private getAmortizationDiffGerman;
|
|
32
|
-
getAmortizationIUB(inputs:
|
|
33
|
-
amortizationIUB:
|
|
34
|
-
amortizationDiff:
|
|
32
|
+
getAmortizationIUB(inputs: DebtInputs, balance: number, annualRate: number): {
|
|
33
|
+
amortizationIUB: number;
|
|
34
|
+
amortizationDiff: number;
|
|
35
35
|
};
|
|
36
36
|
getAmortization(amortizationIUB: number, amortizationDiff: number, postponedInflationaryUpdate: number): number;
|
|
37
37
|
getAmortizationInflation(upperBound: number, amortizationDiff: number, inflationaryUpdate: number): number;
|
|
@@ -41,7 +41,7 @@ export declare class AmortizationService {
|
|
|
41
41
|
postponedInflationaryUpdate: number;
|
|
42
42
|
amortizationInflation: number;
|
|
43
43
|
amortization: number;
|
|
44
|
-
amortizationIUB:
|
|
45
|
-
amortizationDiff:
|
|
44
|
+
amortizationIUB: number;
|
|
45
|
+
amortizationDiff: number;
|
|
46
46
|
};
|
|
47
47
|
}
|
|
@@ -62,7 +62,7 @@ var AmortizationService = /** @class */ (function () {
|
|
|
62
62
|
return this.math.round(this.math.divide(this.math.subtract(balance, previousBalance), periods), 10);
|
|
63
63
|
};
|
|
64
64
|
AmortizationService.prototype.getAmortizationIUB = function (inputs, balance, annualRate) {
|
|
65
|
-
if (inputs.
|
|
65
|
+
if (inputs.isAmortizationPostponed) {
|
|
66
66
|
return { amortizationIUB: 0, amortizationDiff: 0 };
|
|
67
67
|
}
|
|
68
68
|
var amortizationIUB;
|
|
@@ -134,9 +134,7 @@ var InsuranceService = /** @class */ (function () {
|
|
|
134
134
|
propertyInsuranceFee = this.getPropertyInsuranceFeeUsingBalance(inputs, params);
|
|
135
135
|
}
|
|
136
136
|
// TODO: Mover esto dentro del bloque if en PERIODS
|
|
137
|
-
var monthlyCreditInsurance = inputs.monthlyCreditInsurance;
|
|
138
|
-
var monthlyCreditInsuranceExpenses = inputs.monthlyCreditInsuranceExpenses;
|
|
139
|
-
var monthlyCreditInsurancePrize = inputs.monthlyCreditInsurancePrize;
|
|
137
|
+
var monthlyCreditInsurance = inputs.monthlyCreditInsurance, monthlyCreditInsuranceExpenses = inputs.monthlyCreditInsuranceExpenses, monthlyCreditInsurancePrize = inputs.monthlyCreditInsurancePrize;
|
|
140
138
|
var _a = this.getDebtorsLifeInsuranceFee(totalLifeInsuranceFee, inputs.codebtorLifeInsuranceProportion), debtorLifeInsuranceFee = _a.debtorLifeInsuranceFee, codebtorLifeInsuranceFee = _a.codebtorLifeInsuranceFee;
|
|
141
139
|
return {
|
|
142
140
|
totalLifeInsuranceFee: totalLifeInsuranceFee,
|
package/package.json
CHANGED
|
@@ -102,6 +102,7 @@ describe('installment-service for german method', () => {
|
|
|
102
102
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
103
103
|
const paymentNumber = new PaymentNumber(1);
|
|
104
104
|
const isGraceMonth = false;
|
|
105
|
+
const isAmortizationPostponed = false;
|
|
105
106
|
const numberOfMonths = new NumberOfMonths(360);
|
|
106
107
|
const previousBalance = new PreviousBalance(129600);
|
|
107
108
|
const annualRate = 0.075;
|
|
@@ -118,6 +119,7 @@ describe('installment-service for german method', () => {
|
|
|
118
119
|
const inputs: DebtInputs = {
|
|
119
120
|
amortizationMethod,
|
|
120
121
|
isGraceMonth,
|
|
122
|
+
isAmortizationPostponed,
|
|
121
123
|
paymentNumber,
|
|
122
124
|
numberOfMonths,
|
|
123
125
|
previousBalance,
|
|
@@ -229,6 +231,7 @@ describe('installment-service for german method', () => {
|
|
|
229
231
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
230
232
|
const paymentNumber = new PaymentNumber(1);
|
|
231
233
|
const isGraceMonth = false;
|
|
234
|
+
const isAmortizationPostponed = false;
|
|
232
235
|
const numberOfMonths = new NumberOfMonths(360);
|
|
233
236
|
const previousBalance = new PreviousBalance(129600);
|
|
234
237
|
const annualRate = 0.075;
|
|
@@ -245,6 +248,7 @@ describe('installment-service for german method', () => {
|
|
|
245
248
|
const inputs: DebtInputs = {
|
|
246
249
|
amortizationMethod,
|
|
247
250
|
isGraceMonth,
|
|
251
|
+
isAmortizationPostponed,
|
|
248
252
|
paymentNumber,
|
|
249
253
|
numberOfMonths,
|
|
250
254
|
previousBalance,
|
|
@@ -357,6 +361,7 @@ describe('installment-service for german method', () => {
|
|
|
357
361
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
358
362
|
const paymentNumber = new PaymentNumber(1);
|
|
359
363
|
const isGraceMonth = false;
|
|
364
|
+
const isAmortizationPostponed = false;
|
|
360
365
|
const numberOfMonths = new NumberOfMonths(360);
|
|
361
366
|
const previousBalance = new PreviousBalance(129600);
|
|
362
367
|
const annualRate = 0.075;
|
|
@@ -373,6 +378,7 @@ describe('installment-service for german method', () => {
|
|
|
373
378
|
const inputs: DebtInputs = {
|
|
374
379
|
amortizationMethod,
|
|
375
380
|
isGraceMonth,
|
|
381
|
+
isAmortizationPostponed,
|
|
376
382
|
paymentNumber,
|
|
377
383
|
numberOfMonths,
|
|
378
384
|
previousBalance,
|
|
@@ -509,6 +515,7 @@ describe('installment-service for german method', () => {
|
|
|
509
515
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
510
516
|
const paymentNumber = new PaymentNumber(2);
|
|
511
517
|
const isGraceMonth = false;
|
|
518
|
+
const isAmortizationPostponed = false;
|
|
512
519
|
const numberOfMonths = new NumberOfMonths(360);
|
|
513
520
|
const previousBalance = new PreviousBalance(129240.00);
|
|
514
521
|
const annualRate = 0.075;
|
|
@@ -525,6 +532,7 @@ describe('installment-service for german method', () => {
|
|
|
525
532
|
const inputs: DebtInputs = {
|
|
526
533
|
amortizationMethod,
|
|
527
534
|
isGraceMonth,
|
|
535
|
+
isAmortizationPostponed,
|
|
528
536
|
paymentNumber,
|
|
529
537
|
numberOfMonths,
|
|
530
538
|
previousBalance,
|
|
@@ -660,6 +668,7 @@ describe('installment-service for german method', () => {
|
|
|
660
668
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
661
669
|
const paymentNumber = new PaymentNumber(2);
|
|
662
670
|
const isGraceMonth = false;
|
|
671
|
+
const isAmortizationPostponed = false;
|
|
663
672
|
const numberOfMonths = new NumberOfMonths(360);
|
|
664
673
|
const previousBalance = new PreviousBalance(129240.00);
|
|
665
674
|
const annualRate = 0.075;
|
|
@@ -676,6 +685,7 @@ describe('installment-service for german method', () => {
|
|
|
676
685
|
const inputs: DebtInputs = {
|
|
677
686
|
amortizationMethod,
|
|
678
687
|
isGraceMonth,
|
|
688
|
+
isAmortizationPostponed,
|
|
679
689
|
paymentNumber,
|
|
680
690
|
numberOfMonths,
|
|
681
691
|
previousBalance,
|
|
@@ -812,6 +822,7 @@ describe('installment-service for german method', () => {
|
|
|
812
822
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
813
823
|
const paymentNumber = new PaymentNumber(2);
|
|
814
824
|
const isGraceMonth = false;
|
|
825
|
+
const isAmortizationPostponed = false;
|
|
815
826
|
const numberOfMonths = new NumberOfMonths(360);
|
|
816
827
|
const previousBalance = new PreviousBalance(129240.00);
|
|
817
828
|
const annualRate = 0.075;
|
|
@@ -828,6 +839,7 @@ describe('installment-service for german method', () => {
|
|
|
828
839
|
const inputs: DebtInputs = {
|
|
829
840
|
amortizationMethod,
|
|
830
841
|
isGraceMonth,
|
|
842
|
+
isAmortizationPostponed,
|
|
831
843
|
paymentNumber,
|
|
832
844
|
numberOfMonths,
|
|
833
845
|
previousBalance,
|
|
@@ -964,6 +976,7 @@ describe('installment-service for german method', () => {
|
|
|
964
976
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
965
977
|
const paymentNumber = new PaymentNumber(2);
|
|
966
978
|
const isGraceMonth = false;
|
|
979
|
+
const isAmortizationPostponed = false;
|
|
967
980
|
const numberOfMonths = new NumberOfMonths(360);
|
|
968
981
|
const previousBalance = new PreviousBalance(129240.00);
|
|
969
982
|
const annualRate = 0.075;
|
|
@@ -980,6 +993,7 @@ describe('installment-service for german method', () => {
|
|
|
980
993
|
const inputs: DebtInputs = {
|
|
981
994
|
amortizationMethod,
|
|
982
995
|
isGraceMonth,
|
|
996
|
+
isAmortizationPostponed,
|
|
983
997
|
paymentNumber,
|
|
984
998
|
numberOfMonths,
|
|
985
999
|
previousBalance,
|
|
@@ -1116,6 +1130,7 @@ describe('installment-service for german method', () => {
|
|
|
1116
1130
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
1117
1131
|
const paymentNumber = new PaymentNumber(2);
|
|
1118
1132
|
const isGraceMonth = false;
|
|
1133
|
+
const isAmortizationPostponed = false;
|
|
1119
1134
|
const numberOfMonths = new NumberOfMonths(360);
|
|
1120
1135
|
const previousBalance = new PreviousBalance(129240.00);
|
|
1121
1136
|
const annualRate = 0.075;
|
|
@@ -1132,6 +1147,7 @@ describe('installment-service for german method', () => {
|
|
|
1132
1147
|
const inputs: DebtInputs = {
|
|
1133
1148
|
amortizationMethod,
|
|
1134
1149
|
isGraceMonth,
|
|
1150
|
+
isAmortizationPostponed,
|
|
1135
1151
|
paymentNumber,
|
|
1136
1152
|
numberOfMonths,
|
|
1137
1153
|
previousBalance,
|
|
@@ -1157,6 +1173,7 @@ describe('installment-service for german method', () => {
|
|
|
1157
1173
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
1158
1174
|
const paymentNumber = new PaymentNumber(1);
|
|
1159
1175
|
const isGraceMonth = false;
|
|
1176
|
+
const isAmortizationPostponed = false;
|
|
1160
1177
|
const numberOfMonths = new NumberOfMonths(360);
|
|
1161
1178
|
const previousBalance = new PreviousBalance(319480.48); /// 319,480.48
|
|
1162
1179
|
const annualRate = 0.075;
|
|
@@ -1174,6 +1191,7 @@ describe('installment-service for german method', () => {
|
|
|
1174
1191
|
const inputs: DebtInputs = {
|
|
1175
1192
|
amortizationMethod,
|
|
1176
1193
|
isGraceMonth,
|
|
1194
|
+
isAmortizationPostponed,
|
|
1177
1195
|
paymentNumber,
|
|
1178
1196
|
numberOfMonths,
|
|
1179
1197
|
previousBalance,
|
|
@@ -1444,6 +1462,7 @@ describe('installment-service for german method', () => {
|
|
|
1444
1462
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
1445
1463
|
const paymentNumber = new PaymentNumber(2);
|
|
1446
1464
|
const isGraceMonth = false;
|
|
1465
|
+
const isAmortizationPostponed = false;
|
|
1447
1466
|
const numberOfMonths = new NumberOfMonths(360);
|
|
1448
1467
|
const previousBalance = new PreviousBalance(129240.00);
|
|
1449
1468
|
const annualRate = 0.075;
|
|
@@ -1457,6 +1476,7 @@ describe('installment-service for german method', () => {
|
|
|
1457
1476
|
const inputs: DebtInputs = {
|
|
1458
1477
|
amortizationMethod,
|
|
1459
1478
|
isGraceMonth,
|
|
1479
|
+
isAmortizationPostponed,
|
|
1460
1480
|
paymentNumber,
|
|
1461
1481
|
numberOfMonths,
|
|
1462
1482
|
previousBalance,
|
|
@@ -1567,6 +1587,7 @@ describe('installment-service for german method', () => {
|
|
|
1567
1587
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
1568
1588
|
const paymentNumber = new PaymentNumber(1);
|
|
1569
1589
|
const isGraceMonth = false;
|
|
1590
|
+
const isAmortizationPostponed = false;
|
|
1570
1591
|
const numberOfMonths = new NumberOfMonths(360);
|
|
1571
1592
|
const previousBalance = new PreviousBalance(129600);
|
|
1572
1593
|
const annualRate = 0.075;
|
|
@@ -1583,6 +1604,7 @@ describe('installment-service for german method', () => {
|
|
|
1583
1604
|
const inputs: DebtInputs = {
|
|
1584
1605
|
amortizationMethod,
|
|
1585
1606
|
isGraceMonth,
|
|
1607
|
+
isAmortizationPostponed,
|
|
1586
1608
|
paymentNumber,
|
|
1587
1609
|
numberOfMonths,
|
|
1588
1610
|
previousBalance,
|
|
@@ -1701,6 +1723,7 @@ describe('installment-service for french method', () => {
|
|
|
1701
1723
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
1702
1724
|
const paymentNumber = new PaymentNumber(1);
|
|
1703
1725
|
const isGraceMonth = false;
|
|
1726
|
+
const isAmortizationPostponed = false;
|
|
1704
1727
|
const numberOfMonths = new NumberOfMonths(162);
|
|
1705
1728
|
const previousBalance = new PreviousBalance(480000.00); //
|
|
1706
1729
|
const annualRate = 0.085;
|
|
@@ -1714,6 +1737,7 @@ describe('installment-service for french method', () => {
|
|
|
1714
1737
|
const inputs: DebtInputs = {
|
|
1715
1738
|
amortizationMethod,
|
|
1716
1739
|
isGraceMonth,
|
|
1740
|
+
isAmortizationPostponed,
|
|
1717
1741
|
paymentNumber,
|
|
1718
1742
|
numberOfMonths,
|
|
1719
1743
|
previousBalance,
|
|
@@ -1854,6 +1878,7 @@ describe('installment-service for french method', () => {
|
|
|
1854
1878
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
1855
1879
|
const paymentNumber = new PaymentNumber(1);
|
|
1856
1880
|
const isGraceMonth = false;
|
|
1881
|
+
const isAmortizationPostponed = false;
|
|
1857
1882
|
const numberOfMonths = new NumberOfMonths(360);
|
|
1858
1883
|
const previousBalance = new PreviousBalance(78410.25); //
|
|
1859
1884
|
const annualRate = 0.0750;
|
|
@@ -1867,6 +1892,7 @@ describe('installment-service for french method', () => {
|
|
|
1867
1892
|
const inputs: DebtInputs = {
|
|
1868
1893
|
amortizationMethod,
|
|
1869
1894
|
isGraceMonth,
|
|
1895
|
+
isAmortizationPostponed,
|
|
1870
1896
|
paymentNumber,
|
|
1871
1897
|
numberOfMonths,
|
|
1872
1898
|
previousBalance,
|
|
@@ -1981,6 +2007,7 @@ describe('installment-service for french method', () => {
|
|
|
1981
2007
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
1982
2008
|
const paymentNumber = new PaymentNumber(1);
|
|
1983
2009
|
const isGraceMonth = false;
|
|
2010
|
+
const isAmortizationPostponed = false;
|
|
1984
2011
|
const numberOfMonths = new NumberOfMonths(360);
|
|
1985
2012
|
const previousBalance = new PreviousBalance(1109724.78); //
|
|
1986
2013
|
const annualRate = 0.0750;
|
|
@@ -1994,6 +2021,7 @@ describe('installment-service for french method', () => {
|
|
|
1994
2021
|
const inputs: DebtInputs = {
|
|
1995
2022
|
amortizationMethod,
|
|
1996
2023
|
isGraceMonth,
|
|
2024
|
+
isAmortizationPostponed,
|
|
1997
2025
|
paymentNumber,
|
|
1998
2026
|
numberOfMonths,
|
|
1999
2027
|
previousBalance,
|
|
@@ -2137,6 +2165,7 @@ describe('installment-service for french method', () => {
|
|
|
2137
2165
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
2138
2166
|
const paymentNumber = new PaymentNumber(2);
|
|
2139
2167
|
const isGraceMonth = false;
|
|
2168
|
+
const isAmortizationPostponed = false;
|
|
2140
2169
|
const numberOfMonths = new NumberOfMonths(360);
|
|
2141
2170
|
const previousBalance = new PreviousBalance(1110381.4272863977); //
|
|
2142
2171
|
const annualRate = 0.0750;
|
|
@@ -2150,6 +2179,7 @@ describe('installment-service for french method', () => {
|
|
|
2150
2179
|
const inputs: DebtInputs = {
|
|
2151
2180
|
amortizationMethod,
|
|
2152
2181
|
isGraceMonth,
|
|
2182
|
+
isAmortizationPostponed,
|
|
2153
2183
|
paymentNumber,
|
|
2154
2184
|
numberOfMonths,
|
|
2155
2185
|
previousBalance,
|
|
@@ -2283,7 +2313,8 @@ describe('installment-service for french method', () => {
|
|
|
2283
2313
|
};
|
|
2284
2314
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
2285
2315
|
const paymentNumber = new PaymentNumber(1);
|
|
2286
|
-
const isGraceMonth =
|
|
2316
|
+
const isGraceMonth = false;
|
|
2317
|
+
const isAmortizationPostponed = true;
|
|
2287
2318
|
const numberOfMonths = new NumberOfMonths(360);
|
|
2288
2319
|
const previousBalance = new PreviousBalance(207000);
|
|
2289
2320
|
const annualRate = 0.0800;
|
|
@@ -2297,6 +2328,7 @@ describe('installment-service for french method', () => {
|
|
|
2297
2328
|
const inputs: DebtInputs = {
|
|
2298
2329
|
amortizationMethod,
|
|
2299
2330
|
isGraceMonth,
|
|
2331
|
+
isAmortizationPostponed,
|
|
2300
2332
|
paymentNumber,
|
|
2301
2333
|
numberOfMonths,
|
|
2302
2334
|
previousBalance,
|
|
@@ -2434,7 +2466,8 @@ describe('installment-service for french method', () => {
|
|
|
2434
2466
|
};
|
|
2435
2467
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
2436
2468
|
const paymentNumber = new PaymentNumber(2);
|
|
2437
|
-
const isGraceMonth =
|
|
2469
|
+
const isGraceMonth = false;
|
|
2470
|
+
const isAmortizationPostponed = true;
|
|
2438
2471
|
const numberOfMonths = new NumberOfMonths(360);
|
|
2439
2472
|
const previousBalance = new PreviousBalance(208106.5028943578);
|
|
2440
2473
|
const annualRate = 0.0800;
|
|
@@ -2448,6 +2481,7 @@ describe('installment-service for french method', () => {
|
|
|
2448
2481
|
const inputs: DebtInputs = {
|
|
2449
2482
|
amortizationMethod,
|
|
2450
2483
|
isGraceMonth,
|
|
2484
|
+
isAmortizationPostponed,
|
|
2451
2485
|
paymentNumber,
|
|
2452
2486
|
numberOfMonths,
|
|
2453
2487
|
previousBalance,
|
|
@@ -2582,7 +2616,8 @@ describe('installment-service for french method', () => {
|
|
|
2582
2616
|
|
|
2583
2617
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
2584
2618
|
const paymentNumber = new PaymentNumber(1);
|
|
2585
|
-
const isGraceMonth =
|
|
2619
|
+
const isGraceMonth = false;
|
|
2620
|
+
const isAmortizationPostponed = true;
|
|
2586
2621
|
const numberOfMonths = new NumberOfMonths(360);
|
|
2587
2622
|
const previousBalance = new PreviousBalance(297039.67);
|
|
2588
2623
|
const annualRate = 0.0800;
|
|
@@ -2596,6 +2631,7 @@ describe('installment-service for french method', () => {
|
|
|
2596
2631
|
const inputs: DebtInputs = {
|
|
2597
2632
|
amortizationMethod,
|
|
2598
2633
|
isGraceMonth,
|
|
2634
|
+
isAmortizationPostponed,
|
|
2599
2635
|
paymentNumber,
|
|
2600
2636
|
numberOfMonths,
|
|
2601
2637
|
previousBalance,
|
|
@@ -2715,6 +2751,7 @@ describe('installment-service for french method', () => {
|
|
|
2715
2751
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
2716
2752
|
const paymentNumber = new PaymentNumber(1);
|
|
2717
2753
|
const isGraceMonth = false;
|
|
2754
|
+
const isAmortizationPostponed = false;
|
|
2718
2755
|
const numberOfMonths = new NumberOfMonths(360);
|
|
2719
2756
|
const previousBalance = new PreviousBalance(242198.00); //
|
|
2720
2757
|
const annualRate = 0.0875;
|
|
@@ -2728,6 +2765,7 @@ describe('installment-service for french method', () => {
|
|
|
2728
2765
|
const inputs: DebtInputs = {
|
|
2729
2766
|
amortizationMethod,
|
|
2730
2767
|
isGraceMonth,
|
|
2768
|
+
isAmortizationPostponed,
|
|
2731
2769
|
paymentNumber,
|
|
2732
2770
|
numberOfMonths,
|
|
2733
2771
|
previousBalance,
|
|
@@ -2754,6 +2792,7 @@ describe('installment-service for french method', () => {
|
|
|
2754
2792
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
2755
2793
|
const paymentNumber = new PaymentNumber(3);
|
|
2756
2794
|
const isGraceMonth = false;
|
|
2795
|
+
const isAmortizationPostponed = false;
|
|
2757
2796
|
const numberOfMonths = new NumberOfMonths(360);
|
|
2758
2797
|
const previousBalance = new PreviousBalance(164217.58); //
|
|
2759
2798
|
const annualRate = 0.0800;
|
|
@@ -2767,6 +2806,7 @@ describe('installment-service for french method', () => {
|
|
|
2767
2806
|
const inputs: DebtInputs = {
|
|
2768
2807
|
amortizationMethod,
|
|
2769
2808
|
isGraceMonth,
|
|
2809
|
+
isAmortizationPostponed,
|
|
2770
2810
|
paymentNumber,
|
|
2771
2811
|
numberOfMonths,
|
|
2772
2812
|
previousBalance,
|
|
@@ -2894,6 +2934,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
2894
2934
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
2895
2935
|
const paymentNumber = new PaymentNumber(10);
|
|
2896
2936
|
const isGraceMonth = false;
|
|
2937
|
+
const isAmortizationPostponed = false;
|
|
2897
2938
|
const numberOfMonths = new NumberOfMonths(360);
|
|
2898
2939
|
const lateChargesFineRate = 0.02;
|
|
2899
2940
|
const lateChargesInterestRate = 0.01;
|
|
@@ -2907,6 +2948,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
2907
2948
|
const inputs: DebtInputs = {
|
|
2908
2949
|
amortizationMethod,
|
|
2909
2950
|
isGraceMonth,
|
|
2951
|
+
isAmortizationPostponed,
|
|
2910
2952
|
paymentNumber,
|
|
2911
2953
|
numberOfMonths,
|
|
2912
2954
|
previousBalance,
|
|
@@ -3046,6 +3088,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
3046
3088
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
3047
3089
|
const paymentNumber = new PaymentNumber(10);
|
|
3048
3090
|
const isGraceMonth = false;
|
|
3091
|
+
const isAmortizationPostponed = false;
|
|
3049
3092
|
const numberOfMonths = new NumberOfMonths(360);
|
|
3050
3093
|
const lateChargesFineRate = 0.02;
|
|
3051
3094
|
const lateChargesInterestRate = 0.01;
|
|
@@ -3059,6 +3102,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
3059
3102
|
const inputs: DebtInputs = {
|
|
3060
3103
|
amortizationMethod,
|
|
3061
3104
|
isGraceMonth,
|
|
3105
|
+
isAmortizationPostponed,
|
|
3062
3106
|
paymentNumber,
|
|
3063
3107
|
numberOfMonths,
|
|
3064
3108
|
previousBalance,
|
|
@@ -3193,6 +3237,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
3193
3237
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
3194
3238
|
const paymentNumber = new PaymentNumber(10);
|
|
3195
3239
|
const isGraceMonth = false;
|
|
3240
|
+
const isAmortizationPostponed = false;
|
|
3196
3241
|
const numberOfMonths = new NumberOfMonths(360);
|
|
3197
3242
|
const lateChargesFineRate = 0.02;
|
|
3198
3243
|
const lateChargesInterestRate = 0.01;
|
|
@@ -3206,6 +3251,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
3206
3251
|
const inputs: DebtInputs = {
|
|
3207
3252
|
amortizationMethod,
|
|
3208
3253
|
isGraceMonth,
|
|
3254
|
+
isAmortizationPostponed,
|
|
3209
3255
|
paymentNumber,
|
|
3210
3256
|
numberOfMonths,
|
|
3211
3257
|
previousBalance,
|
|
@@ -3340,6 +3386,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
3340
3386
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
3341
3387
|
const paymentNumber = new PaymentNumber(10);
|
|
3342
3388
|
const isGraceMonth = false;
|
|
3389
|
+
const isAmortizationPostponed = false;
|
|
3343
3390
|
const numberOfMonths = new NumberOfMonths(360);
|
|
3344
3391
|
const lateChargesFineRate = 0.02;
|
|
3345
3392
|
const lateChargesInterestRate = 0.01;
|
|
@@ -3353,6 +3400,7 @@ describe('installment-service when deflation considered', () => {
|
|
|
3353
3400
|
const inputs: DebtInputs = {
|
|
3354
3401
|
amortizationMethod,
|
|
3355
3402
|
isGraceMonth,
|
|
3403
|
+
isAmortizationPostponed,
|
|
3356
3404
|
paymentNumber,
|
|
3357
3405
|
numberOfMonths,
|
|
3358
3406
|
previousBalance,
|
|
@@ -3480,6 +3528,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3480
3528
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
3481
3529
|
const paymentNumber = new PaymentNumber(10);
|
|
3482
3530
|
const isGraceMonth = false;
|
|
3531
|
+
const isAmortizationPostponed = false;
|
|
3483
3532
|
const numberOfMonths = new NumberOfMonths(360);
|
|
3484
3533
|
const lateChargesFineRate = 0.02;
|
|
3485
3534
|
const lateChargesInterestRate = 0.01;
|
|
@@ -3493,6 +3542,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3493
3542
|
const inputs: DebtInputs = {
|
|
3494
3543
|
amortizationMethod,
|
|
3495
3544
|
isGraceMonth,
|
|
3545
|
+
isAmortizationPostponed,
|
|
3496
3546
|
paymentNumber,
|
|
3497
3547
|
numberOfMonths,
|
|
3498
3548
|
previousBalance,
|
|
@@ -3619,6 +3669,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3619
3669
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
3620
3670
|
const paymentNumber = new PaymentNumber(10);
|
|
3621
3671
|
const isGraceMonth = false;
|
|
3672
|
+
const isAmortizationPostponed = false;
|
|
3622
3673
|
const numberOfMonths = new NumberOfMonths(360);
|
|
3623
3674
|
const lateChargesFineRate = 0.02;
|
|
3624
3675
|
const lateChargesInterestRate = 0.01;
|
|
@@ -3632,6 +3683,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3632
3683
|
const inputs: DebtInputs = {
|
|
3633
3684
|
amortizationMethod,
|
|
3634
3685
|
isGraceMonth,
|
|
3686
|
+
isAmortizationPostponed,
|
|
3635
3687
|
paymentNumber,
|
|
3636
3688
|
numberOfMonths,
|
|
3637
3689
|
previousBalance,
|
|
@@ -3747,6 +3799,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3747
3799
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
3748
3800
|
const paymentNumber = new PaymentNumber(1);
|
|
3749
3801
|
const isGraceMonth = false;
|
|
3802
|
+
const isAmortizationPostponed = false;
|
|
3750
3803
|
const numberOfMonths = new NumberOfMonths(360);
|
|
3751
3804
|
const previousBalance = new PreviousBalance(129600);
|
|
3752
3805
|
const annualRate = 0.075;
|
|
@@ -3761,6 +3814,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3761
3814
|
const inputs: DebtInputs = {
|
|
3762
3815
|
amortizationMethod,
|
|
3763
3816
|
isGraceMonth,
|
|
3817
|
+
isAmortizationPostponed,
|
|
3764
3818
|
paymentNumber,
|
|
3765
3819
|
numberOfMonths,
|
|
3766
3820
|
previousBalance,
|
|
@@ -3893,6 +3947,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3893
3947
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
3894
3948
|
const paymentNumber = new PaymentNumber(1);
|
|
3895
3949
|
const isGraceMonth = false;
|
|
3950
|
+
const isAmortizationPostponed = false;
|
|
3896
3951
|
const numberOfMonths = new NumberOfMonths(139);
|
|
3897
3952
|
const previousBalance = new PreviousBalance(402158.21);
|
|
3898
3953
|
const lateChargesFineRate = 0.02;
|
|
@@ -3906,6 +3961,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
3906
3961
|
const inputs: DebtInputs = {
|
|
3907
3962
|
amortizationMethod,
|
|
3908
3963
|
isGraceMonth,
|
|
3964
|
+
isAmortizationPostponed,
|
|
3909
3965
|
paymentNumber,
|
|
3910
3966
|
numberOfMonths,
|
|
3911
3967
|
previousBalance,
|
|
@@ -4039,6 +4095,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
4039
4095
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
4040
4096
|
const paymentNumber = new PaymentNumber(1);
|
|
4041
4097
|
const isGraceMonth = false;
|
|
4098
|
+
const isAmortizationPostponed = false;
|
|
4042
4099
|
const numberOfMonths = new NumberOfMonths(139);
|
|
4043
4100
|
const previousBalance = new PreviousBalance(402158.21);
|
|
4044
4101
|
const annualRate = 0.0875;
|
|
@@ -4052,6 +4109,7 @@ describe('installment-service when TAC considered', () => {
|
|
|
4052
4109
|
const inputs: DebtInputs = {
|
|
4053
4110
|
amortizationMethod,
|
|
4054
4111
|
isGraceMonth,
|
|
4112
|
+
isAmortizationPostponed,
|
|
4055
4113
|
paymentNumber,
|
|
4056
4114
|
numberOfMonths,
|
|
4057
4115
|
previousBalance,
|
|
@@ -4182,6 +4240,7 @@ describe('[BRASIL] installment-service when Balance Wallet considered', () => {
|
|
|
4182
4240
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
4183
4241
|
const paymentNumber = new PaymentNumber(10);
|
|
4184
4242
|
const isGraceMonth = false;
|
|
4243
|
+
const isAmortizationPostponed = false;
|
|
4185
4244
|
const numberOfMonths = new NumberOfMonths(360);
|
|
4186
4245
|
const lateChargesFineRate = 0.02;
|
|
4187
4246
|
const lateChargesInterestRate = 0.01;
|
|
@@ -4195,6 +4254,7 @@ describe('[BRASIL] installment-service when Balance Wallet considered', () => {
|
|
|
4195
4254
|
const inputs: DebtInputs = {
|
|
4196
4255
|
amortizationMethod,
|
|
4197
4256
|
isGraceMonth,
|
|
4257
|
+
isAmortizationPostponed,
|
|
4198
4258
|
paymentNumber,
|
|
4199
4259
|
numberOfMonths,
|
|
4200
4260
|
previousBalance,
|
|
@@ -4323,6 +4383,7 @@ describe('[BRASIL] installment-service when Balance Wallet considered', () => {
|
|
|
4323
4383
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
4324
4384
|
const paymentNumber = new PaymentNumber(10);
|
|
4325
4385
|
const isGraceMonth = false;
|
|
4386
|
+
const isAmortizationPostponed = false;
|
|
4326
4387
|
const numberOfMonths = new NumberOfMonths(360);
|
|
4327
4388
|
const lateChargesFineRate = 0.02;
|
|
4328
4389
|
const lateChargesInterestRate = 0.01;
|
|
@@ -4336,6 +4397,7 @@ describe('[BRASIL] installment-service when Balance Wallet considered', () => {
|
|
|
4336
4397
|
const inputs: DebtInputs = {
|
|
4337
4398
|
amortizationMethod,
|
|
4338
4399
|
isGraceMonth,
|
|
4400
|
+
isAmortizationPostponed,
|
|
4339
4401
|
paymentNumber,
|
|
4340
4402
|
numberOfMonths,
|
|
4341
4403
|
previousBalance,
|
|
@@ -4470,6 +4532,7 @@ describe('[BRASIL] installment-service when Balance Wallet considered', () => {
|
|
|
4470
4532
|
const amortizationMethod = AmortizationMethod.FRENCH;
|
|
4471
4533
|
const paymentNumber = new PaymentNumber(1);
|
|
4472
4534
|
const isGraceMonth = false;
|
|
4535
|
+
const isAmortizationPostponed = false;
|
|
4473
4536
|
const numberOfMonths = new NumberOfMonths(139);
|
|
4474
4537
|
// Como es primer pago, se indica el valor de préstamo
|
|
4475
4538
|
const previousBalance = new PreviousBalance(402158.21);
|
|
@@ -4485,6 +4548,7 @@ describe('[BRASIL] installment-service when Balance Wallet considered', () => {
|
|
|
4485
4548
|
const inputs: DebtInputs = {
|
|
4486
4549
|
amortizationMethod,
|
|
4487
4550
|
isGraceMonth,
|
|
4551
|
+
isAmortizationPostponed,
|
|
4488
4552
|
paymentNumber,
|
|
4489
4553
|
numberOfMonths,
|
|
4490
4554
|
previousBalance,
|
|
@@ -4615,6 +4679,7 @@ describe('installment-service when Credit Insurance', () => {
|
|
|
4615
4679
|
const amortizationMethod = AmortizationMethod.GERMAN;
|
|
4616
4680
|
const paymentNumber = new PaymentNumber(10);
|
|
4617
4681
|
const isGraceMonth = false;
|
|
4682
|
+
const isAmortizationPostponed = false;
|
|
4618
4683
|
const numberOfMonths = new NumberOfMonths(360);
|
|
4619
4684
|
const lateChargesFineRate = 0.02;
|
|
4620
4685
|
const lateChargesInterestRate = 0.01;
|
|
@@ -4628,6 +4693,7 @@ describe('installment-service when Credit Insurance', () => {
|
|
|
4628
4693
|
const inputs: DebtInputs = {
|
|
4629
4694
|
amortizationMethod,
|
|
4630
4695
|
isGraceMonth,
|
|
4696
|
+
isAmortizationPostponed,
|
|
4631
4697
|
paymentNumber,
|
|
4632
4698
|
numberOfMonths,
|
|
4633
4699
|
previousBalance,
|