| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- from direct.stdpy.pickle import dumps, loads
- from panda3d.core import NodePath, CollisionNode
- def test_collision_handler_event_pickle():
- from panda3d.core import CollisionHandlerEvent
- handler = CollisionHandlerEvent()
- handler.add_in_pattern("abcdefg")
- handler.add_in_pattern("test")
- handler.add_again_pattern("again pattern")
- handler.add_again_pattern("another again pattern")
- handler.add_out_pattern("out pattern")
- handler = loads(dumps(handler, -1))
- assert tuple(handler.in_patterns) == ("abcdefg", "test")
- assert tuple(handler.again_patterns) == ("again pattern", "another again pattern")
- assert tuple(handler.out_patterns) == ("out pattern",)
- def test_collision_handler_queue_pickle():
- from panda3d.core import CollisionHandlerQueue
- handler = CollisionHandlerQueue()
- handler = loads(dumps(handler, -1))
- assert type(handler) == CollisionHandlerQueue
- def test_collision_handler_floor_pickle():
- from panda3d.core import CollisionHandlerFloor
- collider1 = NodePath(CollisionNode("collider1"))
- collider2 = NodePath(CollisionNode("collider2"))
- target1 = NodePath("target1")
- target2 = NodePath("target2")
- center = NodePath("center")
- handler = CollisionHandlerFloor()
- handler.add_out_pattern("out pattern")
- handler.add_collider(collider1, target1)
- handler.add_collider(collider2, target2)
- handler.center = center
- handler.offset = 1.0
- handler.reach = 2.0
- handler.max_velocity = 3.0
- handler = loads(dumps(handler, -1))
- assert tuple(handler.in_patterns) == ()
- assert tuple(handler.again_patterns) == ()
- assert tuple(handler.out_patterns) == ("out pattern",)
- assert handler.center.name == "center"
- assert handler.offset == 1.0
- assert handler.reach == 2.0
- assert handler.max_velocity == 3.0
- def test_collision_handler_gravity_pickle():
- from panda3d.core import CollisionHandlerGravity
- collider1 = NodePath(CollisionNode("collider1"))
- collider2 = NodePath(CollisionNode("collider2"))
- target1 = NodePath("target1")
- target2 = NodePath("target2")
- handler = CollisionHandlerGravity()
- handler.add_out_pattern("out pattern")
- handler.add_collider(collider1, target1)
- handler.add_collider(collider2, target2)
- handler.offset = 1.0
- handler.reach = 2.0
- handler.max_velocity = 3.0
- handler.gravity = -4.0
- handler = loads(dumps(handler, -1))
- assert tuple(handler.in_patterns) == ()
- assert tuple(handler.again_patterns) == ()
- assert tuple(handler.out_patterns) == ("out pattern",)
- assert handler.center == None
- assert handler.offset == 1.0
- assert handler.reach == 2.0
- assert handler.max_velocity == 3.0
- assert handler.gravity == -4.0
- def test_collision_handler_pusher_pickle():
- from panda3d.core import CollisionHandlerPusher
- collider1 = NodePath(CollisionNode("collider1"))
- collider2 = NodePath(CollisionNode("collider2"))
- target1 = NodePath("target1")
- target2 = NodePath("target2")
- handler = CollisionHandlerPusher()
- handler.add_again_pattern("again pattern")
- handler.add_collider(collider1, target1)
- handler.add_collider(collider2, target2)
- handler.horizontal = True
- handler = loads(dumps(handler, -1))
- assert tuple(handler.in_patterns) == ()
- assert tuple(handler.again_patterns) == ("again pattern",)
- assert tuple(handler.out_patterns) == ()
- assert not handler.has_center()
- assert handler.horizontal
|