Fix ci-bonsai-daily: renumber stale STEP ids in BDD feature fixtures

Several BDD scenarios hardcode absolute representation-item object names
whose trailing number is the IFC STEP line id
(f"Item/{item.is_a()}/{item.id()}"). Those ids drift when file-creation
order changes; a recent shift moved all of them by a uniform -4, so the
scenarios failed with "Item/.../NN does not exist".

The failing step (the_object_name_exists in test_feature.py) dumps the
full bpy.data.objects listing on failure, so the correct current ids are
recoverable directly from the CI log (run 29208793599, tested commit
36e21e882f, an ancestor of HEAD with only a .gitignore commit between).
Renumber to match:
  IfcExtrudedAreaSolid/77->73, IfcPolygonalFaceSet/76->72,
  IfcVertexPoint/69->65, IfcEdge/72->68, IfcFace/74->70.

Verified against the CI failure dump (a local build produces different
ids, so this is validated by CI's own object listing rather than a local
run). boolean.feature also hardcodes IfcHalfSpaceSolid/90 and panel text
[91] downstream of the failing assertion, which CI never reached and so
never dumped; left as-is to avoid guessing - they will print a fresh dump
next run for a follow-up if still stale.

This change was made with the assistance of an AI tool.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Petru Conduraru
2026-07-13 06:45:54 +03:00
committed by Dion Moult
parent b1470223d3
commit 6f90badda8
3 changed files with 10 additions and 10 deletions
+2 -2
View File
@@ -12,7 +12,7 @@ Scenario: Ensure added booleans are marked as manual
And I click "OK"
And the object "IfcFurniture/Unnamed" exists
And I toggle edit mode
And the object "Item/IfcExtrudedAreaSolid/77" exists
And the object "Item/IfcExtrudedAreaSolid/73" exists
And I open the "Add Item" menu
When I click "Half Space Solid"
And the object "Item/IfcHalfSpaceSolid/90" exists
@@ -33,7 +33,7 @@ Scenario: Ensure removed booleans are unmarked as manual
And I click "OK"
And the object "IfcFurniture/Unnamed" exists
And I toggle edit mode
And the object "Item/IfcExtrudedAreaSolid/77" exists
And the object "Item/IfcExtrudedAreaSolid/73" exists
And I open the "Add Item" menu
And I click "Half Space Solid"
And I deselect all objects
+5 -5
View File
@@ -24,7 +24,7 @@ Scenario: Add element - an element with no geometry
When I click "OK"
And I select the object "IfcFurniture/Unnamed"
And I toggle edit mode
Then the object "Item/IfcExtrudedAreaSolid/77" exists
Then the object "Item/IfcExtrudedAreaSolid/73" exists
Scenario: Add element - an element with extrusion geometry
Given an empty IFC project
@@ -36,7 +36,7 @@ Scenario: Add element - an element with extrusion geometry
When I click "OK"
And I select the object "IfcFurniture/Unnamed"
And I toggle edit mode
Then the object "Item/IfcExtrudedAreaSolid/77" exists
Then the object "Item/IfcExtrudedAreaSolid/73" exists
Scenario: Add element - an element with custom tessellation geometry
Given an empty IFC project
@@ -48,7 +48,7 @@ Scenario: Add element - an element with custom tessellation geometry
When I click "OK"
And I select the object "IfcFurniture/Unnamed"
And I toggle edit mode
Then the object "Item/IfcPolygonalFaceSet/76" exists
Then the object "Item/IfcPolygonalFaceSet/72" exists
Scenario: Add element - an element with tessellation geometry from an object
Given an empty IFC project
@@ -62,8 +62,8 @@ Scenario: Add element - an element with tessellation geometry from an object
When I click "OK"
And I select the object "IfcFurniture/Unnamed"
And I toggle edit mode
Then the object "Item/IfcPolygonalFaceSet/76" exists
And the object "Item/IfcPolygonalFaceSet/76" dimensions are "2,2,2"
Then the object "Item/IfcPolygonalFaceSet/72" exists
And the object "Item/IfcPolygonalFaceSet/72" dimensions are "2,2,2"
Scenario: Reassign class
Given an empty IFC project
@@ -12,7 +12,7 @@ Scenario: Add element - a structural point connection
And I make the collection "IfcStructuralItem" visible
And I select the object "IfcStructuralPointConnection/Foo"
And I toggle edit mode
Then the object "Item/IfcVertexPoint/69" exists
Then the object "Item/IfcVertexPoint/65" exists
Scenario: Add element - a structural curve member
Given an empty IFC project
@@ -25,7 +25,7 @@ Scenario: Add element - a structural curve member
And I make the collection "IfcStructuralItem" visible
And I select the object "IfcStructuralCurveMember/Foo"
And I toggle edit mode
Then the object "Item/IfcEdge/72" exists
Then the object "Item/IfcEdge/68" exists
Scenario: Add element - a structural surface member
Given an empty IFC project
@@ -38,7 +38,7 @@ Scenario: Add element - a structural surface member
And I make the collection "IfcStructuralItem" visible
And I select the object "IfcStructuralSurfaceMember/Foo"
And I toggle edit mode
Then the object "Item/IfcFace/74" exists
Then the object "Item/IfcFace/70" exists
Scenario: Load structural analysis models
Given an empty IFC project