Commit: 2190c0c7e52827a80a4b9bab00615bd21ca6c8dd
Author: Sergey Sharybin
Date:   Wed Aug 9 09:42:03 2017 +0200
Branches: master
https://developer.blender.org/rB2190c0c7e52827a80a4b9bab00615bd21ca6c8dd

Modules test: Don't print backtrace for files which are ignored

This could make output really polluted, where it'll be hard to see actual
issues.

It is still possible to have all backtraces printed using BLENDER_VERBOSE
environment variable.

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

M       tests/python/bl_load_py_modules.py

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

diff --git a/tests/python/bl_load_py_modules.py 
b/tests/python/bl_load_py_modules.py
index 7ffececd1d9..2d8a908406f 100644
--- a/tests/python/bl_load_py_modules.py
+++ b/tests/python/bl_load_py_modules.py
@@ -123,6 +123,8 @@ def load_addons():
 
 
 def load_modules():
+    VERBOSE = os.environ.get("BLENDER_VERBOSE") is not None
+
     modules = []
     module_paths = []
 
@@ -162,6 +164,14 @@ def load_modules():
     del module_names
 
     #
+    # test we tested all files except for presets and templates
+    ignore_paths = [
+        os.sep + "presets" + os.sep,
+        os.sep + "templates" + os.sep,
+    ] + ([(os.sep + f + os.sep) for f in BLACKLIST] +
+         [(os.sep + f + ".py")  for f in BLACKLIST])
+
+    #
     # now submodules
     for m in modules:
         filepath = m.__file__
@@ -199,7 +209,14 @@ def load_modules():
                     #   import failure.
                     # - We want to catch all failures of this script instead 
of stopping on
                     #   a first big failure.
-                    traceback.print_exc()
+                    do_print = True
+                    if not VERBOSE:
+                        for ignore in ignore_paths:
+                            if ignore in submod_full:
+                                do_print = False
+                                break
+                    if do_print:
+                        traceback.print_exc()
 
     #
     # check which filepaths we didn't load
@@ -218,14 +235,6 @@ def load_modules():
     for f in loaded_files:
         source_files.remove(f)
 
-    #
-    # test we tested all files except for presets and templates
-    ignore_paths = [
-        os.sep + "presets" + os.sep,
-        os.sep + "templates" + os.sep,
-    ] + ([(os.sep + f + os.sep) for f in BLACKLIST] +
-         [(os.sep + f + ".py")  for f in BLACKLIST])
-
     for f in source_files:
         for ignore in ignore_paths:
             if ignore in f:

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to