def test_missingBestBoundary(self):
        data = FMDLData()

        data.load_image(self.byteArrayImage)

        data.roi_roidDelineatorSize = self.test_roiDetection

        validResults = uncropImage(data)

        self.assertFalse(validResults)
        self.assertEqual(len(data.roi_actualSize), 0)
    def test_missingInputImage(self):
        data = FMDLData()

        data.roi_roidDelineatorSize = self.test_roiDetection

        data.bestBoundary = (0.36415937542915344, 0.059263408184051514,
                             0.9990353584289551, 0.8910735845565796)

        validResults = uncropImage(data)

        self.assertFalse(validResults)
        self.assertEqual(len(data.roi_actualSize), 0)
    def test_badRoidDelineatorSize(self):
        data = FMDLData()

        data.load_image(self.byteArrayImage)

        data.roi_roidDelineatorSize = np.zeros(100)

        data.bestBoundary = (0.36415937542915344, 0.059263408184051514,
                             0.9990353584289551, 0.8910735845565796)

        validResults = uncropImage(data)

        self.assertFalse(validResults)
    def test_outputs(self):
        data = FMDLData()

        data.load_image(self.byteArrayImage)

        data.roi_roidDelineatorSize = self.test_roiDetection

        data.bestBoundary = (0.36415937542915344, 0.059263408184051514,
                             0.9990353584289551, 0.8910735845565796)

        validResults = uncropImage(data)

        actualRoiUncropped = cv2.imread(
            'tests/networksAndImages-forUnitTesting/roiActualSize_FMDL_2018.04.30_19.11.20.png'
        )
        actualRoiUncropped = cv2.cvtColor(actualRoiUncropped,
                                          cv2.COLOR_BGR2GRAY)

        self.assertTrue(validResults)

        self.assertTrue(
            np.allclose(data.roi_actualSize, actualRoiUncropped, atol=1e-04))