Exemplo n.º 1
0
class FavoriteTests(ConformsToContent, unittest.TestCase):
    def _getTargetClass(self):
        from Products.CMFDefault.Favorite import Favorite

        return Favorite

    def _makeOne(self, *args, **kw):
        return self._getTargetClass()(*args, **kw)

    def setUp(self):
        sm = getSiteManager()
        self.site = DummySite('site')
        sm.registerUtility(self.site, ISiteRoot)
        self.site._setObject('portal_membership', DummyTool())
        self.site._setObject('portal_url', DummyTool())
        self.site._setObject('target', DummyContent())

    def tearDown(self):
        cleanUp()

    def test_interfaces(self):
        from Products.CMFDefault.interfaces import IFavorite
        from Products.CMFDefault.interfaces import ILink
        from Products.CMFDefault.interfaces import IMutableFavorite
        from Products.CMFDefault.interfaces import IMutableLink

        verifyClass(IFavorite, self._getTargetClass())
        verifyClass(ILink, self._getTargetClass())
        verifyClass(IMutableFavorite, self._getTargetClass())
        verifyClass(IMutableLink, self._getTargetClass())

    def test_Empty(self):
        utool = self.site.portal_url
        f = self.site._setObject('foo', self._makeOne('foo'))

        self.assertEqual(f.getId(), 'foo')
        self.assertEqual(f.Title(), '')
        self.assertEqual(f.Description(), '')
        self.assertEqual(f.getRemoteUrl(), utool())
        self.assertEqual(f.getObject(), self.site)
        self.assertEqual(f.getIconURL(), self.site.getIconURL())
        self.assertEqual(f.icon(), self.site.icon())

    def test_CtorArgs(self):
        utool = self.site.portal_url
        target = self.site.target
        self.assertEqual(self._makeOne('foo', title='Title').Title(), 'Title')

        self.assertEqual(
            self._makeOne('bar', description='Description').Description(),
            'Description')

        baz = self.site._setObject('foo',
                                   self._makeOne('baz', remote_url='target'))
        self.assertEqual(baz.getObject(), target)
        self.assertEqual(baz.getRemoteUrl(), '%s/target' % utool())
        self.assertEqual(baz.getIconURL(), target.getIconURL())
        self.assertEqual(baz.icon(), target.icon())

    def test_edit(self):
        utool = self.site.portal_url
        target = self.site.target
        f = self.site._setObject('foo', self._makeOne('foo'))
        f.edit('target')
        self.assertEqual(f.getObject(), target)
        self.assertEqual(f.getRemoteUrl(), '%s/target' % utool())
        self.assertEqual(f.getIconURL(), target.getIconURL())
        self.assertEqual(f.icon(), target.icon())

    def test_editEmpty(self):
        utool = self.site.portal_url
        f = self.site._setObject('gnnn', self._makeOne('gnnn'))
        f.edit('')
        self.assertEqual(f.getObject(), self.site)
        self.assertEqual(f.getRemoteUrl(), utool())
        self.assertEqual(f.getIconURL(), self.site.getIconURL())
        self.assertEqual(f.icon(), self.site.icon())
Exemplo n.º 2
0
class FavoriteTests(ConformsToContent, unittest.TestCase):

    def _getTargetClass(self):
        from Products.CMFDefault.Favorite import Favorite

        return Favorite

    def _makeOne(self, *args, **kw):
        return self._getTargetClass()(*args, **kw)

    def setUp(self):
        sm = getSiteManager()
        self.site = DummySite('site')
        sm.registerUtility(self.site, ISiteRoot)
        self.site._setObject( 'portal_membership', DummyTool() )
        self.site._setObject( 'portal_url', DummyTool() )
        self.site._setObject( 'target', DummyContent() )

    def tearDown(self):
        cleanUp()

    def test_interfaces(self):
        from Products.CMFDefault.interfaces import IFavorite
        from Products.CMFDefault.interfaces import ILink
        from Products.CMFDefault.interfaces import IMutableFavorite
        from Products.CMFDefault.interfaces import IMutableLink

        verifyClass(IFavorite, self._getTargetClass())
        verifyClass(ILink, self._getTargetClass())
        verifyClass(IMutableFavorite, self._getTargetClass())
        verifyClass(IMutableLink, self._getTargetClass())

    def test_Empty( self ):
        utool = self.site.portal_url
        f = self.site._setObject('foo', self._makeOne('foo'))

        self.assertEqual( f.getId(), 'foo' )
        self.assertEqual( f.Title(), '' )
        self.assertEqual( f.Description(), '' )
        self.assertEqual( f.getRemoteUrl(), utool() )
        self.assertEqual( f.getObject(), self.site )
        self.assertEqual( f.getIconURL(), self.site.getIconURL() )
        self.assertEqual( f.icon(), self.site.icon() )

    def test_CtorArgs( self ):
        utool = self.site.portal_url
        target = self.site.target
        self.assertEqual( self._makeOne( 'foo'
                                       , title='Title'
                                       ).Title(), 'Title' )

        self.assertEqual( self._makeOne( 'bar'
                                       , description='Description'
                                       ).Description(), 'Description' )

        baz = self.site._setObject('foo',
                                self._makeOne('baz', remote_url='target'))
        self.assertEqual( baz.getObject(), target )
        self.assertEqual( baz.getRemoteUrl(), '%s/target' % utool() )
        self.assertEqual( baz.getIconURL(), target.getIconURL() )
        self.assertEqual( baz.icon(), target.icon() )

    def test_edit( self ):
        utool = self.site.portal_url
        target = self.site.target
        f = self.site._setObject('foo', self._makeOne('foo'))
        f.edit( 'target' )
        self.assertEqual( f.getObject(), target )
        self.assertEqual( f.getRemoteUrl(), '%s/target' % utool() )
        self.assertEqual( f.getIconURL(), target.getIconURL() )
        self.assertEqual( f.icon(), target.icon() )

    def test_editEmpty( self ):
        utool = self.site.portal_url
        f = self.site._setObject('gnnn', self._makeOne('gnnn'))
        f.edit( '' )
        self.assertEqual( f.getObject(), self.site )
        self.assertEqual( f.getRemoteUrl(), utool() )
        self.assertEqual( f.getIconURL(), self.site.getIconURL() )
        self.assertEqual( f.icon(), self.site.icon() )