Skip to content

Commit 97f0715

Browse files
committed
Update Camera test
1 parent f8a55aa commit 97f0715

File tree

5 files changed

+33
-22
lines changed

5 files changed

+33
-22
lines changed

manim/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
from .animation.transform import *
2222
from .animation.update import *
2323

24+
from .renderer.cairo_renderer import *
25+
2426
from .camera.camera import *
2527
from .camera.mapping_camera import *
2628
from .camera.moving_camera import *

manim/camera/camera.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ class Camera(object):
6767
"use_z_index": True,
6868
}
6969

70-
def __init__(self, background=None, **kwargs):
70+
def __init__(self, video_quality_config, background=None, **kwargs):
7171
"""Initialises the Camera.
7272
7373
Parameters

manim/renderer/cairo_renderer.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -86,9 +86,7 @@ class CairoRenderer:
8686
time: time elapsed since initialisation of scene.
8787
"""
8888

89-
def __init__(self, scene, camera_class):
90-
self.camera = camera_class(**camera_config)
91-
89+
def __init__(self, scene, camera_class, **kwargs):
9290
# All of the following are set to EITHER the value passed via kwargs,
9391
# OR the value stored in the global config dict at the time of
9492
# _instance construction_. Before, they were in the CONFIG dict, which
@@ -103,8 +101,8 @@ def __init__(self, scene, camera_class):
103101
"frame_width",
104102
"frame_rate",
105103
]:
106-
self.video_quality_config[attr] = camera_config.get(attr, config[attr])
107-
104+
self.video_quality_config[attr] = kwargs.get(attr, config[attr])
105+
self.camera = camera_class(self.video_quality_config, **camera_config)
108106
self.file_writer = SceneFileWriter(
109107
self.video_quality_config,
110108
scene,

tests/test_camera.py

Lines changed: 0 additions & 16 deletions
This file was deleted.

tests/test_renderer.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import pytest
2+
from manim import CairoRenderer, Camera, tempconfig, config
3+
4+
5+
def test_renderer():
6+
"""Test that CairoRenderer instances initialize to the correct config."""
7+
# by default, use the config
8+
assert (
9+
CairoRenderer(None, Camera).video_quality_config["frame_width"]
10+
== config["frame_width"]
11+
)
12+
# init args override config
13+
assert (
14+
CairoRenderer(None, Camera, frame_width=10).video_quality_config["frame_width"]
15+
== 10
16+
)
17+
18+
# if config changes, reflect those changes
19+
with tempconfig({"frame_width": 100}):
20+
assert CairoRenderer(None, Camera).video_quality_config["frame_width"] == 100
21+
# ..init args still override new config
22+
assert (
23+
CairoRenderer(None, Camera, frame_width=10).video_quality_config[
24+
"frame_width"
25+
]
26+
== 10
27+
)

0 commit comments

Comments
 (0)