manim/tests
Rafael Brusiquesi Martins cfb5c684b7
Add unit tests for module-level color helpers in manim/utils/color/core.py (#4749)
* Add unit tests for module-level color helpers in manim/utils/color/core.py

Adds tests/module/utils/test_color_helpers.py covering the standalone
helper functions exported from manim.utils.color.core (color_to_rgb,
color_to_rgba, color_to_int_rgb, color_to_int_rgba, rgb_to_color,
rgba_to_color, rgb_to_hex, hex_to_rgb, invert_color, color_gradient,
interpolate_color, average_color, random_bright_color, random_color)
and the RandomColorGenerator class.

Before this PR, only the ManimColor class itself was tested
(via tests/module/utils/test_manim_color.py); the standalone helpers
had zero direct test coverage. Coverage on manim/utils/color/core.py
goes from 71% to 80% (line+branch), and 17 of the 18 testable symbols
in the file's __all__ are now exercised. The only deferred symbol is
get_shaded_rgb, which concerns lighting math rather than color
conversion and is better suited to a follow-up.

42 tests, ~0.3s runtime, no new dependencies.

Co-authored-by: LetMarq <LetMarq@users.noreply.github.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update tests/module/utils/test_color_helpers.py

Increased assertion scheme to cover all colors.

Co-authored-by: Francisco Manríquez Novoa <49853152+chopan050@users.noreply.github.com>

---------

Co-authored-by: THE-RAF <THE-RAF@users.noreply.github.com>
Co-authored-by: LetMarq <LetMarq@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Francisco Manríquez Novoa <49853152+chopan050@users.noreply.github.com>
2026-05-29 17:23:28 -04:00
..
control_data Rewrite MathTex to make it more robust regarding splitting (#4515) 2026-02-16 14:22:56 +01:00
helpers Resolve more race conditions potentially happening during directory creation (#4589) 2026-02-12 08:18:26 +01:00
interface Bump minimum Python to 3.11 and av to 14.0.1 (#4385) 2026-01-12 14:27:48 +01:00
miscellaneous Update dependency constraints, fix deprecation warnings (#3376) 2023-12-06 14:44:13 +01:00
module Add unit tests for module-level color helpers in manim/utils/color/core.py (#4749) 2026-05-29 17:23:28 -04:00
opengl Fix YELLOW_C and add PURE_CYAN, PURE_MAGENTA and PURE_YELLOW (#4562) 2026-02-16 20:07:09 -03:00
test_graphical_units Add support for negative z-index in AnimationGroup (#4389) 2026-02-22 11:24:32 +00:00
test_logging Use ruff for pytest style (#3872) 2024-07-21 14:37:57 +00:00
test_plugins Resolve more race conditions potentially happening during directory creation (#4589) 2026-02-12 08:18:26 +01:00
test_scene_rendering feat: add a 'seed' option for reproducible outputs (#4532) 2026-01-20 22:24:32 +01:00
utils Enable strict=True for zip() where safe (#4547) 2026-02-11 10:39:25 +01:00
__init__.py CI: Add support for using Opengl in Subprocess (Windows) (#1987) 2021-08-31 13:16:20 +01:00
assert_utils.py Migrate more os.path to pathlib in tests (#2991) 2022-10-26 19:51:38 +02:00
conftest.py Add support for Python 3.13 (#3967) 2024-12-02 08:50:14 +01:00
standard_config.cfg Add OpenGLMobject tests (#2080) 2021-09-28 07:47:06 +08:00
template_generate_graphical_units_data.py Upgraded typehints (#2429) 2022-01-20 12:26:21 +08:00
test_camera.py Allow using :meth:.MovingCamera.auto_zoom without animation (#2693) 2022-04-22 23:07:52 +02:00
test_code_mobject.py Better parsing of color styles in CodeMobject (#4454) 2025-10-26 08:47:47 +01:00
test_config.py Fix scene skipping for config.upto_animation_number (-n flag in CLI) set to 0 to end after first animation (#4013) 2024-11-13 21:23:50 -03:00
test_ipython_magic.py Change from tempconfig to a config fixture in tests (#3853) 2024-07-12 22:41:51 +02:00
test_linear_transformation_scene.py Use ruff for pytest style (#3872) 2024-07-21 14:37:57 +00:00