manim/tests/module/animation/test_transform.py
Irvanal Haq dea245ad9a
Fix duplicate references in Scene.mobjects after ReplacementTransform with existing target mobject (#4242)
Co-authored-by: Francisco Manríquez Novoa <49853152+chopan050@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-26 01:30:54 +00:00

27 lines
607 B
Python

from __future__ import annotations
from manim import Circle, ReplacementTransform, Scene, Square, VGroup
def test_no_duplicate_references():
scene = Scene()
c = Circle()
sq = Square()
scene.add(c, sq)
scene.play(ReplacementTransform(c, sq))
assert len(scene.mobjects) == 1
assert scene.mobjects[0] is sq
def test_duplicate_references_in_group():
scene = Scene()
c = Circle()
sq = Square()
vg = VGroup(c, sq)
scene.add(vg)
scene.play(ReplacementTransform(c, sq))
submobs = vg.submobjects
assert len(submobs) == 1
assert submobs[0] is sq