[Bf-blender-cvs] [f4b09008562] master: Cleanup: refactor tests executing Blender to use add_blender_test function

Brecht Van Lommel noreply at git.blender.org
Fri Aug 2 14:45:54 CEST 2019


Commit: f4b09008562e7acda39cdffb68066e7a0c631401
Author: Brecht Van Lommel
Date:   Fri Aug 2 14:25:40 2019 +0200
Branches: master
https://developer.blender.org/rBf4b09008562e7acda39cdffb68066e7a0c631401

Cleanup: refactor tests executing Blender to use add_blender_test function

===================================================================

M	tests/python/CMakeLists.txt

===================================================================

diff --git a/tests/python/CMakeLists.txt b/tests/python/CMakeLists.txt
index 737f4666aae..1e006ca611c 100644
--- a/tests/python/CMakeLists.txt
+++ b/tests/python/CMakeLists.txt
@@ -45,96 +45,105 @@ endif()
 # set(TEST_BLENDER_EXE_BARE ${TEST_BLENDER_EXE})
 # set(TEST_BLENDER_EXE ${TEST_BLENDER_EXE} ${TEST_BLENDER_EXE_PARAMS} )
 
+# Run Blender command with parameters.
+function(add_blender_test name)
+  add_test(
+    NAME ${name}
+    COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS} ${ARGN}
+  )
+endfunction()
+
+# Run Python script outside Blender.
+function(add_python_test testname testscript)
+  if(MSVC)
+    add_blender_test(
+      ${testname}
+        "$<TARGET_FILE_DIR:blender>/${BLENDER_VERSION_MAJOR}.${BLENDER_VERSION_MINOR}/python/bin/python$<$<CONFIG:Debug>:_d>"
+        ${testscript} ${ARGN}
+    )
+  else()
+    add_blender_test(
+      ${testname}
+    )
+  endif()
+endfunction()
 
 # ------------------------------------------------------------------------------
 # GENERAL PYTHON CORRECTNESS TESTS
-add_test(
-  NAME script_load_keymap
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_load_keymap
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_keymap_completeness.py
 )
 
-add_test(
-  NAME script_load_addons
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_load_addons
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_load_addons.py
 )
 
-add_test(
-  NAME script_load_modules
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_load_modules
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_load_py_modules.py
 )
 
 # test running operators doesn't segfault under various conditions
 if(USE_EXPERIMENTAL_TESTS)
