test_synchronizedDynamicsLifetime

Verify retention, release, and propagation of synchronized dynamics objects.

test_synchronizedDynamicsLifetime.constructor(request)[source]

Exercise the shared synchronization interface across dynamics classes.

test_synchronizedDynamicsLifetime.test_borrowed_scene_alias_preserves_connection_state(already_connected)[source]

Reject a temporary scene alias without changing an existing owner’s connections.

test_synchronizedDynamicsLifetime.test_disowned_primary_rejects_connection(constructor)[source]

Reject a primary without Python ownership before retaining or linking its secondary.

test_synchronizedDynamicsLifetime.test_invalid_connections_preserve_lifetimes()[source]

Rejected graph changes neither retain new objects nor create cycles.

test_synchronizedDynamicsLifetime.test_primary_retains_secondary(constructor, replace_integrator)[source]

A connection keeps its secondary alive and releases it with the primary.

test_synchronizedDynamicsLifetime.test_propagation_after_secondary_leaves_scope(integrator_name)[source]

Only the synchronization connection retains the secondary during a step.

test_synchronizedDynamicsLifetime.test_reference_cycle_is_collectible(constructor)[source]

A user-held reference back to the primary does not leak the connected group.

test_synchronizedDynamicsLifetime.test_surviving_secondary_can_be_reused(constructor)[source]

Destroying a primary releases the synchronized flag on a surviving object.