示例#1
0
 def testAddImageWithIdFromFilename(self):
     # Add File without id - should use filename instead
     self.addExtImage(id='', file=makeFileUpload(gifImage, 'image/gif', filename='foo'))
     self.image._finish()
     self.assertEqual(self.image.getId(), 'foo')
     self.failUnless(self._exists('foo.gif'))
     self.assertEqual(self.image.get_size(), self._fsize(gifImage))
示例#2
0
 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())
示例#3
0
 def testAddFileWithUTF8Filename(self):
     # Add File without id - should use filename instead
     self.addExtFile(id='', file=makeFileUpload(notImage, 'application/octet-stream', filename='M\303\244dchen'))
     self.file._finish()
     self.assertEqual(self.file.getId(), 'Madchen')
     self.failUnless(self._exists('Madchen.exe'))
     self.assertEqual(self.file.get_size(), self._fsize(notImage))
示例#4
0
 def testManageUploadFromFileUpload(self):
     # Upload Image from file upload
     self.addExtImage(id='image', file='')
     self.image.manage_upload(file=makeFileUpload(gifImage, 'image/gif'))
     self.image._finish()
     self.failUnless(self._exists('image.gif'))
     self.assertEqual(self.image.get_size(), self._fsize(gifImage))
示例#5
0
 def testManageUploadFromFileUpload(self):
     # Upload File from file upload
     self.addExtFile(id='file', file='')
     self.file.manage_upload(file=makeFileUpload(notImage, 'application/octet-stream'))
     self.file._finish()
     self.failUnless(self._exists('file.exe'))
     self.assertEqual(self.file.get_size(), self._fsize(notImage))
示例#6
0
 def testFileUploadContentTypeFilename(self):
     upload = makeFileUpload(gifImage, content_type='image/gif')
     self.failUnless(isinstance(upload, FileUpload))
     upload = HTTPUpload(upload, content_type='image/jpeg', filename='image.jpg')
     self.failUnless(isinstance(upload, FileUpload))
     self.assertEqual(upload.headers['content-type'], 'image/jpeg')
     self.assertEqual(upload.filename, 'image.jpg')
     self.failUnless(hasattr(upload, 'read'))
     self.failUnless(hasattr(upload, 'seek'))
示例#7
0
 def testFallbackContentTypeWithCharset(self):
     upload = makeFileUpload(gifImage)
     content_type = get_content_type(upload, upload.read(100), '', 'text/plain; charset=utf-8')
     self.assertEqual(content_type, 'text/plain')
示例#8
0
 def testFallbackContentTypeId(self):
     upload = makeFileUpload(gifImage)
     content_type = get_content_type(upload, upload.read(100), 'image.gif', 'image/jpeg')
     # XXX: Id trumps content type here
     self.assertEqual(content_type, 'image/gif')
示例#9
0
 def testFallbackId(self):
     upload = makeFileUpload(gifImage)
     content_type = get_content_type(upload, upload.read(100), 'image.gif')
     self.assertEqual(content_type, 'image/gif')
示例#10
0
 def testContentTypeFilename(self):
     upload = makeFileUpload(gifImage, content_type='image/jpeg', filename='image.gif')
     content_type = get_content_type(upload, upload.read(100), '')
     self.assertEqual(content_type, 'image/jpeg')
示例#11
0
 def testDefault(self):
     upload = makeFileUpload(gifImage)
     content_type = get_content_type(upload, upload.read(100), '')
     self.assertEqual(content_type, 'application/octet-stream')
示例#12
0
 def testContentTypeFromHeadersExplicit(self):
     # Passed-in content type trumps detection by headers
     self.addExtImage(id='image', file=makeFileUpload(notImage, 'image/gif'), content_type='image/jpeg')
     self.image._finish()
     self.assertEqual(self.image.content_type, 'image/jpeg')
     self.failUnless(self._exists('image.jpg'))
示例#13
0
 def testContentTypeFromHeaders(self):
     # Detect GIF content type from file upload headers
     self.addExtImage(id='image', file=makeFileUpload(notImage, 'image/gif'))
     self.image._finish()
     self.assertEqual(self.image.content_type, 'image/gif')
     self.failUnless(self._exists('image.gif'))