@@ -672,6 +672,26 @@ def test_media_io_base_download_empty_file(self):
672672 self .assertEqual (0 , download ._total_size )
673673 self .assertEqual (0 , status .progress ())
674674
675+ def test_media_io_base_download_empty_file_416_response (self ):
676+ self .request .http = HttpMockSequence (
677+ [({"status" : "416" , "content-range" : "0-0/0" }, b"" )]
678+ )
679+
680+ download = MediaIoBaseDownload (fd = self .fd , request = self .request , chunksize = 3 )
681+
682+ self .assertEqual (self .fd , download ._fd )
683+ self .assertEqual (0 , download ._progress )
684+ self .assertEqual (None , download ._total_size )
685+ self .assertEqual (False , download ._done )
686+ self .assertEqual (self .request .uri , download ._uri )
687+
688+ status , done = download .next_chunk ()
689+
690+ self .assertEqual (True , done )
691+ self .assertEqual (0 , download ._progress )
692+ self .assertEqual (0 , download ._total_size )
693+ self .assertEqual (0 , status .progress ())
694+
675695 def test_media_io_base_download_unknown_media_size (self ):
676696 self .request .http = HttpMockSequence ([({"status" : "200" }, b"123" )])
677697
0 commit comments