Blender Git Commit Log

Git Commits -> Revision 4a02b9f

Revision 4a02b9f by Himanshi Kalra (master)
July 27, 2021, 15:31 (GMT)
Regression Testing: Running tests based on blend files

Runs tests based on blend files with minimum python interaction.
Developed as part of GSoC 2021 - Regression Testing of Geometry Nodes.
Earlier, tests were built from scratch by adding a modifier/operation
from the Python API.
Now, tests can also be created inside blender and are compared using
Python script.

Features: Automatically adding expected object if it doesn't exist.
This patch adds tests for the following Geometry Nodes category:
* Curves
* Geometry
* Mesh
* Points

The implemented UML diagram for refactoring of mesh test framework.
{F10225906}

Technical Changes:
SpecMeshTest: It adds the modifier/operation based on the Spec provided.
BlendFileTest: It applies already existing modifier/operation from the blend file.

Test folders hierarchy with tests. This folder should be extracted to `libtestsmodeling`
{F10240651}
Note: The `geometry_nodes` folder might lie under another `geometry_nodes` folder while extracting, please double check. Use the inner-most one.
The hierarchy should be:
-`libtestsmodelinggeometry_nodesmesh`
-`libtestsmodelinggeometry_nodespoints`
and so on.

* From `ctest` the tests should be run as `ctest -R geo_node -C [Configuration]` on Windows.
* Each single test can be run with its entire name e..g `ctest -R geo_node_geometry_join_geometry`.(just an example). Run `ctest -N -R geo_node` to see all tests.
* From blender, the tests can be run `blender -b pathtoblendfile --python pathtogeo_node_test.py`

Reviewed By: zazizizou, JacquesLucke

Differential Revision: https://developer.blender.org/D11611

Commit Details:

Full Hash: 4a02b9ffeb018ced11768ca99935fda5fa5f7da0
Parent Commit: d6d44fa
Lines Changed: +674, -519

1 Added Path:

/tests/python/geo_node_test.py (+33, -0) (View)

14 Modified Paths:

/tests/python/bevel_operator.py (+89, -89) (Diff)
/tests/python/boolean_operator.py (+10, -10) (Diff)
/tests/python/CMakeLists.txt (+23, -0) (Diff)
/tests/python/curve_to_mesh.py (+33, -33) (Diff)
/tests/python/deform_modifiers.py (+11, -11) (Diff)
/tests/python/modifiers.py (+71, -71) (Diff)
/tests/python/modules/mesh_test.py (+312, -212) (Diff)
/tests/python/operators.py (+77, -77) (Diff)
/tests/python/physics_cloth.py (+5, -5) (Diff)
/tests/python/physics_dynamic_paint.py (+2, -2) (Diff)
/tests/python/physics_ocean.py (+2, -2) (Diff)
/tests/python/physics_particle_instance.py (+2, -2) (Diff)
/tests/python/physics_particle_system.py (+2, -3) (Diff)
/tests/python/physics_softbody.py (+2, -2) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021