def test_get_metadata_without_encrypted(tmp_path): from ReadPDFFileV2 import get_pdf_metadata try: get_pdf_metadata(f'{CWD}/encrypted.pdf') raise Exception("Incorrect password exception should've been thrown") except ShellException as e: assert 'Incorrect password' in str(e) assert 'error code: 1' in str(e) metadata = get_pdf_metadata(f'{CWD}/text-only.pdf') expected = { 'Title': 'Microsoft Word - Document1', 'Keywords': '', 'Creator': 'Word', 'Producer': 'macOS Version 10.14.4 (Build 18E226) Quartz PDFContext', 'Tagged': 'no', 'UserProperties': 'no', 'Suspects': 'no', 'Form': 'none', 'JavaScript': 'no', 'Pages': '1', 'Encrypted': 'no', 'PageSize': '595 x 842 pts (A4)', 'PageRot': '0', 'FileSize': '18920 bytes', 'Optimized': 'no', 'PDFVersion': '1.3' } assert expected.items() <= metadata.items()
def test_get_pdf_metadata_with_encrypted(): from ReadPDFFileV2 import get_pdf_metadata file_path = f'{CWD}/encrypted.pdf' metadata = get_pdf_metadata(file_path, user_password='******') expected = { 'Title': 'sample1.pdf', 'Keywords': '', 'Creator': 'Preview', 'Producer': 'macOS Version 10.14.4 (Build 18E226) Quartz PDFContext', 'Tagged': 'no', 'UserProperties': 'no', 'Suspects': 'no', 'Form': 'none', 'JavaScript': 'no', 'Pages': '2', 'Encrypted': 'yes (print:yes copy:yes change:yes addNotes:yes algorithm:AES)', 'PageSize': '595 x 842 pts (A4)', 'PageRot': '0', 'FileSize': '71085 bytes', 'Optimized': 'no', 'PDFVersion': '1.6' } assert expected.items() <= metadata.items()
def test_get_pdf_metadata_with_encrypted(mocker): mocker.patch.object(demisto, 'args', return_value={'userPassword': '******'}) from ReadPDFFileV2 import get_pdf_metadata metadata = get_pdf_metadata(f'{CWD}/encrypted.pdf') expected = { 'Title': 'sample1.pdf', 'Keywords': '', 'Creator': 'Preview', 'Producer': 'macOS Version 10.14.4 (Build 18E226) Quartz PDFContext', 'Tagged': 'no', 'UserProperties': 'no', 'Suspects': 'no', 'Form': 'none', 'JavaScript': 'no', 'Pages': '2', 'Encrypted': 'yes (print:yes copy:yes change:yes addNotes:yes algorithm:AES)', 'Page size': '595 x 842 pts (A4)', 'Page rot': '0', 'File size': '71085 bytes', 'Optimized': 'no', 'PDF version': '1.6' } assert expected.items() <= metadata.items()