manim/tests/test_ipython_magic.py
Ryan McCauley 76d275f630
Improve jupyter output file naming (#1649)
* Improve jupyter output file naming

* Add tests for jupyter file output

* Update tests/test_ipython_magic.py

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-06-13 09:09:17 +02:00

29 lines
1.1 KiB
Python

import re
from manim import tempconfig
from manim.utils.ipython_magic import _generate_file_name
def test_jupyter_file_naming():
"""Check the format of file names for jupyter"""
scene_name = "SimpleScene"
expected_pattern = r"[0-9a-zA-Z_]+[@_-]\d\d\d\d-\d\d-\d\d[@_-]\d\d-\d\d-\d\d"
with tempconfig({"scene_names": [scene_name]}):
file_name = _generate_file_name()
match = re.match(expected_pattern, file_name)
assert scene_name in file_name, (
"Expected file to contain " + scene_name + " but got " + file_name
)
assert match, "file name does not match expected pattern " + expected_pattern
def test_jupyter_file_output(tmp_path):
"""Check the jupyter file naming is valid and can be created"""
scene_name = "SimpleScene"
with tempconfig({"scene_names": [scene_name]}):
file_name = _generate_file_name()
actual_path = tmp_path.with_name(file_name)
with open(actual_path, "w") as outfile:
outfile.write("")
assert actual_path.exists()
assert actual_path.is_file()