mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-20 06:58:56 +00:00
Blender 5.0 - avoid using deprecated use_nodes
This commit is contained in:
@@ -22,6 +22,7 @@ import ifcopenshell
|
||||
import ifcopenshell.api
|
||||
import ifcopenshell.api.root
|
||||
import ifcopenshell.util.representation
|
||||
import pytest
|
||||
import bonsai.core.tool
|
||||
import bonsai.tool as tool
|
||||
from test.bim.bootstrap import NewFile
|
||||
@@ -37,12 +38,16 @@ class TestImplementsTool(NewFile):
|
||||
class TestCanSupportRenderingStyle(NewFile):
|
||||
def test_anything_with_nodes_can_support_a_rendering_style(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.use_nodes = True
|
||||
tool.Style.set_use_nodes(obj, True)
|
||||
assert subject.can_support_rendering_style(obj) is True
|
||||
|
||||
@pytest.mark.skipif(
|
||||
tool.Blender.BLENDER_5,
|
||||
reason="Since Blender 5.0 `use_nodes` are always `True` and deprecated.",
|
||||
)
|
||||
def test_without_nodes_we_do_not_support_rendering(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.use_nodes = False
|
||||
tool.Style.set_use_nodes(obj, False)
|
||||
assert subject.can_support_rendering_style(obj) is False
|
||||
|
||||
|
||||
@@ -125,7 +130,7 @@ class TestGetSurfaceRenderingAttributes(NewFile):
|
||||
def test_get_different_surface_and_diffuse_colours_from_a_principled_bsdf(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.diffuse_color = [1, 1, 1, 1]
|
||||
obj.use_nodes = True
|
||||
tool.Style.set_use_nodes(obj, True)
|
||||
node = tool.Blender.get_material_node(obj, "BSDF_PRINCIPLED")
|
||||
assert node
|
||||
node.inputs["Alpha"].default_value = 0.8
|
||||
@@ -153,7 +158,7 @@ class TestGetSurfaceRenderingAttributes(NewFile):
|
||||
def test_get_rendering_styles_from_a_glossy_bsdf(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.diffuse_color = [1, 1, 1, 1]
|
||||
obj.use_nodes = True
|
||||
tool.Style.set_use_nodes(obj, True)
|
||||
output = tool.Blender.get_material_node(obj, "OUTPUT_MATERIAL")
|
||||
node = tool.Blender.get_material_node(obj, "BSDF_PRINCIPLED")
|
||||
assert obj.node_tree and node
|
||||
@@ -185,7 +190,7 @@ class TestGetSurfaceRenderingAttributes(NewFile):
|
||||
def test_get_rendering_styles_from_a_diffuse_bsdf(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.diffuse_color = [1, 1, 1, 1]
|
||||
obj.use_nodes = True
|
||||
tool.Style.set_use_nodes(obj, True)
|
||||
output = tool.Blender.get_material_node(obj, "OUTPUT_MATERIAL")
|
||||
node = tool.Blender.get_material_node(obj, "BSDF_PRINCIPLED")
|
||||
assert obj.node_tree and node and output
|
||||
@@ -217,7 +222,7 @@ class TestGetSurfaceRenderingAttributes(NewFile):
|
||||
def test_get_rendering_styles_from_a_glass_bsdf(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.diffuse_color = [1, 1, 1, 1]
|
||||
obj.use_nodes = True
|
||||
tool.Style.set_use_nodes(obj, True)
|
||||
output = tool.Blender.get_material_node(obj, "OUTPUT_MATERIAL")
|
||||
node = tool.Blender.get_material_node(obj, "BSDF_PRINCIPLED")
|
||||
assert obj.node_tree and node and output
|
||||
@@ -249,7 +254,7 @@ class TestGetSurfaceRenderingAttributes(NewFile):
|
||||
def test_get_rendering_styles_from_a_emission_bsdf(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.diffuse_color = [1, 1, 1, 1]
|
||||
obj.use_nodes = True
|
||||
tool.Style.set_use_nodes(obj, True)
|
||||
output = tool.Blender.get_material_node(obj, "OUTPUT_MATERIAL")
|
||||
node = tool.Blender.get_material_node(obj, "BSDF_PRINCIPLED")
|
||||
assert obj.node_tree and node and output
|
||||
@@ -280,7 +285,7 @@ class TestGetSurfaceRenderingAttributes(NewFile):
|
||||
def test_other_unsupported_bsdfs_copy_the_rendering_style_from_the_shading_colours_as_a_fallback(self):
|
||||
obj = bpy.data.materials.new("Material")
|
||||
obj.diffuse_color = [1, 1, 1, 1]
|
||||
obj.use_nodes = True
|
||||
tool.Style.set_use_nodes(obj, True)
|
||||
output = tool.Blender.get_material_node(obj, "OUTPUT_MATERIAL")
|
||||
node = tool.Blender.get_material_node(obj, "BSDF_PRINCIPLED")
|
||||
assert obj.node_tree and node and output
|
||||
|
||||
Reference in New Issue
Block a user