Newer
Older
import unittest
import numpy as np
from csst_proto.top_level_interface import flip_image, read_test_image
from csst_proto.flip_image import flip_multiple_images_jl, flip_multiple_images_mp
class FlipImageTestCase(unittest.TestCase):
def test_flip_image(self):
self.assertTrue(
np.all(flip_image(read_test_image()) == np.array([[4, 3], [2, 1]]))
)
# the code fails for 1D array
with self.assertRaises(AssertionError):
flip_image(np.array([1, 2, 3, 4]))
def test_flip_multiple_images_mp(self):
""" test flip multiple images with multiprocessing """
n_jobs = 10
imgs = [read_test_image() for i_job in range(n_jobs)]
flipped_imgs = flip_multiple_images_mp(imgs, n_jobs)
for i_job in range(n_jobs):
self.assertTrue(
np.all(flipped_imgs[i_job] == np.array([[4, 3], [2, 1]]))
)
def test_flip_multiple_images_jl(self):
""" test flip multiple images with joblib """
n_jobs = 10
imgs = [read_test_image() for i_job in range(n_jobs)]
flipped_imgs = flip_multiple_images_jl(imgs, n_jobs)
for i_job in range(n_jobs):
self.assertTrue(
np.all(flipped_imgs[i_job] == np.array([[4, 3], [2, 1]]))
)