Merge branch 'master' into blender2.8
[blender.git] / tests / python / render_layer / test_evaluation_selectability_c.py
1 # ############################################################
2 # Importing - Same For All Render Layer Tests
3 # ############################################################
4
5 import unittest
6 import os
7 import sys
8
9 from render_layer_common import *
10
11
12 # ############################################################
13 # Testing
14 # ############################################################
15
16 class UnitTesting(RenderLayerTesting):
17     def test_selectability(self):
18         """
19         See if the depsgraph evaluation is correct
20         """
21         import bpy
22
23         scene = bpy.context.scene
24         workspace = bpy.context.workspace
25         cube = bpy.data.objects.new('guinea pig', bpy.data.meshes.new('mesh'))
26
27         layer = scene.render_layers.new('Selectability Test')
28         layer.collections.unlink(layer.collections[0])
29         scene.render_layers.active = layer
30         workspace.render_layer = layer
31
32         scene_collection_mom = scene.master_collection.collections.new("Mom")
33         scene_collection_kid = scene_collection_mom.collections.new("Kid")
34
35         scene_collection_kid.objects.link(cube)
36
37         layer_collection_mom = layer.collections.link(scene_collection_mom)
38         layer_collection_kid = layer.collections.link(scene_collection_kid)
39
40         layer_collection_mom.hide = False
41         bpy.context.scene.update()  # update depsgraph
42         cube.select_set('SELECT')
43
44         self.assertTrue(cube.visible_get(), "Cube should be visible")
45         self.assertTrue(cube.select_get(), "Cube should be selected")
46
47
48 # ############################################################
49 # Main - Same For All Render Layer Tests
50 # ############################################################
51
52 if __name__ == '__main__':
53     UnitTesting._extra_arguments = setup_extra_arguments(__file__)
54     unittest.main()