Exemplo n.º 1
0
    def test_input_level_scale(self):
        img = Image.new(mode='RGB', size=(48, 48))
        scan = ImageScanner(palette=self.palette,
                            levels=4,
                            level_scale=[2, 3, 4])

        img = scan.input(img)
        size = [scan.level(img, level).size for level in range(scan.levels)]

        self.assertEqual(size, [(2, 2), (4, 4), (12, 12), (48, 48)])
Exemplo n.º 2
0
def test_image_scanner_input(test, image_test):
    scan = ImageScanner(resize=test)
    img = scan.input(image_test)
    assert img.size <= test
    assert img.mode == 'P'
    img = [scan.level(img, level) for level in range(scan.levels)]
    assert len(img) == 1
    img = img[0]
    assert img.mode == 'P'
    assert img.size == (1, 1)
    assert list(img.getdata()) in [[0], [1]]
Exemplo n.º 3
0
 def test_input(self):
     tests = [(1, 1), (4, 1), (1, 4)]
     for test in tests:
         scan = ImageScanner(palette=self.palette, resize=test)
         img = scan.input(self.image)
         self.assertLessEqual(img.size, test)
         self.assertEqual(img.mode, 'RGB')
         img = [scan.level(img, level) for level in range(scan.levels)]
         self.assertEqual(len(img), 1)
         img = img[0]
         self.assertEqual(img.mode, 'P')
         self.assertEqual(img.size, (1, 1))
         self.assertIn(list(img.getdata()), [[0], [1]])
Exemplo n.º 4
0
    def test_input_levels(self):
        scan = ImageScanner(palette=self.palette, levels=2, level_scale=2)

        img = scan.input(self.image)
        img = [scan.level(img, level) for level in range(scan.levels)]

        self.assertEqual(len(img), 2)

        self.assertEqual(img[0].mode, 'P')
        self.assertEqual(img[0].size, (1, 1))
        self.assertIn(list(img[0].getdata()), [[0], [1]])

        self.assertEqual(img[1].mode, 'P')
        self.assertEqual(img[1].size, (2, 2))
        self.assertEqual(list(img[1].getdata()), [0, 2, 3, 1])

        scan = ImageScanner(palette=self.palette, levels=3, level_scale=2)
        with self.assertRaises(ValueError):
            scan.input(self.image)
Exemplo n.º 5
0
def test_image_scanner_input_levels(image_test):
    scan = ImageScanner(resize=(4, 4), levels=3, level_scale=2)

    img = scan.input(image_test)
    img = [scan.level(img, level) for level in range(scan.levels)]

    assert len(img) == 3

    assert img[0].mode == 'P'
    assert img[0].size == (1, 1)
    assert list(img[0].getdata()) in [[0], [1]]

    assert img[1].mode == 'P'
    assert img[1].size == (2, 2)
    assert list(img[1].getdata()) == [0, 2, 3, 1]

    assert img[2].mode == 'P'
    assert img[2].size == (4, 4)
    assert list(
        img[2].getdata()) == [0, 0, 2, 2, 0, 0, 2, 2, 3, 3, 1, 1, 3, 3, 1, 1]
Exemplo n.º 6
0
def test_image_scanner_input_level_scale():
    img = Image.new(mode='RGB', size=(48, 48))
    scan = ImageScanner(levels=4, level_scale=[2, 3, 4])
    img = scan.input(img)
    size = [scan.level(img, level).size for level in range(scan.levels)]
    assert size == [(2, 2), (4, 4), (12, 12), (48, 48)]