manim/tests/test_cli_flags.py
Julian van Doorn d8dab7857d
Added explicit production quality flag. (#529)
* Added explicit production quality flag.

* Updated documentation to mention production quality flag.
2020-10-08 15:28:28 +02:00

45 lines
1.7 KiB
Python

from manim import constants
from manim.config.config_utils import _determine_quality, _parse_cli
def test_quality_flags():
# Assert that quality is the default when not specifying it
parsed = _parse_cli([], False)
assert parsed.quality == constants.DEFAULT_QUALITY_SHORT
assert _determine_quality(parsed) == constants.DEFAULT_QUALITY
for quality in constants.QUALITIES.keys():
# Assert that quality is properly set when using -q*
arguments = f"-q{constants.QUALITIES[quality]}".split()
parsed = _parse_cli(arguments, False)
assert parsed.quality == constants.QUALITIES[quality]
assert quality == _determine_quality(parsed)
# Assert that quality is properly set when using -q *
arguments = f"-q {constants.QUALITIES[quality]}".split()
parsed = _parse_cli(arguments, False)
assert parsed.quality == constants.QUALITIES[quality]
assert quality == _determine_quality(parsed)
# Assert that quality is properly set when using --quality *
arguments = f"--quality {constants.QUALITIES[quality]}".split()
parsed = _parse_cli(arguments, False)
assert parsed.quality == constants.QUALITIES[quality]
assert quality == _determine_quality(parsed)
# Assert that quality is properly set when using -*_quality
arguments = f"--{quality}".split()
parsed = _parse_cli(arguments, False)
assert getattr(parsed, quality)
assert quality == _determine_quality(parsed)
# Assert that *_quality is False when not specifying it
parsed = _parse_cli([], False)
assert not getattr(parsed, quality)
assert _determine_quality(parsed) == constants.DEFAULT_QUALITY