@@ -12,64 +12,32 @@ def metadata():
1212 'http://wb.osf.io/file/test.pdf?token=1234' )
1313
1414
15- @pytest .fixture
16- def metadata_2 ():
17- return ProviderMetadata ('te\' st' , '.pdf' , 'text/plain' , '1234' ,
18- 'http://wb.osf.io/file/te\' st.pdf?token=1234' )
19-
20-
2115@pytest .fixture
2216def tif_metadata ():
2317 return ProviderMetadata ('test' , '.tif' , 'text/plain' , '1234' ,
2418 'http://wb.osf.io/file/test.tif?token=1234' )
2519
2620
27- @pytest .fixture
28- def docx_metadata ():
29- return ProviderMetadata ('te\' st' , '.docx' , 'text/plain' ,'1234' ,
30- 'http://mfr.osf.io/export?url=http://osf.io/file/te\' st.pdf' )
31-
32-
3321@pytest .fixture
3422def file_path ():
3523 return '/tmp/test.pdf'
3624
3725
38- @pytest .fixture
39- def file_path_2 ():
40- return '/tmp/te\' st.pdf'
41-
42-
4326@pytest .fixture
4427def tif_file_path ():
4528 return '/tmp/test.tif'
4629
4730
48- @pytest .fixture
49- def docx_file_path ():
50- return '/tmp/te\' st.docx'
51-
52-
5331@pytest .fixture
5432def url ():
5533 return 'http://osf.io/file/test.pdf'
5634
5735
58- @pytest .fixture
59- def url_2 ():
60- return 'http://osf.io/file/te\' st.pdf'
61-
62-
6336@pytest .fixture
6437def tif_url ():
6538 return 'http://osf.io/file/test.tif'
6639
6740
68- @pytest .fixture
69- def docx_url ():
70- return 'http://osf.io/file/te\' st.tif'
71-
72-
7341@pytest .fixture
7442def assets_url ():
7543 return 'http://mfr.osf.io/assets'
@@ -80,31 +48,16 @@ def export_url():
8048 return 'http://mfr.osf.io/export?url=http://osf.io/file/test.pdf'
8149
8250
83- @pytest .fixture
84- def export_url_2 ():
85- return 'http://mfr.osf.io/export?url=http://osf.io/file/te\' st.pdf'
86-
87-
8851@pytest .fixture
8952def renderer (metadata , file_path , url , assets_url , export_url ):
9053 return PdfRenderer (metadata , file_path , url , assets_url , export_url )
9154
9255
93- @pytest .fixture
94- def renderer_2 (metadata_2 , file_path_2 , url_2 , assets_url , export_url_2 ):
95- return PdfRenderer (metadata_2 , file_path_2 , url_2 , assets_url , export_url_2 )
96-
97-
9856@pytest .fixture
9957def tif_renderer (tif_metadata , tif_file_path , tif_url , assets_url , export_url ):
10058 return PdfRenderer (tif_metadata , tif_file_path , tif_url , assets_url , export_url )
10159
10260
103- @pytest .fixture
104- def docx_renderer (docx_metadata , docx_file_path , docx_url , assets_url , export_url_2 ):
105- return PdfRenderer (docx_metadata , docx_file_path , docx_url , assets_url , export_url_2 )
106-
107-
10861class TestPdfRenderer :
10962
11063 def test_render_pdf (self , renderer , metadata , assets_url ):
@@ -113,14 +66,21 @@ def test_render_pdf(self, renderer, metadata, assets_url):
11366 assert '<div id="viewer" class="pdfViewer"></div>' in body
11467 assert 'DEFAULT_URL = \' {}\' ' .format (metadata .download_url ) in body
11568
116- def test_render_pdf_with_single_quote_in_name (self , renderer_2 , metadata_2 , assets_url ):
69+ def test_render_pdf_with_single_quote_in_name (self , assets_url ):
70+
71+ download_url = 'http://wb.osf.io/file/te\' st.pdf?token=1234'
72+ safe_download_url = 'http://wb.osf.io/file/te%27st.pdf?token=1234'
73+
74+ metadata = ProviderMetadata ('te\' st' , '.pdf' , 'text/plain' , '1234' , download_url )
75+ renderer = PdfRenderer (metadata , '/tmp/te\' st.pdf' , 'http://osf.io/file/te\' st.pdf' ,
76+ assets_url ,
77+ 'http://mfr.osf.io/export?url=http://osf.io/file/te\' st.pdf' )
11778
118- body = renderer_2 .render ()
119- safe_download_url = escape_url_for_template (metadata_2 .download_url , logs = False )
79+ body = renderer .render ()
12080
12181 assert '<base href="{}/{}/web/" target="_blank">' .format (assets_url , 'pdf' ) in body
12282 assert '<div id="viewer" class="pdfViewer"></div>' in body
123- assert 'DEFAULT_URL = \' {}\' ' .format (metadata_2 . download_url ) not in body
83+ assert 'DEFAULT_URL = \' {}\' ' .format (download_url ) not in body
12484 assert 'DEFAULT_URL = \' {}\' ' .format (safe_download_url ) in body
12585
12686 def test_render_tif (self , tif_renderer , assets_url ):
@@ -133,13 +93,18 @@ def test_render_tif(self, tif_renderer, assets_url):
13393 assert '<div id="viewer" class="pdfViewer"></div>' in body
13494 assert 'DEFAULT_URL = \' {}\' ' .format (exported_url .url ) in body
13595
136- def test_render_docx (self , docx_renderer , assets_url ):
96+ def test_render_docx (self , assets_url ):
97+
98+ export_url = 'http://mfr.osf.io/export?url=http://osf.io/file/te\' st.docx&format=pdf'
99+ safe_url = 'http://mfr.osf.io/export?url=http://osf.io/file/te%27st.docx&format=pdf'
137100
138- exported_url = furl .furl (docx_renderer .export_url )
139- safe_exported_url = escape_url_for_template (exported_url .url , logs = False )
140- body = docx_renderer .render ()
101+ metadata = ProviderMetadata ('te\' st' , '.docx' , 'text/plain' , '1234' , export_url )
102+ renderer = PdfRenderer (metadata , '/tmp/te\' st.docx' , export_url , assets_url ,
103+ 'http://mfr.osf.io/export?url=http://osf.io/file/te\' st.docx' )
104+
105+ body = renderer .render ()
141106
142107 assert '<base href="{}/{}/web/" target="_blank">' .format (assets_url , 'pdf' ) in body
143108 assert '<div id="viewer" class="pdfViewer"></div>' in body
144- assert 'DEFAULT_URL = \' {}\' ' .format (exported_url . url ) not in body
145- assert 'DEFAULT_URL = \' {}\' ' .format (safe_exported_url ) in body
109+ assert 'DEFAULT_URL = \' {}\' ' .format (export_url ) not in body
110+ assert 'DEFAULT_URL = \' {}\' ' .format (safe_url ) in body
0 commit comments