def test_zero_mask_count(self): sizes = ((100, 0), (0, 100), (0, 0)) for size in sizes: mask = pygame.mask.Mask(size) mask.fill() self.assertEqual(mask.count(), 0)
def test_fill(self): """Ensure a mask can be filled.""" width, height = 11, 23 expected_count = width * height mask = pygame.mask.Mask((width, height)) mask.fill() self.assertEqual(mask.count(), expected_count)
def test_overlap_mask(self): # This test currently fails. See issue #410 for more details. mask = pygame.mask.Mask((50, 50)) mask.fill() mask2 = pygame.mask.Mask((300, 10)) mask2.fill() mask3 = mask.overlap_mask(mask2, (-1, 0)) for i in range(50): for j in range(10): self.assertEqual(mask3.get_at((i, j)), 1) for i in range(50): for j in range(11, 50): self.assertEqual(mask3.get_at((i, j)), 0)
def test_overlap_mask(self): """ |tags: ignore| """ mask = pygame.mask.Mask((50, 50)) mask.fill() mask2 = pygame.mask.Mask((300, 10)) mask2.fill() mask3 = mask.overlap_mask(mask2, (-1, 0)) for i in range(50): for j in range(10): self.assertEqual(mask3.get_at((i, j)), 1) for i in range(50): for j in range(11, 50): self.assertEqual(mask3.get_at((i, j)), 0)
def test_overlap_mask(self): """Ensure overlap_mask's mask has correct bits set.""" mask = pygame.mask.Mask((50, 50)) mask.fill() mask2 = pygame.mask.Mask((300, 10)) mask2.fill() mask3 = mask.overlap_mask(mask2, (-1, 0)) for i in range(50): for j in range(10): self.assertEqual(mask3.get_at((i, j)), 1, '({}, {})'.format(i, j)) for i in range(50): for j in range(11, 50): self.assertEqual(mask3.get_at((i, j)), 0, '({}, {})'.format(i, j))