This tests the behaviour when removing three objects referencing each other
in a circle. With the helper value set in 'folder_contents' this situation
can now be resolved completely, so no confirmation form is needed anymore:
>>> self.setRoles(('Manager',))
>>> p = self.portal
>>> self.setText(p.doc1, 'documents...')
>>> self.setText(p.doc2, 'linking...')
>>> self.setText(p.folder1.doc3, 'in circles.')
>>> p.doc1.getReferences()
[]
>>> p.doc2.getReferences()
[]
>>> p.folder1.doc3.getReferences()
[]
We use a browser to try to delete all three documents:
>>> browser = self.getBrowser(loggedIn=True)
>>> browser.open('http://nohost/plone/folder_contents')
>>> browser.getControl('Test Page 1').selected = True
>>> browser.getControl('Test Page 2').selected = True
>>> browser.getControl('Test Folder 1').selected = True
>>> browser.getControl('Delete').click()
>>> browser.url
'http://nohost/plone/...folder_contents'
>>> browser.contents
'...