Fix pset template UI bug where changing to another prop didn't cancel editing older props. Also add support for blank or falsey enums (e.g. a real of 0.0).

This commit is contained in:
Dion Moult
2022-09-01 18:06:22 +10:00
parent f2bd362f57
commit a800d1af7e
3 changed files with 42 additions and 6 deletions
@@ -56,7 +56,7 @@ Scenario: Remove prop template
When I load a new pset template file
And I press "bim.add_pset_template"
And I press "bim.add_prop_template"
And the variable "prop_template" is "2"
And the variable "prop_template" is "{pset_ifc}.by_type('IfcSimplePropertyTemplate')[-1].id()"
And I press "bim.remove_prop_template(prop_template={prop_template})"
Then nothing happens
@@ -64,7 +64,7 @@ Scenario: Enable editing prop template
Given an empty IFC project
When I load a new pset template file
And I press "bim.add_pset_template"
And the variable "prop_template" is "2"
And the variable "prop_template" is "{pset_ifc}.by_type('IfcSimplePropertyTemplate')[-1].id()"
And I press "bim.enable_editing_prop_template(prop_template={prop_template})"
Then nothing happens
@@ -72,16 +72,51 @@ Scenario: Edit prop template
Given an empty IFC project
When I load a new pset template file
And I press "bim.add_pset_template"
And the variable "prop_template" is "2"
And the variable "prop_template" is "{pset_ifc}.by_type('IfcSimplePropertyTemplate')[-1].id()"
And I press "bim.enable_editing_prop_template(prop_template={prop_template})"
And I press "bim.edit_prop_template"
Then nothing happens
Scenario: Edit prop template - enumeration property
Given an empty IFC project
When I load a new pset template file
And I press "bim.add_pset_template"
And the variable "prop_template" is "{pset_ifc}.by_type('IfcSimplePropertyTemplate')[-1].id()"
And I press "bim.enable_editing_prop_template(prop_template={prop_template})"
And I set "scene.BIMPsetTemplateProperties.active_prop_template.template_type" to "P_ENUMERATEDVALUE"
And I press "bim.edit_prop_template"
Then nothing happens
Scenario: Add prop enum
Given an empty IFC project
When I load a new pset template file
And I press "bim.add_pset_template"
And I press "bim.add_prop_template"
And the variable "prop_template" is "{pset_ifc}.by_type('IfcSimplePropertyTemplate')[-1].id()"
And I press "bim.enable_editing_prop_template(prop_template={prop_template})"
And I set "scene.BIMPsetTemplateProperties.active_prop_template.template_type" to "P_ENUMERATEDVALUE"
And I press "bim.add_prop_enum"
And I press "bim.edit_prop_template"
Then nothing happens
Scenario: Delete prop enum
Given an empty IFC project
When I load a new pset template file
And I press "bim.add_pset_template"
And I press "bim.add_prop_template"
And the variable "prop_template" is "{pset_ifc}.by_type('IfcSimplePropertyTemplate')[-1].id()"
And I press "bim.enable_editing_prop_template(prop_template={prop_template})"
And I set "scene.BIMPsetTemplateProperties.active_prop_template.template_type" to "P_ENUMERATEDVALUE"
And I press "bim.add_prop_enum"
And I press "bim.delete_prop_enum(index=0)"
And I press "bim.edit_prop_template"
Then nothing happens
Scenario: Disable editing prop template
Given an empty IFC project
When I load a new pset template file
And I press "bim.add_pset_template"
And the variable "prop_template" is "2"
And the variable "prop_template" is "{pset_ifc}.by_type('IfcSimplePropertyTemplate')[-1].id()"
And I press "bim.enable_editing_prop_template(prop_template={prop_template})"
And I press "bim.disable_editing_prop_template"
Then nothing happens