Changeset 2276
- Timestamp:
- 03/18/08 00:37:05 (2 months ago)
- Files:
-
- gaphor/trunk/gaphor/UML/elementfactory.py (modified) (3 diffs)
- gaphor/trunk/gaphor/UML/tests/test_elementfactory.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
gaphor/trunk/gaphor/UML/elementfactory.py
r2274 r2276 11 11 IFlushFactoryEvent, IModelFactoryEvent, \ 12 12 IElementChangeEvent, IElementEvent 13 from gaphor.UML.event import ElementCreateEvent, \13 from gaphor.UML.event import ElementCreateEvent, ElementDeleteEvent, \ 14 14 FlushFactoryEvent, ModelFactoryEvent 15 15 from gaphor.UML.element import Element … … 161 161 Flush all elements (remove them from the factory). 162 162 """ 163 if self._app: 164 self._app.handle(FlushFactoryEvent(self)) 165 self._app.register_subscription_adapter(ElementChangedEventBlocker) 163 app = self._app 164 if app: 165 app.handle(FlushFactoryEvent(self)) 166 app.register_subscription_adapter(ElementChangedEventBlocker) 166 167 167 168 try: … … 171 172 value.canvas.block_updates = True 172 173 value.unlink() 173 174 if not app: 175 self._element_deleted(ElementDeleteEvent(self, value)) 174 176 for key, value in self._elements.items(): 175 177 value.unlink() 178 if not app: 179 self._element_deleted(ElementDeleteEvent(self, value)) 176 180 finally: 177 if self._app:178 self._app.unregister_subscription_adapter(ElementChangedEventBlocker)181 if app: 182 app.unregister_subscription_adapter(ElementChangedEventBlocker) 179 183 180 184 assert len(self._elements) == 0, 'Still items in the factory: %s' % str(self._elements.values()) gaphor/trunk/gaphor/UML/tests/test_elementfactory.py
r2267 r2276 28 28 29 29 def setUp(self): 30 Application.init_components() 30 31 self.factory = ElementFactory() 31 32 self.factory.init(Application) 32 33 33 34 def tearDown(self): 34 35 self.factory.shutdown() … … 62 63 assert wp() is None 63 64 assert len(ef.values()) == 0 65 66 67 def testWithoutApplication(self): 68 ef = ElementFactory() 69 70 p = ef.create(Parameter) 71 assert ef.size() == 1, ef.size() 72 73 ef.flush() 74 assert ef.size() == 0, ef.size() 75 76 p = ef.create(Parameter) 77 assert ef.size() == 1, ef.size() 78 79 p.unlink() 80 assert ef.size() == 0, ef.size() 81 64 82 65 83 def testUnlink(self):
