@@ -894,23 +894,27 @@ def build_session_setup(self):
894894
895895 def test_session_draft_tarfile (self ):
896896 session , filenames = self .build_session_setup ()
897- url = urlreverse ('ietf.meeting.views.session_draft_tarfile' , kwargs = {'num' :session .meeting .number ,'acronym' :session .group .acronym })
898- response = self .client .get (url )
899- self .assertEqual (response .status_code , 200 )
900- self .assertEqual (response .get ('Content-Type' ), 'application/octet-stream' )
901- for filename in filenames :
902- os .unlink (filename )
897+ try :
898+ url = urlreverse ('ietf.meeting.views.session_draft_tarfile' , kwargs = {'num' :session .meeting .number ,'acronym' :session .group .acronym })
899+ response = self .client .get (url )
900+ self .assertEqual (response .status_code , 200 )
901+ self .assertEqual (response .get ('Content-Type' ), 'application/octet-stream' )
902+ finally :
903+ for filename in filenames :
904+ os .unlink (filename )
903905
904906 @skipIf (skip_pdf_tests , skip_message )
905907 @skip_coverage
906908 def test_session_draft_pdf (self ):
907909 session , filenames = self .build_session_setup ()
908- url = urlreverse ('ietf.meeting.views.session_draft_pdf' , kwargs = {'num' :session .meeting .number ,'acronym' :session .group .acronym })
909- response = self .client .get (url )
910- self .assertEqual (response .status_code , 200 )
911- self .assertEqual (response .get ('Content-Type' ), 'application/pdf' )
912- for filename in filenames :
913- os .unlink (filename )
910+ try :
911+ url = urlreverse ('ietf.meeting.views.session_draft_pdf' , kwargs = {'num' :session .meeting .number ,'acronym' :session .group .acronym })
912+ response = self .client .get (url )
913+ self .assertEqual (response .status_code , 200 )
914+ self .assertEqual (response .get ('Content-Type' ), 'application/pdf' )
915+ finally :
916+ for filename in filenames :
917+ os .unlink (filename )
914918
915919 def test_current_materials (self ):
916920 url = urlreverse ('ietf.meeting.views.current_materials' )
@@ -6411,7 +6415,9 @@ def test_submit_and_approve_multiple_versions(self):
64116415 path = os .path .join (submission .session .meeting .get_materials_path (),'slides' )
64126416 filename = os .path .join (path ,session .sessionpresentation_set .first ().document .name + '-01.txt' )
64136417 self .assertTrue (os .path .exists (filename ))
6414- contents = io .open (filename ,'r' ).read ()
6418+ fd = io .open (filename , 'r' )
6419+ contents = fd .read ()
6420+ fd .close ()
64156421 self .assertIn ('third version' , contents )
64166422
64176423
@@ -7946,12 +7952,13 @@ def test_add_proceedings_material_doc(self):
79467952 """Upload proceedings materials document"""
79477953 meeting = self ._procmat_test_meeting ()
79487954 for mat_type in ProceedingsMaterialTypeName .objects .filter (used = True ):
7949- mat = self .upload_proceedings_material_test (
7950- meeting ,
7951- mat_type ,
7952- {'file' : self ._proceedings_file (), 'external_url' : '' },
7953- )
7954- self .assertEqual (mat .get_href (), f'{ mat .document .name } :00' )
7955+ with self ._proceedings_file () as fd :
7956+ mat = self .upload_proceedings_material_test (
7957+ meeting ,
7958+ mat_type ,
7959+ {'file' : fd , 'external_url' : '' },
7960+ )
7961+ self .assertEqual (mat .get_href (), f'{ mat .document .name } :00' )
79557962
79567963 def test_add_proceedings_material_doc_invalid_ext (self ):
79577964 """Upload proceedings materials document with disallowed extension"""
@@ -8038,12 +8045,13 @@ def test_replace_proceedings_material(self):
80388045 kwargs = dict (num = meeting .number , material_type = pm_doc .type .slug ),
80398046 )
80408047 self .client .login (username = 'secretary' , password = 'secretary+password' )
8041- r = self .client .post (pm_doc_url , {'file' : self ._proceedings_file (), 'external_url' : '' })
8042- self .assertRedirects (r , success_url )
8043- self .assertEqual (meeting .proceedings_materials .count (), 2 )
8044- pm_doc = meeting .proceedings_materials .get (pk = pm_doc .pk ) # refresh from DB
8045- self .assertEqual (pm_doc .document .rev , '01' )
8046- self .assertEqual (pm_doc .get_href (), f'{ pm_doc .document .name } :01' )
8048+ with self ._proceedings_file () as fd :
8049+ r = self .client .post (pm_doc_url , {'file' : fd , 'external_url' : '' })
8050+ self .assertRedirects (r , success_url )
8051+ self .assertEqual (meeting .proceedings_materials .count (), 2 )
8052+ pm_doc = meeting .proceedings_materials .get (pk = pm_doc .pk ) # refresh from DB
8053+ self .assertEqual (pm_doc .document .rev , '01' )
8054+ self .assertEqual (pm_doc .get_href (), f'{ pm_doc .document .name } :01' )
80478055
80488056 # Replace the uploaded document with a URL
80498057 r = self .client .post (pm_doc_url , {'use_url' : 'on' , 'external_url' : 'https://example.com/second' })
@@ -8066,12 +8074,13 @@ def test_replace_proceedings_material(self):
80668074 self .assertEqual (pm_url .get_href (), 'https://example.com/third' )
80678075
80688076 # Now replace the URL doc with an uploaded file
8069- r = self .client .post (pm_url_url , {'file' : self ._proceedings_file (), 'external_url' : '' })
8070- self .assertRedirects (r , success_url )
8071- self .assertEqual (meeting .proceedings_materials .count (), 2 )
8072- pm_url = meeting .proceedings_materials .get (pk = pm_url .pk ) # refresh from DB
8073- self .assertEqual (pm_url .document .rev , '02' )
8074- self .assertEqual (pm_url .get_href (), f'{ pm_url .document .name } :02' )
8077+ with self ._proceedings_file () as fd :
8078+ r = self .client .post (pm_url_url , {'file' : fd , 'external_url' : '' })
8079+ self .assertRedirects (r , success_url )
8080+ self .assertEqual (meeting .proceedings_materials .count (), 2 )
8081+ pm_url = meeting .proceedings_materials .get (pk = pm_url .pk ) # refresh from DB
8082+ self .assertEqual (pm_url .document .rev , '02' )
8083+ self .assertEqual (pm_url .get_href (), f'{ pm_url .document .name } :02' )
80758084
80768085 def test_remove_proceedings_material (self ):
80778086 """Proceedings material can be removed"""
0 commit comments