diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2017-02-23 14:35:14 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2017-02-24 12:10:24 +0300 |
commit | 2f9a0dfe6429661f1d4bdf28398504df7fe98beb (patch) | |
tree | b95bf074a6b3f6246b99ebda3a663ed435dda150 /tests/python/render_layer/render_layer_common.py | |
parent | 8261a84ffbe6d6a88389f374656135cef53e5b15 (diff) |
Fix T50714: Collections: Adding object to scene without an existing collection
This was causing blender to segfault.
We now add create a new collection and link to the layer before adding
the new object
(also included unittests, and requires updated lib/tests)
Diffstat (limited to 'tests/python/render_layer/render_layer_common.py')
-rw-r--r-- | tests/python/render_layer/render_layer_common.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/python/render_layer/render_layer_common.py b/tests/python/render_layer/render_layer_common.py index e551518ac53..d24b80e0d0a 100644 --- a/tests/python/render_layer/render_layer_common.py +++ b/tests/python/render_layer/render_layer_common.py @@ -309,3 +309,30 @@ class RenderLayerTesting(unittest.TestCase): ), "Scene dump files differ") + def do_object_add_no_collection(self, add_mode): + """ + Test for adding objects when no collection + exists in render layer + """ + import bpy + + # empty layer of collections + + layer = bpy.context.render_layer + while layer.collections: + layer.collections.unlink(layer.collections[0]) + + # add new objects + if add_mode == 'EMPTY': + bpy.ops.object.add() # 'Empty' + + elif add_mode == 'CYLINDER': + bpy.ops.mesh.primitive_cylinder_add() # 'Cylinder' + + elif add_mode == 'TORUS': + bpy.ops.mesh.primitive_torus_add() # 'Torus' + + self.assertEqual(len(layer.collections), 1, "New collection not created") + collection = layer.collections[0] + self.assertEqual(len(collection.objects), 1, "New collection is empty") + |