@@ -30,14 +30,32 @@ def test_process_request(self, rf):
3030 request = rf .post (
3131 "/" ,
3232 data = {
33- "file" : '[ "custom/location/tmp/s3file/s3_file.txt"]' ,
34- "s3file" : '[ "file"]' ,
33+ "file" : "custom/location/tmp/s3file/s3_file.txt" ,
34+ "s3file" : "file" ,
3535 },
3636 )
3737 S3FileMiddleware (lambda x : None )(request )
3838 assert request .FILES .getlist ("file" )
3939 assert request .FILES .get ("file" ).read () == b"s3file"
4040
41+ def test_process_request__multiple_files (self , rf ):
42+ storage .save ("tmp/s3file/s3_file.txt" , ContentFile (b"s3file" ))
43+ storage .save ("tmp/s3file/s3_other_file.txt" , ContentFile (b"other s3file" ))
44+ request = rf .post (
45+ "/" ,
46+ data = {
47+ "file" : [
48+ "custom/location/tmp/s3file/s3_file.txt" ,
49+ "custom/location/tmp/s3file/s3_other_file.txt" ,
50+ ],
51+ "s3file" : ["file" , "other_file" ],
52+ },
53+ )
54+ S3FileMiddleware (lambda x : None )(request )
55+ files = request .FILES .getlist ("file" )
56+ assert files [0 ].read () == b"s3file"
57+ assert files [1 ].read () == b"other s3file"
58+
4159 def test_process_request__no_location (self , rf , settings ):
4260 settings .AWS_LOCATION = ""
4361 uploaded_file = SimpleUploadedFile ("uploaded_file.txt" , b"uploaded" )
@@ -48,16 +66,14 @@ def test_process_request__no_location(self, rf, settings):
4866
4967 storage .save ("tmp/s3file/s3_file.txt" , ContentFile (b"s3file" ))
5068 request = rf .post (
51- "/" , data = {"file" : '[ "tmp/s3file/s3_file.txt"]' , "s3file" : '[ "file"]' }
69+ "/" , data = {"file" : "tmp/s3file/s3_file.txt" , "s3file" : "file" }
5270 )
5371 S3FileMiddleware (lambda x : None )(request )
5472 assert request .FILES .getlist ("file" )
5573 assert request .FILES .get ("file" ).read () == b"s3file"
5674
5775 def test_process_request__no_file (self , rf , caplog ):
58- request = rf .post (
59- "/" , data = {"file" : '["does_not_exist.txt"]' , "s3file" : '["file"]' }
60- )
76+ request = rf .post ("/" , data = {"file" : "does_not_exist.txt" , "s3file" : "file" })
6177 S3FileMiddleware (lambda x : None )(request )
6278 assert not request .FILES .getlist ("file" )
6379 assert "File not found: does_not_exist.txt" in caplog .text
0 commit comments