コード例 #1
0
ファイル: test_PortalFolder.py プロジェクト: bendavis78/zope
    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
コード例 #2
0
ファイル: test_PortalFolder.py プロジェクト: goschtl/zope
    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
コード例 #3
0
ファイル: test_PortalFolder.py プロジェクト: bendavis78/zope
    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
コード例 #4
0
ファイル: test_PortalFolder.py プロジェクト: goschtl/zope
    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
コード例 #5
0
ファイル: test_PortalFolder.py プロジェクト: goschtl/zope
    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' )
コード例 #6
0
ファイル: test_PortalFolder.py プロジェクト: bendavis78/zope
    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')