def testNormal(self):
        image =  ip.Image(GRAYSCALE_IMAGE_PATH, grayscale=True)
        edge_detector = ed.SobelEdgeDetector()

        output_image = edge_detector.detect(image)

        output_image.save(IMG_DIR + '/TestSobelEdgeDetector_detect_testNormal.bmp')
    def testGrayscaleImage(self):
        image = ip.Image()

        image.open(GRAYSCALE_IMAGE_PATH, grayscale=True)

        self.assertIsNotNone(image._image)
        self.assertEqual(GRAYSCALE_IMAGE_HEIGHT, image._height)
        self.assertEqual(GRAYSCALE_IMAGE_WIDTH, image._width)
    def testWhiteImage(self):
        HEIGHT = 200
        WIDTH = 300
        image = ip.Image(height=HEIGHT, width=WIDTH, grayscale=True)

        self.assertIsNotNone(image._image)
        self.assertEqual(HEIGHT, image._height)
        self.assertEqual(WIDTH, image._width)
    def testColorImage(self):
        image = ip.Image()

        image.open(COLOR_IMAGE_PATH)

        self.assertIsNotNone(image._image)
        self.assertEqual(COLOR_IMAGE_HEIGHT, image._height)
        self.assertEqual(COLOR_IMAGE_WIDTH, image._width)
    def testGrayscaleImage(self):
        image = ip.Image(GRAYSCALE_IMAGE_PATH, grayscale=True)

        copy = image.copy()

        self.assertNotEqual(id(image._image), id(copy._image))
        self.assertEqual(image._height, copy._height)
        self.assertEqual(image._width, copy._width)
    def testColorImage(self):
        image = ip.Image(COLOR_IMAGE_PATH)

        copy = image.copy()

        self.assertNotEqual(id(image._image), id(copy._image))
        self.assertEqual(image._height, copy._height)
        self.assertEqual(image._width, copy._width)
    def testColorImage(self):
        image = ip.Image(COLOR_IMAGE_PATH)
        image[0, 0, 0] = 99
        image[0, 0, 1] = 98
        image[0, 0, 2] = 97

        self.assertEqual(99, image[0, 0, 0])
        self.assertEqual(98, image[0, 0, 1])
        self.assertEqual(97, image[0, 0, 2])
    def testGetsHeight(self):
        image = ip.Image(COLOR_IMAGE_PATH)

        self.assertEqual(256, image.height)
    def testGetsWidth(self):
        image = ip.Image(COLOR_IMAGE_PATH)

        self.assertEqual(256, image.width)
    def testGrayscaleImage(self):
        image = ip.Image(GRAYSCALE_IMAGE_PATH, grayscale=True)
        image[0, 0] = 99

        self.assertEqual(99, image[0, 0])
    def testNoArgument(self):
        image = ip.Image()

        self.assertEqual(None, image._image)
        self.assertEqual(0, image._height)
        self.assertEqual(0, image._width)
    def testNormal(self):
        image = ip.Image(GRAYSCALE_IMAGE_PATH, grayscale=True)

        output_image = image.threshold(100)

        output_image.save(IMG_DIR + '/TestImage_threshold_testNormal.bmp')
    def testNormal(self):
        image = ip.Image(COLOR_IMAGE_PATH)

        image.save(IMG_DIR + '/TestImage_save_testNormal.bmp')