12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- # ############################################################
- # Importing - Same For All Render Layer Tests
- # ############################################################
- import unittest
- import os
- import sys
- from view_layer_common import *
- # ############################################################
- # Testing
- # ############################################################
- class UnitTesting(ViewLayerTesting):
- def test_visibility(self):
- """
- See if the depsgraph evaluation is correct
- """
- import bpy
- scene = bpy.context.scene
- window = bpy.context.window
- cube = bpy.data.objects.new('guinea pig', bpy.data.meshes.new('mesh'))
- layer = scene.view_layers.new('Visibility Test')
- layer.collections.unlink(layer.collections[0])
- window.view_layer = layer
- scene_collection_mom = scene.master_collection.collections.new("Mom")
- scene_collection_kid = scene_collection_mom.collections.new("Kid")
- scene_collection_mom.objects.link(cube)
- 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.enabled = True
- layer_collection_kid.enabled = False
- layer.update() # update depsgraph
- self.assertTrue(cube.visible_get(), "Object should be visible")
- # ############################################################
- # Main - Same For All Render Layer Tests
- # ############################################################
- if __name__ == '__main__':
- # XXX, above statement is not true, why skip the first argument?
- UnitTesting._extra_arguments = setup_extra_arguments(__file__)[1:]
- unittest.main()
|