Commit: 97b9afda3719627b9e52d1862ffd3b0b3ef12518 Author: Dalai Felinto Date: Mon Mar 20 18:06:50 2017 +0100 Branches: blender2.8 https://developer.blender.org/rB97b9afda3719627b9e52d1862ffd3b0b3ef12518
Layers / Depsgraph: Unittesting for selection and visibility evaluation =================================================================== M tests/python/render_layer/CMakeLists.txt A tests/python/render_layer/test_evaluation_selectability_a.py A tests/python/render_layer/test_evaluation_selectability_b.py A tests/python/render_layer/test_evaluation_selectability_c.py A tests/python/render_layer/test_evaluation_selectability_d.py A tests/python/render_layer/test_evaluation_selectability_e.py M tests/python/render_layer/test_evaluation_visibility_a.py M tests/python/render_layer/test_evaluation_visibility_b.py A tests/python/render_layer/test_evaluation_visibility_c.py A tests/python/render_layer/test_evaluation_visibility_d.py A tests/python/render_layer/test_evaluation_visibility_e.py A tests/python/render_layer/test_evaluation_visibility_f.py =================================================================== diff --git a/tests/python/render_layer/CMakeLists.txt b/tests/python/render_layer/CMakeLists.txt index d97672bd2c8..a546bdbf741 100644 --- a/tests/python/render_layer/CMakeLists.txt +++ b/tests/python/render_layer/CMakeLists.txt @@ -60,6 +60,15 @@ RENDER_LAYER_TEST(active_collection) RENDER_LAYER_TEST(collection_rename) RENDER_LAYER_TEST(evaluation_visibility_a) RENDER_LAYER_TEST(evaluation_visibility_b) +RENDER_LAYER_TEST(evaluation_visibility_c) +RENDER_LAYER_TEST(evaluation_visibility_d) +RENDER_LAYER_TEST(evaluation_visibility_e) +RENDER_LAYER_TEST(evaluation_visibility_f) +RENDER_LAYER_TEST(evaluation_selectability_a) +RENDER_LAYER_TEST(evaluation_selectability_b) +RENDER_LAYER_TEST(evaluation_selectability_c) +RENDER_LAYER_TEST(evaluation_selectability_d) +RENDER_LAYER_TEST(evaluation_selectability_e) RENDER_LAYER_TEST(object_add_cylinder) RENDER_LAYER_TEST(object_add_empty) RENDER_LAYER_TEST(object_add_torus) diff --git a/tests/python/render_layer/test_evaluation_visibility_b.py b/tests/python/render_layer/test_evaluation_selectability_a.py similarity index 77% copy from tests/python/render_layer/test_evaluation_visibility_b.py copy to tests/python/render_layer/test_evaluation_selectability_a.py index c8ba6cbf67d..10356cc2a5a 100644 --- a/tests/python/render_layer/test_evaluation_visibility_b.py +++ b/tests/python/render_layer/test_evaluation_selectability_a.py @@ -15,32 +15,33 @@ from render_layer_common import * # ############################################################ class UnitTesting(RenderLayerTesting): - def test_visibility(self): + def test_selectability(self): """ - See if we can link objects + See if the depsgraph evaluation is correct """ import bpy scene = bpy.context.scene cube = bpy.data.objects.new('guinea pig', bpy.data.meshes.new('mesh')) - layer = scene.render_layers.new('Visibility Test') + layer = scene.render_layers.new('Selectability Test') layer.collections.unlink(layer.collections[0]) scene.render_layers.active = layer - scene_collection_mom = scene.master_collection.collections.new("Visible") - scene_collection_kid = scene_collection_mom.collections.new("Invisible") + scene_collection_mom = scene.master_collection.collections.new("Mom") + scene_collection_kid = scene_collection_mom.collections.new("Kid") scene_collection_kid.objects.link(cube) layer_collection_mom = layer.collections.link(scene_collection_mom) layer_collection_kid = layer.collections.link(scene_collection_kid) - layer_collection_mom.hide = False - layer_collection_mom.collections[layer_collection_kid.name].hide = True - layer_collection_kid.hide = True + layer_collection_mom.hide = True + bpy.context.scene.update() # update depsgraph + cube.select_set('SELECT') - self.assertFalse(cube.visible_get(), "Object is not invisible") + self.assertTrue(cube.visible_get(), "Cube should be visible") + self.assertTrue(cube.select_get(), "Cube should be selected") # ############################################################ diff --git a/tests/python/render_layer/test_evaluation_visibility_b.py b/tests/python/render_layer/test_evaluation_selectability_b.py similarity index 78% copy from tests/python/render_layer/test_evaluation_visibility_b.py copy to tests/python/render_layer/test_evaluation_selectability_b.py index c8ba6cbf67d..2c33b5d17df 100644 --- a/tests/python/render_layer/test_evaluation_visibility_b.py +++ b/tests/python/render_layer/test_evaluation_selectability_b.py @@ -15,32 +15,35 @@ from render_layer_common import * # ############################################################ class UnitTesting(RenderLayerTesting): - def test_visibility(self): + def test_selectability(self): """ - See if we can link objects + See if the depsgraph evaluation is correct """ import bpy scene = bpy.context.scene cube = bpy.data.objects.new('guinea pig', bpy.data.meshes.new('mesh')) - layer = scene.render_layers.new('Visibility Test') + layer = scene.render_layers.new('Selectability Test') layer.collections.unlink(layer.collections[0]) scene.render_layers.active = layer - scene_collection_mom = scene.master_collection.collections.new("Visible") - scene_collection_kid = scene_collection_mom.collections.new("Invisible") + scene_collection_mom = scene.master_collection.collections.new("Mom") + scene_collection_kid = scene_collection_mom.collections.new("Kid") scene_collection_kid.objects.link(cube) layer_collection_mom = layer.collections.link(scene_collection_mom) layer_collection_kid = layer.collections.link(scene_collection_kid) + bpy.context.scene.update() # update depsgraph + cube.select_set('SELECT') - layer_collection_mom.hide = False layer_collection_mom.collections[layer_collection_kid.name].hide = True layer_collection_kid.hide = True - self.assertFalse(cube.visible_get(), "Object is not invisible") + bpy.context.scene.update() # update depsgraph + self.assertFalse(cube.visible_get(), "Cube should be invisible") + self.assertFalse(cube.select_get(), "Cube should be unselected") # ############################################################ diff --git a/tests/python/render_layer/test_evaluation_visibility_b.py b/tests/python/render_layer/test_evaluation_selectability_c.py similarity index 79% copy from tests/python/render_layer/test_evaluation_visibility_b.py copy to tests/python/render_layer/test_evaluation_selectability_c.py index c8ba6cbf67d..848c525694f 100644 --- a/tests/python/render_layer/test_evaluation_visibility_b.py +++ b/tests/python/render_layer/test_evaluation_selectability_c.py @@ -15,21 +15,21 @@ from render_layer_common import * # ############################################################ class UnitTesting(RenderLayerTesting): - def test_visibility(self): + def test_selectability(self): """ - See if we can link objects + See if the depsgraph evaluation is correct """ import bpy scene = bpy.context.scene cube = bpy.data.objects.new('guinea pig', bpy.data.meshes.new('mesh')) - layer = scene.render_layers.new('Visibility Test') + layer = scene.render_layers.new('Selectability Test') layer.collections.unlink(layer.collections[0]) scene.render_layers.active = layer - scene_collection_mom = scene.master_collection.collections.new("Visible") - scene_collection_kid = scene_collection_mom.collections.new("Invisible") + scene_collection_mom = scene.master_collection.collections.new("Mom") + scene_collection_kid = scene_collection_mom.collections.new("Kid") scene_collection_kid.objects.link(cube) @@ -37,10 +37,11 @@ class UnitTesting(RenderLayerTesting): layer_collection_kid = layer.collections.link(scene_collection_kid) layer_collection_mom.hide = False - layer_collection_mom.collections[layer_collection_kid.name].hide = True - layer_collection_kid.hide = True + bpy.context.scene.update() # update depsgraph + cube.select_set('SELECT') - self.assertFalse(cube.visible_get(), "Object is not invisible") + self.assertTrue(cube.visible_get(), "Cube should be visible") + self.assertTrue(cube.select_get(), "Cube should be selected") # ############################################################ diff --git a/tests/python/render_layer/test_evaluation_visibility_b.py b/tests/python/render_layer/test_evaluation_selectability_d.py similarity index 77% copy from tests/python/render_layer/test_evaluation_visibility_b.py copy to tests/python/render_layer/test_evaluation_selectability_d.py index c8ba6cbf67d..208be462703 100644 --- a/tests/python/render_layer/test_evaluation_visibility_b.py +++ b/tests/python/render_layer/test_evaluation_selectability_d.py @@ -15,21 +15,21 @@ from render_layer_common import * # ############################################################ class UnitTesting(RenderLayerTesting): - def test_visibility(self): + def test_selectability(self): """ - See if we can link objects + See if the depsgraph evaluation is correct """ import bpy scene = bpy.context.scene cube = bpy.data.objects.new('guinea pig', bpy.data.meshes.new('mesh')) - layer = scene.render_layers.new('Visibility Test') + layer = scene.render_layers.new('Selectability Test') layer.collections.unlink(layer.collections[0]) scene.render_layers.active = layer - scene_collection_mom = scene.master_collection.collections.new("Visible") - scene_collection_kid = scene_collection_mom.collections.new("Invisible") + scene_collection_mom = scene.master_collection.collections.new("Mom") + scene_collection_kid = scene_collection_mom.collections.new("Kid") scene_collection_kid.objects.link(cube) @@ -37,10 +37,14 @@ class UnitTesting(RenderLayerTesting): layer_collection_kid = layer.collections.link(scene_collection_kid) layer_collection_mom.hide = False - layer_collection_mom.collections[layer_collection_kid.name].hide = True - layer_collection_kid.hide = True + bpy.context.scene.update() # update depsgraph - self.assertFalse(cube.visible_get(), "Object is not invisible") + cube.select_set('SELECT') + layer_collection_mom.collections[layer_collection_kid.name].hide_select = True + + bpy.context.scene.update() # update depsgraph + self.assertTrue(cube.visible_get(), "Cube should be visible") + self.assertTrue(cube.select_get(), "Cube should be selected") # ############################################################ diff --git a/tests/python/render_layer/test_evaluation_visibility_b.py b/tests/python/render_layer/test_evaluation_selectability_e.py similari @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs