def test_manageDelObjects(self): test = PortalFolder('test', '') self.root._setObject('test', test) test = self.root.test foo = DummyContent('foo') test._setObject('foo', foo) foo.reset() test.manage_delObjects(ids=['foo']) assert not foo.after_add_called assert foo.before_delete_called
def test_manageDelObjects( self ): test = PortalFolder( 'test', '' ) self.root._setObject( 'test', test ) test = self.root.test foo = DummyContent( 'foo' ) test._setObject( 'foo', foo ) foo.reset() test.manage_delObjects( ids=[ 'foo' ] ) assert not foo.after_add_called assert foo.before_delete_called
def test_deletePropagation(self): test = PortalFolder('test', '') self.root._setObject('test', test) test = self.root.test foo = DummyContent('foo') foo.reset() assert not foo.after_add_called assert not foo.before_delete_called test._setObject('foo', foo) assert foo.after_add_called assert not foo.before_delete_called foo.reset() test._delObject('foo') assert not foo.after_add_called assert foo.before_delete_called foo.reset() test._setObject('foo', foo) test._delOb('foo') # doesn't propagate assert foo.after_add_called assert not foo.before_delete_called
def test_deletePropagation( self ): test = PortalFolder( 'test', '' ) self.root._setObject( 'test', test ) test = self.root.test foo = DummyContent( 'foo' ) foo.reset() assert not foo.after_add_called assert not foo.before_delete_called test._setObject( 'foo', foo ) assert foo.after_add_called assert not foo.before_delete_called foo.reset() test._delObject( 'foo' ) assert not foo.after_add_called assert foo.before_delete_called foo.reset() test._setObject( 'foo', foo ) test._delOb( 'foo' ) # doesn't propagate assert foo.after_add_called assert not foo.before_delete_called
def test_contentPaste( self ): # # Does copy / paste work? # #import pdb; pdb.set_trace() test = PortalFolder( 'test', '' ) self.root._setObject( 'test', test ) test = self.root.test self.root._setObject( 'portal_types', TypesTool() ) types_tool = self.root.portal_types FTI = FactoryTypeInformation types_tool._setObject( 'Dummy' , FTI( 'Dummy' , meta_type=DummyContent.meta_type , product='OFSP' , factory='addDTMLDocument' ) ) self.root._setObject( 'portal_catalog', CatalogTool() ) catalog = self.root.portal_catalog assert len( catalog ) == 0 test._setObject( 'sub1', PortalFolder( 'sub1', '' ) ) sub1 = test.sub1 test._setObject( 'sub2', PortalFolder( 'sub2', '' ) ) sub2 = test.sub2 test._setObject( 'sub3', PortalFolder( 'sub3', '' ) ) sub3 = test.sub3 sub1._setObject( 'dummy', DummyContent( 'dummy', 1 ) ) assert 'dummy' in sub1.objectIds() assert 'dummy' in sub1.contentIds() assert not 'dummy' in sub2.objectIds() assert not 'dummy' in sub2.contentIds() assert not 'dummy' in sub3.objectIds() assert not 'dummy' in sub3.contentIds() assert has_path( catalog._catalog, '/test/sub1/dummy' ) assert not has_path( catalog._catalog, '/test/sub2/dummy' ) assert not has_path( catalog._catalog, '/test/sub3/dummy' ) cookie = sub1.manage_copyObjects( ids = ( 'dummy', ) ) # Waaa! force sub2 to allow paste of Dummy object. #import pdb; pdb.set_trace() sub2.all_meta_types = sub2.all_meta_types() + extra_meta_types() sub2.manage_pasteObjects( cookie ) assert 'dummy' in sub1.objectIds() assert 'dummy' in sub1.contentIds() assert 'dummy' in sub2.objectIds() assert 'dummy' in sub2.contentIds() assert not 'dummy' in sub3.objectIds() assert not 'dummy' in sub3.contentIds() assert has_path( catalog._catalog, '/test/sub1/dummy' ) assert has_path( catalog._catalog, '/test/sub2/dummy' ) assert not has_path( catalog._catalog, '/test/sub3/dummy' ) cookie = sub1.manage_cutObjects( ids = ( 'dummy', ) ) # Waaa! force sub2 to allow paste of Dummy object. sub3.all_meta_types = sub3.all_meta_types() + extra_meta_types() sub3.manage_pasteObjects( cookie ) assert not 'dummy' in sub1.objectIds() assert not 'dummy' in sub1.contentIds() assert 'dummy' in sub2.objectIds() assert 'dummy' in sub2.contentIds() assert 'dummy' in sub3.objectIds() assert 'dummy' in sub3.contentIds() assert not has_path( catalog._catalog, '/test/sub1/dummy' ) assert has_path( catalog._catalog, '/test/sub2/dummy' ) assert has_path( catalog._catalog, '/test/sub3/dummy' )
def test_contentPaste(self): # # Does copy / paste work? # #import pdb; pdb.set_trace() test = PortalFolder('test', '') self.root._setObject('test', test) test = self.root.test self.root._setObject('portal_types', TypesTool()) types_tool = self.root.portal_types FTI = FactoryTypeInformation types_tool._setObject( 'Dummy', FTI('Dummy', meta_type=DummyContent.meta_type, product='OFSP', factory='addDTMLDocument')) self.root._setObject('portal_catalog', CatalogTool()) catalog = self.root.portal_catalog assert len(catalog) == 0 test._setObject('sub1', PortalFolder('sub1', '')) sub1 = test.sub1 test._setObject('sub2', PortalFolder('sub2', '')) sub2 = test.sub2 test._setObject('sub3', PortalFolder('sub3', '')) sub3 = test.sub3 sub1._setObject('dummy', DummyContent('dummy', 1)) assert 'dummy' in sub1.objectIds() assert 'dummy' in sub1.contentIds() assert not 'dummy' in sub2.objectIds() assert not 'dummy' in sub2.contentIds() assert not 'dummy' in sub3.objectIds() assert not 'dummy' in sub3.contentIds() assert has_path(catalog._catalog, '/test/sub1/dummy') assert not has_path(catalog._catalog, '/test/sub2/dummy') assert not has_path(catalog._catalog, '/test/sub3/dummy') cookie = sub1.manage_copyObjects(ids=('dummy', )) # Waaa! force sub2 to allow paste of Dummy object. #import pdb; pdb.set_trace() sub2.all_meta_types = [] sub2.all_meta_types.extend(sub2.all_meta_types) sub2.all_meta_types.extend(extra_meta_types()) sub2.manage_pasteObjects(cookie) assert 'dummy' in sub1.objectIds() assert 'dummy' in sub1.contentIds() assert 'dummy' in sub2.objectIds() assert 'dummy' in sub2.contentIds() assert not 'dummy' in sub3.objectIds() assert not 'dummy' in sub3.contentIds() assert has_path(catalog._catalog, '/test/sub1/dummy') assert has_path(catalog._catalog, '/test/sub2/dummy') assert not has_path(catalog._catalog, '/test/sub3/dummy') cookie = sub1.manage_cutObjects(ids=('dummy', )) # Waaa! force sub2 to allow paste of Dummy object. sub3.all_meta_types = [] sub3.all_meta_types.extend(sub3.all_meta_types) sub3.all_meta_types.extend(extra_meta_types()) sub3.manage_pasteObjects(cookie) assert not 'dummy' in sub1.objectIds() assert not 'dummy' in sub1.contentIds() assert 'dummy' in sub2.objectIds() assert 'dummy' in sub2.contentIds() assert 'dummy' in sub3.objectIds() assert 'dummy' in sub3.contentIds() assert not has_path(catalog._catalog, '/test/sub1/dummy') assert has_path(catalog._catalog, '/test/sub2/dummy') assert has_path(catalog._catalog, '/test/sub3/dummy')