# {py:mod}`simvx.core.testing.scene_runner` ```{py:module} simvx.core.testing.scene_runner ``` ```{autodoc2-docstring} simvx.core.testing.scene_runner :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`SceneRunner ` - ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`__all__ ` - ```{autodoc2-docstring} simvx.core.testing.scene_runner.__all__ :summary: ``` ```` ### API ````{py:data} __all__ :canonical: simvx.core.testing.scene_runner.__all__ :value: > ['SceneRunner'] ```{autodoc2-docstring} simvx.core.testing.scene_runner.__all__ ``` ```` `````{py:class} SceneRunner(screen_size: tuple[float, float] = (800, 600)) :canonical: simvx.core.testing.scene_runner.SceneRunner ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.__init__ ``` ````{py:method} load(root_node: simvx.core.node.Node) -> simvx.core.testing.scene_runner.SceneRunner :canonical: simvx.core.testing.scene_runner.SceneRunner.load ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.load ``` ```` ````{py:method} advance_frames(count: int = 1, dt: float | None = None, draw: bool = False) -> simvx.core.testing.scene_runner.SceneRunner :canonical: simvx.core.testing.scene_runner.SceneRunner.advance_frames ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.advance_frames ``` ```` ````{py:method} advance_time(seconds: float, dt: float | None = None) -> simvx.core.testing.scene_runner.SceneRunner :canonical: simvx.core.testing.scene_runner.SceneRunner.advance_time ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.advance_time ``` ```` ````{py:method} find(name_or_type, recursive: bool = True) -> simvx.core.node.Node | None :canonical: simvx.core.testing.scene_runner.SceneRunner.find ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.find ``` ```` ````{py:method} find_all(node_type: type) -> list[simvx.core.node.Node] :canonical: simvx.core.testing.scene_runner.SceneRunner.find_all ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.find_all ``` ```` ````{py:property} root :canonical: simvx.core.testing.scene_runner.SceneRunner.root :type: simvx.core.node.Node | None ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.root ``` ```` ````{py:property} frame_count :canonical: simvx.core.testing.scene_runner.SceneRunner.frame_count :type: int ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.frame_count ``` ```` ````{py:property} elapsed_time :canonical: simvx.core.testing.scene_runner.SceneRunner.elapsed_time :type: float ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.elapsed_time ``` ```` ````{py:method} snapshot() -> dict :canonical: simvx.core.testing.scene_runner.SceneRunner.snapshot ```{autodoc2-docstring} simvx.core.testing.scene_runner.SceneRunner.snapshot ``` ```` `````