Coverage for metadetect / tests / test_mfrac.py: 21%
19 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-18 09:03 +0000
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-18 09:03 +0000
1import numpy as np
2import ngmix
3import pytest
6def test_measure_mfrac_neg_bbox():
7 pytest.importorskip("meds")
8 from ..mfrac import measure_mfrac
10 rng = np.random.RandomState(seed=100)
11 cen = (201-1)/2
12 mfrac = rng.uniform(size=(201, 201), low=0.2, high=0.8)
13 x = rng.uniform(size=3, low=50, high=150)
14 y = rng.uniform(size=3, low=50, high=150)
15 box_sizes = np.array([32, -9990, 0], dtype=np.int32)
16 fwhm = 1.2
18 obs = ngmix.Observation(
19 image=np.zeros_like(mfrac),
20 bmask=np.zeros_like(mfrac, dtype=np.int32),
21 weight=np.ones_like(mfrac),
22 jacobian=ngmix.DiagonalJacobian(scale=0.263, row=cen, col=cen)
23 )
24 obs.psf = obs.copy()
26 mes = measure_mfrac(
27 mfrac=mfrac,
28 x=x,
29 y=y,
30 box_sizes=box_sizes,
31 obs=obs,
32 fwhm=fwhm,
33 )
34 assert mes[0] > 0.4 and mes[0] < 0.6
35 assert mes[1] == 1.0
36 assert mes[2] == 1.0