Skip to content

Commit 31fb576

Browse files
author
Matt Land
committed
fix mono, not blue
1 parent 065722b commit 31fb576

4 files changed

Lines changed: 14 additions & 5 deletions

File tree

adafruit_imageload/pnm/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@ def load(file, header, *, bitmap=None, palette=None):
4242
# We have all we need at length 3 for formats P2, P3, P5, P6
4343
if len(pnm_header) == 3:
4444
break
45-
if len(pnm_header) == 2 and magic_number in [b"P1", b"P4"]:
45+
if len(pnm_header) == 2 and magic_number in [b"P1", b"P4"]:
4646
bitmap = bitmap(pnm_header[0], pnm_header[1], 1)
4747
if palette:
4848
palette = palette(1)
49-
palette[0] = 0xFF
49+
palette[0] = b"\xFF\xFF\xFF"
5050
if magic_number.startswith(b"P1"):
5151
from . import pbm_ascii
5252

adafruit_imageload/tests/displayio_shared_bindings.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,15 @@ def __setitem__(self, key, value):
8383
)
8484
self.colors[key] = value
8585

86+
def __getitem__(self, item):
87+
if item >= self.num_colors:
88+
raise ValueError(
89+
f"palette index {item} should be less than {self.num_colors}"
90+
)
91+
if not self.colors.get(item):
92+
raise ValueError(f"palette index {item} is not set")
93+
return self.colors[item]
94+
8695
def validate(self):
8796
if not self.colors:
8897
raise ValueError("no palette colors were set")

adafruit_imageload/tests/test_pbm_load.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,14 @@ def test_load_works_p4_binary(self):
6161
bitmap, palette = pnm.load(
6262
f, b"P4", bitmap=Bitmap_C_Interface, palette=Palette_C_Interface
6363
)
64+
self.assertEqual(1, palette.num_colors)
65+
palette.validate()
66+
self.assertEqual(b"\xff\xff\xff", palette[0])
6467
self.assertTrue(isinstance(bitmap, Bitmap_C_Interface))
6568
self.assertEqual(1, bitmap.colors)
6669
self.assertEqual(32, bitmap.width)
6770
self.assertEqual(15, bitmap.height)
6871
bitmap.validate()
69-
self.assertEqual(1, palette.num_colors)
70-
palette.validate()
7172

7273
def test_load_works_p4_binary_high_res(self):
7374
test_file = os.path.join(

adafruit_imageload/tests/test_pgm_load.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ def test_load_works_p5_binary(self):
4141
f, b"P5", bitmap=Bitmap_C_Interface, palette=Palette_C_Interface
4242
)
4343
self.assertTrue(isinstance(bitmap, Bitmap_C_Interface), bitmap)
44-
# self.fail(str(palette))
4544

4645
self.assertEqual(8, palette.num_colors)
4746
palette.validate()

0 commit comments

Comments
 (0)