(T)
| 87 | |
| 88 | @pytest.mark.parametrize("T", T) |
| 89 | def test_aamp_stimp_max_m(T): |
| 90 | threshold = 0.2 |
| 91 | percentage = 0.01 |
| 92 | min_m = 3 |
| 93 | max_m = 5 |
| 94 | n = T.shape[0] - min_m + 1 |
| 95 | |
| 96 | seed = np.random.randint(100000) |
| 97 | |
| 98 | np.random.seed(seed) |
| 99 | pan = aamp_stimp( |
| 100 | T, |
| 101 | min_m=min_m, |
| 102 | max_m=max_m, |
| 103 | step=1, |
| 104 | percentage=percentage, |
| 105 | pre_scraamp=True, |
| 106 | ) |
| 107 | |
| 108 | for i in range(n): |
| 109 | pan.update() |
| 110 | |
| 111 | ref_PAN = np.full((pan.M_.shape[0], T.shape[0]), fill_value=np.inf) |
| 112 | |
| 113 | np.random.seed(seed) |
| 114 | for idx, m in enumerate(pan.M_[:n]): |
| 115 | zone = int(np.ceil(m / 4)) |
| 116 | s = zone |
| 117 | tmp_P, tmp_I = naive.prescraamp(T, m, T, s=s, exclusion_zone=zone) |
| 118 | ref_P, ref_I, _, _ = naive.scraamp(T, m, T, percentage, zone, True, s) |
| 119 | naive.merge_topk_PI(ref_P, tmp_P, ref_I, tmp_I) |
| 120 | ref_PAN[pan._bfs_indices[idx], : ref_P.shape[0]] = ref_P |
| 121 | |
| 122 | # Compare raw pan |
| 123 | cmp_PAN = pan._PAN |
| 124 | |
| 125 | naive.replace_inf(ref_PAN) |
| 126 | naive.replace_inf(cmp_PAN) |
| 127 | |
| 128 | npt.assert_almost_equal(ref_PAN, cmp_PAN) |
| 129 | |
| 130 | # Compare transformed pan |
| 131 | cmp_pan = pan.PAN_ |
| 132 | ref_pan = naive.transform_pan( |
| 133 | pan._PAN, |
| 134 | pan._M, |
| 135 | threshold, |
| 136 | pan._bfs_indices, |
| 137 | pan._n_processed, |
| 138 | np.min(T), |
| 139 | np.max(T), |
| 140 | ) |
| 141 | |
| 142 | naive.replace_inf(ref_pan) |
| 143 | naive.replace_inf(cmp_pan) |
| 144 | |
| 145 | npt.assert_almost_equal(ref_pan, cmp_pan) |
| 146 |
nothing calls this directly
no test coverage detected