File:  [Repository] / ExtFile / tests / testConstruction.py
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Jan 24 16:53:50 2007 UTC (17 years, 3 months ago) by dwinter
Branches: first, MAIN
CVS tags: release, HEAD
Auf der Basis http://www.zope.org/Members/shh/ExtFile Version 1.5.4

mit zlog ersetzt durch logging


#
# Test construction errors reported by Bruno Grampa
#

import os, sys
if __name__ == '__main__':
    execfile(os.path.join(sys.path[0], 'framework.py'))

from Testing import ZopeTestCase

ZopeTestCase.installProduct('ExtFile')

from Products.ExtFile.tests.ExtFileTestCase import ExtFileTestCase
from Products.ExtFile.tests.ExtFileTestCase import gifImage
from Products.ExtFile.tests.ExtFileTestCase import notImage
from Products.ExtFile.tests.ExtFileTestCase import makeFileUpload

write_file = """
<dtml-call
"manage_addProduct['ExtFile'].manage_addExtFile(id=REQUEST['id'],title='',descr='',
                              file=REQUEST['file'],content_type='',
                              permission_check=0)">
Ok, done.
"""

write_image = """
<dtml-call
"manage_addProduct['ExtFile'].manage_addExtImage(id=REQUEST['id'],title='',descr='',
                              file=REQUEST['file'],content_type='',create_prev=1,
                              maxx='100', maxy='100', ratio=1,
                              permission_check=0)">
Ok, done.
"""


class TestConstruction(ExtFileTestCase):

    def afterSetUp(self):
        ExtFileTestCase.afterSetUp(self)
        self.setPermissions(('Add ExtFiles', 'Add ExtImages'))

    def testFileConstruction(self):
        self.folder.manage_addDTMLMethod('write', file=write_file)
        self.app.REQUEST['id'] = 'foo'
        self.app.REQUEST['file'] = makeFileUpload(gifImage, 'image/gif', 'foo')
        body = self.folder.write(self.folder, self.app.REQUEST)
        self.failUnless(body.find('Ok, done.') >= 0)
        self.failUnless('foo' in self.folder.objectIds())

    def testFileConstructionNoContentType(self):
        self.folder.manage_addDTMLMethod('write', file=write_file)
        self.app.REQUEST['id'] = 'foo'
        self.app.REQUEST['file'] = makeFileUpload(notImage, '', 'foo')
        body = self.folder.write(self.folder, self.app.REQUEST)
        self.failUnless(body.find('Ok, done.') >= 0)
        self.failUnless('foo' in self.folder.objectIds())

    def testImageConstruction(self):
        self.folder.manage_addDTMLMethod('write', file=write_image)
        self.app.REQUEST['id'] = 'foo'
        self.app.REQUEST['file'] = makeFileUpload(gifImage, 'image/gif', 'foo')
        body = self.folder.write(self.folder, self.app.REQUEST)
        self.failUnless(body.find('Ok, done.') >= 0)
        self.failUnless('foo' in self.folder.objectIds())


def test_suite():
    from unittest import TestSuite, makeSuite
    suite = TestSuite()
    suite.addTest(makeSuite(TestConstruction))
    return suite

if __name__ == '__main__':
    framework()


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>