Merge pull request #15177 from shaise/Fix-Python-getElement

[TNP] Fix python get element. partially fixes #15095
This commit is contained in:
Chris Hennes
2024-07-13 20:53:03 -05:00
committed by GitHub
3 changed files with 36 additions and 27 deletions

View File

@@ -1772,6 +1772,28 @@ class TestTopologicalNamingProblem(unittest.TestCase):
else:
self.assertEqual(App.Gui.Selection.getSelectionEx("", 0)[0].SubElementNames[0][-8:],",F.Face2")
def testGetElementFunctionality(self):
# Arrange
body = self.Doc.addObject('PartDesign::Body', 'Body')
padSketch = self.Doc.addObject('Sketcher::SketchObject', 'SketchPad')
pad = self.Doc.addObject("PartDesign::Pad", "Pad")
body.addObject(padSketch)
body.addObject(pad)
TestSketcherApp.CreateRectangleSketch(padSketch, (0, 0), (1, 1))
pad.Profile = padSketch
pad.Length = 1
# Act
self.Doc.recompute()
if pad.Shape.ElementMapVersion == "": # Should be '4' as of Mar 2023.
return
map = pad.Shape.ElementMap
# Assert
self.assertGreater(pad.Shape.ElementMapSize,0)
for tnpName in map.keys():
element1 = pad.Shape.getElement(tnpName)
element2 = pad.Shape.getElement(map[tnpName])
self.assertTrue(element1.isSame(element2))
def testFileSaveRestore(self):
# Arrange
self.Body = self.Doc.addObject('PartDesign::Body', 'Body')