示例#1
0
    def test_pygame2_mask_Mask_set_at(self):

        # __doc__ (as of 2008-11-03) for pygame2.mask.Mask.set_at:

        # Mask.set_at (x, y) -> None
        # 
        # Sets the bit value at the desired location.
        m = Mask (10, 10)
        m.set_at (0, 0, 1)
        self.assertEqual(m.get_at(0, 0), 1)
        m.set_at(9, 0, 1)
        self.assertEqual(m.get_at(9, 0), 1)

        # out of bounds, should get IndexError
        self.assertRaises(IndexError, lambda : m.get_at (-1,0) )
        self.assertRaises(IndexError, lambda : m.set_at (-1, 0, 1) )
        self.assertRaises(IndexError, lambda : m.set_at (10, 0, 1) )
        self.assertRaises(IndexError, lambda : m.set_at (0, 10, 1) )
示例#2
0
    def test_pygame2_mask_Mask_get_at(self):

        # __doc__ (as of 2008-11-03) for pygame2.mask.Mask.get_at:

        # Mask.get_at (x, y) -> int
        # 
        # Gets the bit value at the desired location.
        m = Mask (100, 100)
        for x in range (100):
            for y in range (100):
                self.assertEqual (m.get_at (x, y), 0)
        
        m = random_mask ()
        pair = (0, 1)
        for x in range (100):
            for y in range (100):
                self.assertTrue (m.get_at (x, y) in pair)
        
        self.assertRaises (IndexError, m.get_at, -1, 0)
        self.assertRaises (IndexError, m.get_at, -7, 3)
        self.assertRaises (IndexError, m.get_at, -1, -1)
        self.assertRaises (IndexError, m.get_at, 0, -1)
        self.assertRaises (IndexError, m.get_at, 8, -10)
示例#3
0
    def test_pygame2_mask_Mask_invert(self):

        # __doc__ (as of 2008-11-03) for pygame2.mask.Mask.invert:

        # Mask.invert () -> None
        # 
        # Inverts all bits in the Mask.
        m = Mask (10, 10)
        for x in range (10):
            for y in range (10):
                m.set_at (x, y)
        self.assertEqual (m.count, 100)
        m.invert ()
        self.assertEqual (m.count, 0)
        m.set_at (4, 4)
        m.invert ()
        self.assertEqual (m.count, 99)
        self.assertEqual (m.get_at (4, 4), 0)
        for x in range (10):
            for y in range (10):
                if x == y == 4:
                    self.assertEqual (m.get_at (x, y), 0)
                else:
                    self.assertEqual (m.get_at (x, y), 1)