Test whether video is transcoded to all resolutions
[mediagoblin.git] / mediagoblin / tests / test_pdf.py
index b8c21bdb5265dbd39774c73e7684ee16f8e8b2db..7107dc9a3b8379343e01d63b8a1dc6306daf9e86 100644 (file)
@@ -14,6 +14,7 @@
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+import collections
 import tempfile
 import shutil
 import os
@@ -21,19 +22,25 @@ import pytest
 
 from mediagoblin.media_types.pdf.processing import (
     pdf_info, check_prerequisites, create_pdf_thumb)
+from .resources import GOOD_PDF
 
-GOOD='mediagoblin/tests/test_submission/good.pdf'
 
-@pytest.mark.skipif("not check_prerequisites()")
+@pytest.mark.skipif("not os.path.exists(GOOD_PDF) or not check_prerequisites()")
 def test_pdf():
-    good_dict = {'pdf_version_major': 1, 'pdf_title': '',
-        'pdf_page_size_width': 612, 'pdf_author': '',
-        'pdf_keywords': '', 'pdf_pages': 10,
-        'pdf_producer': 'dvips + GNU Ghostscript 7.05',
-        'pdf_version_minor': 3,
-        'pdf_creator': 'LaTeX with hyperref package',
-        'pdf_page_size_height': 792}
-    assert pdf_info(GOOD) == good_dict
+    expected_dict = {'pdf_author': -1,
+                     'pdf_creator': -1,
+                     'pdf_keywords': -1,
+                     'pdf_page_size_height': -1,
+                     'pdf_page_size_width': -1,
+                     'pdf_pages': -1,
+                     'pdf_producer': -1,
+                     'pdf_title': -1,
+                     'pdf_version_major': 1,
+                     'pdf_version_minor': -1}
+    good_info = pdf_info(GOOD_PDF)
+    for k, v in expected_dict.items():
+        assert(k in good_info)
+        assert(v == -1 or v == good_info[k])
     temp_dir = tempfile.mkdtemp()
-    create_pdf_thumb(GOOD, os.path.join(temp_dir, 'good_256_256.png'), 256, 256)
+    create_pdf_thumb(GOOD_PDF, os.path.join(temp_dir, 'good_256_256.png'), 256, 256)
     shutil.rmtree(temp_dir)