Exemplo n.º 1
0
    def test_pygame2_base_Rect_collidedict(self):

        # __doc__ (as of 2008-10-17) for pygame2.base.Rect.collidedict:

        # Rect.collidedict (dict) -> (key, value)
        # 
        # Test if one rectangle in a dictionary intersects.
        # 
        # Returns the key and value of the first dictionary value that
        # collides with the Rect. If no collisions are found, None is
        # returned. They keys of the passed dict must be Rect objects.

        r = Rect(1, 1, 10, 10)
        r1 = Rect(1, 1, 10, 10)
        r2 = Rect(50, 50, 10, 10)
        r3 = Rect(70, 70, 10, 10)
        r4 = Rect(61, 61, 10, 10)

        d = {1: r1, 2: r2, 3: r3}

        rects_values = 1
        val = r.collidedict(d, rects_values)
        self.assertTrue(val)
        self.assertEqual(len(val), 2)
        self.assertEqual(val[0], 1)
        self.assertEqual(val[1], r1)

        none_d = {2: r2, 3: r3}
        none_val = r.collidedict(none_d, rects_values)
        self.assertFalse(none_val)

        barely_d = {1: r1, 2: r2, 3: r3}
        k3, v3 = r4.collidedict(barely_d, rects_values)
        self.assertEqual(k3, 3)
        self.assertEqual(v3, r3)