From da11d567aa3ce6ce699c355b7aea20bac2baeacd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brais=20Gab=C3=ADn?= Date: Thu, 21 Jul 2016 15:21:00 +0200 Subject: [PATCH] Test large files --- tests/test_parsers.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/tests/test_parsers.py b/tests/test_parsers.py index 1e0f2e17fa..96a71d669e 100644 --- a/tests/test_parsers.py +++ b/tests/test_parsers.py @@ -3,7 +3,9 @@ from __future__ import unicode_literals from django import forms -from django.core.files.uploadhandler import MemoryFileUploadHandler +from django.core.files.uploadhandler import ( + MemoryFileUploadHandler, TemporaryFileUploadHandler +) from django.test import TestCase from django.utils.six.moves import StringIO @@ -39,7 +41,7 @@ class MockRequest(object): "Test text file".encode('utf-8') ) request = MockRequest() - request.upload_handlers = (MemoryFileUploadHandler(),) + request.upload_handlers = (MemoryFileUploadHandler(), TemporaryFileUploadHandler(),) request.META = { 'HTTP_CONTENT_DISPOSITION': 'Content-Disposition: inline; filename=file.txt', 'HTTP_CONTENT_LENGTH': 14, @@ -66,6 +68,18 @@ def test_parse_missing_filename(self): with self.assertRaises(ParseError): parser.parse(self.stream, None, self.parser_context) + def test_parse_missing_filename_large_file(self): + """ + Parse large raw file upload when filename is missing. + """ + from django.conf import settings + self.parser_context['request'].META['HTTP_CONTENT_LENGTH'] = settings.FILE_UPLOAD_MAX_MEMORY_SIZE + 1 + parser = FileUploadParser() + self.stream.seek(0) + self.parser_context['request'].META['HTTP_CONTENT_DISPOSITION'] = '' + with self.assertRaises(ParseError): + parser.parse(self.stream, None, self.parser_context) + def test_parse_missing_filename_multiple_upload_handlers(self): """ Parse raw file upload with multiple handlers when filename is missing. pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy