resolve TODO

This is being fixed, we should always have a class to use
This commit is contained in:
Totally a booplicate
2023-06-03 11:42:36 +03:00
committed by Thomas Krijnen
parent df6cc74a87
commit d4b88fd422
@@ -256,7 +256,7 @@ class Usecase:
) )
else: else:
raise TypeError(f"'{value}' is not a valid property value for '{name}'") raise ValueError(f"'{value}' is not a valid property value for '{name}'")
# TODO-The following "elif" is temporary code, will need to refactor at some point - vulevukusej # TODO-The following "elif" is temporary code, will need to refactor at some point - vulevukusej
elif isinstance(value, (tuple, list)): elif isinstance(value, (tuple, list)):
@@ -267,19 +267,18 @@ class Usecase:
continue continue
if pset_template.TemplateType == "P_LISTVALUE": if pset_template.TemplateType == "P_LISTVALUE":
# TODO: What class to pick if none was provided? We get an error otherwise:
# ValueError: invalid null reference in method 'new_IfcBaseClass', argument 2 of type 'std::string const &'
ifc_class = getattr(pset_template, "PrimaryMeasureType", None) ifc_class = getattr(pset_template, "PrimaryMeasureType", None)
if ifc_class is None: if ifc_class is None:
ifc_class = "IfcLabel" raise ValueError(f"pset template '{pset_template.Name}' is missing PrimaryMeasureType")
properties.append( properties.append(
self.file.create_entity( self.file.create_entity(
"IfcPropertyListValue", "IfcPropertyListValue",
Name=name, Name=name,
ListValues=[ ListValues=[
self.file.create_entity(ifc_class, v) self.file.create_entity(ifc_class, v)
for v in value for v in value
] ]
) )
) )
break break