|
21 | 21 | config_file_path = Path(__file__).resolve().parent.parent / 'config.json' |
22 | 22 |
|
23 | 23 | def closeTo(a,b,r=2): |
24 | | - assert math.floor(a * 10**r)/10**r == math.floor(b * 10**r)/10**r |
| 24 | + assert math.floor(a * 10**r)/10**r == math.floor(b * 10**r)/10**r, f"Not close to {a}/{math.floor(a * 10**r)/10**r} {b}/{math.floor(b * 10**r)/10**r}" |
25 | 25 |
|
26 | 26 | def filterTxn(rs, f, rg): |
27 | 27 | return [ r for r in rs if re.match(rg, r[f])] |
@@ -51,9 +51,9 @@ def eqDataFrameByLens(a, b, l, fn=None, msg=""): |
51 | 51 | da = a & l.get() |
52 | 52 | db = b & l.get() |
53 | 53 | if fn is None: |
54 | | - eqDataFrame(da, db, msg=msg) |
| 54 | + eqDataFrame(da, db, msg=msg) |
55 | 55 | else: |
56 | | - eqDataFrame(fn(da), fn(db), msg=msg) |
| 56 | + eqDataFrame(fn(da), fn(db), msg=msg) |
57 | 57 |
|
58 | 58 |
|
59 | 59 | def seniorTest(x, y): |
@@ -215,21 +215,21 @@ def test_asset_01(setup_api): |
215 | 215 |
|
216 | 216 | # m with 60 remaining term |
217 | 217 | r = setup_api.runAsset("2020-01-02" |
218 | | - ,[m & lens[2]['remainTerm'].set(60)] |
219 | | - ,poolAssump=("Pool" |
220 | | - ,("Mortgage", None, {"PSA":1.0}, None, None) |
221 | | - ,None |
222 | | - ,None) |
223 | | - ,read=True) |
| 218 | + ,[m & lens[2]['remainTerm'].set(60)] |
| 219 | + ,poolAssump=("Pool" |
| 220 | + ,("Mortgage", None, {"PSA":1.0}, None, None) |
| 221 | + ,None |
| 222 | + ,None) |
| 223 | + ,read=True) |
224 | 224 | assert toCprRates(r[0])[:60] == ([ _/1000 for _ in range(2,62,2)][20:] + [0.06]*50) |
225 | 225 |
|
226 | 226 | r = setup_api.runAsset("2020-01-02" |
227 | | - ,[m & lens[2]['remainTerm'].set(10)] |
228 | | - ,poolAssump=("Pool" |
229 | | - ,("Mortgage", None, {"PSA":1.0}, None, None) |
230 | | - ,None |
231 | | - ,None) |
232 | | - ,read=True) |
| 227 | + ,[m & lens[2]['remainTerm'].set(10)] |
| 228 | + ,poolAssump=("Pool" |
| 229 | + ,("Mortgage", None, {"PSA":1.0}, None, None) |
| 230 | + ,None |
| 231 | + ,None) |
| 232 | + ,read=True) |
233 | 233 | assert toCprRates(r[0])[:10] == ([0.06]*10) |
234 | 234 |
|
235 | 235 | # test on cutoff date |
@@ -905,7 +905,7 @@ def test_sensitivity_01(setup_api): |
905 | 905 | assert rs.keys() == {"Normal","Shrink"}, "sensitivity run should have two results" |
906 | 906 |
|
907 | 907 | assert rs['Shrink']['bonds']['A1'].principal.sum().item() == 900 |
908 | | - assert closeTo(rs['Normal']['bonds']['A1'].principal.sum().item() ,1000) |
| 908 | + closeTo(float(rs['Normal']['bonds']['A1'].principal.sum().item()) ,1000) |
909 | 909 |
|
910 | 910 |
|
911 | 911 | @pytest.mark.sensitivity |
|
0 commit comments