black, ruff

This commit is contained in:
Andrej730
2026-08-31 15:00:26 +05:00
parent 481becfc05
commit d0119479a4
6 changed files with 24 additions and 22 deletions
+1 -2
View File
@@ -21,6 +21,7 @@ import os
from typing import TYPE_CHECKING, Any, Literal, Union, assert_never, get_args from typing import TYPE_CHECKING, Any, Literal, Union, assert_never, get_args
import bpy import bpy
import ifcopenshell.util.unit
from bpy.props import ( from bpy.props import (
BoolProperty, BoolProperty,
CollectionProperty, CollectionProperty,
@@ -33,8 +34,6 @@ from bpy.props import (
) )
from bpy.types import PropertyGroup from bpy.types import PropertyGroup
import ifcopenshell.util.unit
import bonsai.bim import bonsai.bim
import bonsai.bim.handler import bonsai.bim.handler
import bonsai.tool as tool import bonsai.tool as tool
+2 -6
View File
@@ -263,9 +263,7 @@ class TestImportPsetFromExistingWithAGenericNumericValueAndAnExplicitUnit(NewFil
length_mm = ifcopenshell.api.unit.add_si_unit(ifc, unit_type="LENGTHUNIT", prefix="MILLI") length_mm = ifcopenshell.api.unit.add_si_unit(ifc, unit_type="LENGTHUNIT", prefix="MILLI")
element = ifc.createIfcWall() element = ifc.createIfcWall()
prop = ifc.createIfcPropertySingleValue( prop = ifc.createIfcPropertySingleValue(Name="Foo", NominalValue=ifc.createIfcReal(150.0), Unit=length_mm)
Name="Foo", NominalValue=ifc.createIfcReal(150.0), Unit=length_mm
)
metadata = import_single_property(ifc, element, prop) metadata = import_single_property(ifc, element, prop)
assert metadata.special_type == "LENGTH" assert metadata.special_type == "LENGTH"
@@ -291,9 +289,7 @@ class TestImportPsetFromExistingWithAStrayUnitOnANonMeasureProperty(NewFile):
length_m = ifcopenshell.api.unit.add_si_unit(ifc, unit_type="LENGTHUNIT") length_m = ifcopenshell.api.unit.add_si_unit(ifc, unit_type="LENGTHUNIT")
element = ifc.createIfcWall() element = ifc.createIfcWall()
prop = ifc.createIfcPropertySingleValue( prop = ifc.createIfcPropertySingleValue(Name="Foo", NominalValue=ifc.createIfcLabel("Bar"), Unit=length_m)
Name="Foo", NominalValue=ifc.createIfcLabel("Bar"), Unit=length_m
)
metadata = import_single_property(ifc, element, prop) # must not raise metadata = import_single_property(ifc, element, prop) # must not raise
assert metadata.special_type == "" assert metadata.special_type == ""
+2 -6
View File
@@ -69,9 +69,7 @@ class TestEditingAnOverriddenUnitPropertyRoundTrips(NewFile):
element = ifc.createIfcWall() element = ifc.createIfcWall()
pset = ifcopenshell.api.pset.add_pset(ifc, product=element, name="Pset_Test") pset = ifcopenshell.api.pset.add_pset(ifc, product=element, name="Pset_Test")
prop = ifc.createIfcPropertySingleValue( prop = ifc.createIfcPropertySingleValue(Name="Foo", NominalValue=ifc.createIfcLengthMeasure(2.5), Unit=length_m)
Name="Foo", NominalValue=ifc.createIfcLengthMeasure(2.5), Unit=length_m
)
pset.HasProperties = [prop] pset.HasProperties = [prop]
obj = bpy.data.objects.new("Wall", None) obj = bpy.data.objects.new("Wall", None)
@@ -308,9 +306,7 @@ class TestEditPsetWithUnitOverridePicker(NewFile):
element = ifc.createIfcWall() element = ifc.createIfcWall()
pset = ifcopenshell.api.pset.add_pset(ifc, product=element, name="Pset_Test") pset = ifcopenshell.api.pset.add_pset(ifc, product=element, name="Pset_Test")
prop = ifc.createIfcPropertySingleValue( prop = ifc.createIfcPropertySingleValue(Name="Foo", NominalValue=ifc.createIfcLengthMeasure(2.5), Unit=length_m)
Name="Foo", NominalValue=ifc.createIfcLengthMeasure(2.5), Unit=length_m
)
pset.HasProperties = [prop] pset.HasProperties = [prop]
obj = bpy.data.objects.new("Wall", None) obj = bpy.data.objects.new("Wall", None)
@@ -510,7 +510,11 @@ def get_project_unit(
for unit in unit_assignment.Units or []: for unit in unit_assignment.Units or []:
if getattr(unit, "UnitType", None) == unit_type: if getattr(unit, "UnitType", None) == unit_type:
return unit return unit
if dimensional_match is None and unit.is_a("IfcDerivedUnit") and identify_unit_dimensions(unit) == unit_type: if (
dimensional_match is None
and unit.is_a("IfcDerivedUnit")
and identify_unit_dimensions(unit) == unit_type
):
dimensional_match = unit dimensional_match = unit
return dimensional_match return dimensional_match
@@ -18,7 +18,6 @@
import ifcopenshell.api.pset import ifcopenshell.api.pset
import ifcopenshell.api.root import ifcopenshell.api.root
import ifcopenshell.api.unit
import test.bootstrap import test.bootstrap
+14 -6
View File
@@ -20,8 +20,10 @@ import tempfile
from math import pi from math import pi
from pathlib import Path from pathlib import Path
import ifcpatch
import numpy as np import numpy as np
import pytest import pytest
from ifcpatch.recipes import Ifc2Sql
import ifcopenshell.api.context import ifcopenshell.api.context
import ifcopenshell.api.georeference import ifcopenshell.api.georeference
@@ -31,10 +33,8 @@ import ifcopenshell.api.unit
import ifcopenshell.util.element import ifcopenshell.util.element
import ifcopenshell.util.geolocation import ifcopenshell.util.geolocation
import ifcopenshell.util.unit as subject import ifcopenshell.util.unit as subject
import ifcpatch
import test.bootstrap import test.bootstrap
from ifcopenshell.util.shape_builder import ShapeBuilder from ifcopenshell.util.shape_builder import ShapeBuilder
from ifcpatch.recipes import Ifc2Sql
class TestMmToM: class TestMmToM:
@@ -149,7 +149,9 @@ class TestGetCandidateUnits(test.bootstrap.IFC4):
ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject") ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject")
force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT") force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT")
area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT") area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT")
modulus = ifcopenshell.api.unit.add_derived_unit(self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}) modulus = ifcopenshell.api.unit.add_derived_unit(
self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}
)
assert subject.get_candidate_units(self.file, "MODULUSOFELASTICITYUNIT") == [modulus] assert subject.get_candidate_units(self.file, "MODULUSOFELASTICITYUNIT") == [modulus]
def test_userdefined_derived_unit_matched_by_dimensional_fallback(self): def test_userdefined_derived_unit_matched_by_dimensional_fallback(self):
@@ -288,7 +290,9 @@ class TestCalculateUnitScale(test.bootstrap.IFC4):
ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject") ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject")
force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT") force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT")
area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT", prefix="MILLI") area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT", prefix="MILLI")
modulus = ifcopenshell.api.unit.add_derived_unit(self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}) modulus = ifcopenshell.api.unit.add_derived_unit(
self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}
)
ifcopenshell.api.unit.assign_unit(self.file, units=[modulus]) ifcopenshell.api.unit.assign_unit(self.file, units=[modulus])
# AREAUNIT is a pure power of length, so its MILLI prefix is raised to # AREAUNIT is a pure power of length, so its MILLI prefix is raised to
# the length exponent (2) per #9278: (1e-3)**2 = 1e-6, inverted by the # the length exponent (2) per #9278: (1e-3)**2 = 1e-6, inverted by the
@@ -397,7 +401,9 @@ class TestGetUnitSymbol(test.bootstrap.IFC4):
ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject") ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject")
force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT") force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT")
area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT") area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT")
modulus = ifcopenshell.api.unit.add_derived_unit(self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}) modulus = ifcopenshell.api.unit.add_derived_unit(
self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}
)
assert subject.get_unit_symbol(modulus) == "N/m2" assert subject.get_unit_symbol(modulus) == "N/m2"
def test_unnamed_derived_unit_still_composes_a_symbol_without_crashing(self): def test_unnamed_derived_unit_still_composes_a_symbol_without_crashing(self):
@@ -420,7 +426,9 @@ class TestIdentifyUnitDimensions(test.bootstrap.IFC4):
ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject") ifcopenshell.api.root.create_entity(self.file, ifc_class="IfcProject")
force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT") force = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="FORCEUNIT")
area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT") area = ifcopenshell.api.unit.add_si_unit(self.file, unit_type="AREAUNIT")
modulus = ifcopenshell.api.unit.add_derived_unit(self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}) modulus = ifcopenshell.api.unit.add_derived_unit(
self.file, "MODULUSOFELASTICITYUNIT", None, {force: 1, area: -1}
)
assert subject.identify_unit_dimensions(modulus) == "PRESSUREUNIT" assert subject.identify_unit_dimensions(modulus) == "PRESSUREUNIT"
def test_returns_none_for_no_match(self): def test_returns_none_for_no_match(self):