Tests added
This commit is contained in:
parent
31a1a2c496
commit
ea12e86324
53
tests/test_PixelMask.py
Normal file
53
tests/test_PixelMask.py
Normal file
@ -0,0 +1,53 @@
|
||||
from unittest import TestCase
|
||||
from esbo_etc.classes.sensor.PixelMask import PixelMask
|
||||
import numpy as np
|
||||
import astropy.units as u
|
||||
|
||||
|
||||
class TestPixelMask(TestCase):
|
||||
def setUp(self):
|
||||
self.mask = PixelMask(np.array([10, 8]) << u.pix, 6.5 * u.um, center_offset=np.array([0.2, 0.5]) << u.pix)
|
||||
|
||||
def test___new__(self):
|
||||
self.assertTrue((self.mask.view(np.ndarray) == np.zeros((8, 10))).all())
|
||||
self.assertEqual(self.mask.center_ind, [3.5, 4.5])
|
||||
self.assertEqual(self.mask.psf_center_ind, [4.0, 4.7])
|
||||
self.assertEqual(self.mask.pixel_geometry, [8 * u.pix, 10 * u.pix])
|
||||
|
||||
def test_createPhotometricAperture(self):
|
||||
# circle
|
||||
self.mask.createPhotometricAperture("circle", 2.3 * u.pix)
|
||||
res = np.array([[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
|
||||
[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
|
||||
[0., 0., 0., 1., 1., 1., 1., 0., 0., 0.],
|
||||
[0., 0., 0., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 0., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 0., 1., 1., 1., 1., 0., 0., 0.],
|
||||
[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]])
|
||||
self.assertTrue((self.mask.view(np.ndarray) == res).all())
|
||||
|
||||
self.setUp()
|
||||
self.mask.createPhotometricAperture("circle", 2.6 * u.pix, np.array([-0.5, 0.8]) << u.pix)
|
||||
res = np.array([[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
|
||||
[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
|
||||
[0., 0., 0., 1., 1., 1., 0., 0., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 0., 0., 0.],
|
||||
[0., 1., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 1., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 0., 0., 0.],
|
||||
[0., 0., 0., 1., 1., 1., 0., 0., 0., 0.]])
|
||||
self.assertTrue((self.mask.view(np.ndarray) == res).all())
|
||||
|
||||
# square
|
||||
self.setUp()
|
||||
self.mask.createPhotometricAperture("square", 2.3 * u.pix)
|
||||
res = np.array([[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
|
||||
[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1., 0., 0.],
|
||||
[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]])
|
||||
self.assertTrue((self.mask.view(np.ndarray) == res).all())
|
18
tests/test_helpers.py
Normal file
18
tests/test_helpers.py
Normal file
@ -0,0 +1,18 @@
|
||||
from unittest import TestCase
|
||||
from esbo_etc.lib.helpers import rasterizeCircle
|
||||
import numpy as np
|
||||
|
||||
|
||||
class Test(TestCase):
|
||||
def test_rasterize_circle(self):
|
||||
grid = np.zeros((8, 8))
|
||||
circ = rasterizeCircle(grid, 2.6, 4.5, 3.8)
|
||||
circ_ex = np.array([[0., 0., 0., 0., 0., 0., 0., 0.],
|
||||
[0., 0., 0., 0., 1., 1., 0., 0.],
|
||||
[0., 0., 0., 1., 1., 1., 1., 0.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1.],
|
||||
[0., 0., 1., 1., 1., 1., 1., 1.],
|
||||
[0., 0., 0., 1., 1., 1., 1., 0.],
|
||||
[0., 0., 0., 0., 0., 0., 0., 0.]])
|
||||
self.assertTrue((circ == circ_ex).all())
|
Loading…
x
Reference in New Issue
Block a user