Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/python/view_layer/CMakeLists.txt1
-rw-r--r--tests/python/view_layer/test_background_set.py69
2 files changed, 70 insertions, 0 deletions
diff --git a/tests/python/view_layer/CMakeLists.txt b/tests/python/view_layer/CMakeLists.txt
index 48206f61db4..e5b271dcb1e 100644
--- a/tests/python/view_layer/CMakeLists.txt
+++ b/tests/python/view_layer/CMakeLists.txt
@@ -61,6 +61,7 @@ macro(VIEW_LAYER_TEST test_name)
endmacro()
VIEW_LAYER_TEST(active_collection)
+VIEW_LAYER_TEST(background_set)
VIEW_LAYER_TEST(collection_rename)
VIEW_LAYER_TEST(evaluation_render_settings_a)
VIEW_LAYER_TEST(evaluation_render_settings_b)
diff --git a/tests/python/view_layer/test_background_set.py b/tests/python/view_layer/test_background_set.py
new file mode 100644
index 00000000000..a227d4d189c
--- /dev/null
+++ b/tests/python/view_layer/test_background_set.py
@@ -0,0 +1,69 @@
+# ############################################################
+# Importing - Same For All Render Layer Tests
+# ############################################################
+
+import unittest
+import os
+import sys
+
+from view_layer_common import *
+
+
+# ############################################################
+# Testing
+# ############################################################
+
+class UnitTesting(ViewLayerTesting):
+ def test_background_set(self):
+ """
+ See if background sets are properly added and removed
+ """
+ import bpy
+
+ background_scene = bpy.data.scenes[0]
+ main_scene = bpy.data.scenes.new('main')
+ bpy.context.window.scene = main_scene
+
+ # Update depsgraph.
+ main_scene.update()
+ background_scene.update()
+
+ # Safety check, there should be no objects in thew newly created scene.
+ self.assertEqual(0, len(bpy.context.depsgraph.objects))
+
+ # Now set the background set, and objects relationship.
+ main_scene.background_set = background_scene
+ background_scene.objects[0].parent = background_scene.objects[1]
+
+ # Update depsgraph.
+ main_scene.update()
+ background_scene.update()
+
+ # Test if objects were properly added to depsgraph.
+ self.assertEqual(3, len(bpy.context.depsgraph.objects))
+
+ # At this point the ideal would be to be able to check if
+ # the objects are not selected and their relationship line
+ # and origin is not visible.
+ #
+ # However we can't check this from the current API
+ # so we either do image comparison, expand the API
+ # (won't work relationship lines) or leave as it is.
+
+ # Test if removing is working fine.
+ main_scene.background_set = None
+
+ # Update depsgraph.
+ main_scene.update()
+ background_scene.update()
+
+ self.assertEqual(0, len(bpy.context.depsgraph.objects))
+
+
+# ############################################################
+# Main - Same For All Render Layer Tests
+# ############################################################
+
+if __name__ == '__main__':
+ UnitTesting._extra_arguments = setup_extra_arguments(__file__)
+ unittest.main()