-  add_test(
-    NAME script_run_operators
-    COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+  add_blender_test(
+    script_run_operators
     --python ${CMAKE_CURRENT_LIST_DIR}/bl_run_operators.py
   )
 endif()
 
 # ------------------------------------------------------------------------------
 # PY API TESTS
-add_test(
-  NAME script_pyapi_bpy_path
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_pyapi_bpy_path
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_path.py
 )
 
-add_test(
-  NAME script_pyapi_bpy_utils_units
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_pyapi_bpy_utils_units
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_bpy_utils_units.py
 )
 
-add_test(
-  NAME script_pyapi_mathutils
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_pyapi_mathutils
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_mathutils.py
 )
 
-add_test(
-  NAME script_pyapi_idprop
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_pyapi_idprop
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop.py
 )
 
-add_test(
-  NAME script_pyapi_idprop_datablock
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  script_pyapi_idprop_datablock
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_pyapi_idprop_datablock.py
 )
 
 # ------------------------------------------------------------------------------
 # MODELING TESTS
-add_test(
-  NAME bmesh_bevel
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  bmesh_bevel
   ${TEST_SRC_DIR}/modeling/bevel_regression.blend
   --python-text run_tests
 )
 
-add_test(
-  NAME bmesh_boolean
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  bmesh_boolean
   ${TEST_SRC_DIR}/modeling/bool_regression.blend
   --python-text run_tests
 )
 
-add_test(
-  NAME bmesh_split_faces
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  bmesh_split_faces
   ${TEST_SRC_DIR}/modeling/split_faces_test.blend
   --python-text run_tests
 )
 
 # ------------------------------------------------------------------------------
 # MODIFIERS TESTS
-add_test(
-  NAME object_modifier_array
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  object_modifier_array
   ${TEST_SRC_DIR}/modifier_stack/array_test.blend
   --python-text run_tests.py
 )
@@ -145,27 +154,24 @@ add_test(
 # OBJ Import tests
 # disabled until updated & working
 if(FALSE)
-add_test(
-  NAME import_obj_cube
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  import_obj_cube
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/cube.obj'\)
   --md5=39cce4bacac2d1b18fc470380279bc15 --md5_method=SCENE
   --write-blend=${TEST_OUT_DIR}/io_tests/import_obj_cube.blend
 )
 
-add_test(
-  NAME import_obj_nurbs_cyclic
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  import_obj_nurbs_cyclic
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/nurbs_cyclic.obj'\)
   --md5=ad3c307e5883224a0492378cd32691ab --md5_method=SCENE
   --write-blend=${TEST_OUT_DIR}/io_tests/import_obj_nurbs_cyclic.blend
 )
 
-add_test(
-  NAME import_obj_makehuman
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  import_obj_makehuman
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.import_scene.obj\(filepath='${TEST_SRC_DIR}/io_tests/obj/makehuman.obj'\)
   --md5=c9f78b185e58358daa4ecaecfa75464e --md5_method=SCENE
@@ -174,9 +180,8 @@ add_test(
 endif()
 
 # OBJ Export tests
-add_test(
-  NAME export_obj_cube
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  export_obj_cube
   ${TEST_SRC_DIR}/io_tests/blend_geometry/all_quads.blend
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/io_tests/export_obj_cube.obj',use_selection=False\)
@@ -185,9 +190,8 @@ add_test(
   --md5=95832f81160f07101dc566cb286a9f76 --md5_method=FILE
 )
 
-add_test(
-  NAME export_obj_nurbs
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  export_obj_nurbs
   ${TEST_SRC_DIR}/io_tests/blend_geometry/nurbs.blend
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/io_tests/export_obj_nurbs.obj',use_selection=False,use_nurbs=True\)
@@ -198,9 +202,8 @@ add_test(
 
 # disabled until updated & working
 if(FALSE)
-add_test(
-  NAME export_obj_all_objects
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  export_obj_all_objects
   ${TEST_SRC_DIR}/io_tests/blend_scene/all_objects.blend
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.export_scene.obj\(filepath='${TEST_OUT_DIR}/io_tests/export_obj_all_objects.obj',use_selection=False,use_nurbs=True\)
@@ -213,27 +216,24 @@ endif()
 
 
 # PLY Import tests
-add_test(
-  NAME import_ply_cube
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  import_ply_cube
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/cube_ascii.ply'\)
   --md5=527134343c27fc0ea73115b85fbfd3ac --md5_method=SCENE
   --write-blend=${TEST_OUT_DIR}/io_tests/import_ply_cube.blend
 )
 
-add_test(
-  NAME import_ply_bunny
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  import_ply_bunny
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/bunny2.ply'\)
   --md5=6ea5b8533400a17accf928b8fd024eaa --md5_method=SCENE
   --write-blend=${TEST_OUT_DIR}/io_tests/import_ply_bunny.blend
 )
 
-add_test(
-  NAME import_ply_small_holes
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  import_ply_small_holes
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.import_mesh.ply\(filepath='${TEST_SRC_DIR}/io_tests/ply/many_small_holes.ply'\)
   --md5=c3093e26ecae5b6d59fbbcf2a0d0b39f --md5_method=SCENE
@@ -243,9 +243,8 @@ add_test(
 # PLY Export
 # disabled until updated & working
 if(FALSE)
-add_test(
-  NAME export_ply_cube_all_data
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  export_ply_cube_all_data
   ${TEST_SRC_DIR}/io_tests/blend_geometry/cube_all_data.blend
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/io_tests/export_ply_cube_all_data.ply'\)
@@ -253,9 +252,8 @@ add_test(
   --md5=6adc3748ceae8298496f99d0e7e76c15 --md5_method=FILE
 )
 
-add_test(
-  NAME export_ply_suzanne_all_data
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  export_ply_suzanne_all_data
   ${TEST_SRC_DIR}/io_tests/blend_geometry/suzanne_all_data.blend
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/io_tests/export_ply_suzanne_all_data.ply'\)
@@ -264,9 +262,8 @@ add_test(
 )
 endif()
 
-add_test(
-  NAME export_ply_vertices # lame, add a better one
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  export_ply_vertices # lame, add a better one
   ${TEST_SRC_DIR}/io_tests/blend_geometry/vertices.blend
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.export_mesh.ply\(filepath='${TEST_OUT_DIR}/io_tests/export_ply_vertices.ply'\)
@@ -278,27 +275,24 @@ add_test(
 # STL Import tests
 # disabled until updated & working
 if(FALSE)
-add_test(
-  NAME import_stl_cube
-  COMMAND "$<TARGET_FILE:blender>" ${TEST_BLENDER_EXE_PARAMS}
+add_blender_test(
+  import_stl_cube
   --python ${CMAKE_CURRENT_LIST_DIR}/bl_test.py --
   --run={'FINISHED'}&bpy.ops.import_mesh.stl\(filepath='${TEST_SRC_DIR}/io_tests/stl/cube.stl'\)
   --md5=8ceb5bb7e1cb5f4342fa1669988c66b4 --md5_method=SCENE
   --write-blend=${TEST_OUT_DIR}/io_tests/import_stl_cube.blend
 )
 
-add_test(
-  NAME import_stl_co

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list