Simplify BMP handling
This commit is contained in:
parent
53271495f7
commit
3d80f97524
@ -5,7 +5,7 @@ from . import abstract
|
||||
|
||||
class HarmlessParser(abstract.AbstractParser):
|
||||
""" This is the parser for filetypes that do not contain metadata. """
|
||||
mimetypes = {'text/plain', }
|
||||
mimetypes = {'text/plain', 'image/x-ms-bmp'}
|
||||
|
||||
def get_meta(self) -> Dict[str, str]:
|
||||
return dict()
|
||||
|
@ -110,19 +110,3 @@ class TiffParser(GdkPixbufAbstractParser):
|
||||
'FilePermissions', 'FileSize', 'FileType',
|
||||
'FileTypeExtension', 'ImageHeight', 'ImageSize',
|
||||
'ImageWidth', 'MIMEType', 'Megapixels', 'SourceFile'}
|
||||
|
||||
|
||||
class BMPParser(GdkPixbufAbstractParser):
|
||||
_type = 'bmp'
|
||||
mimetypes = {'image/x-ms-bmp'}
|
||||
meta_whitelist = {'SourceFile', 'ExifToolVersion', 'FileName', 'Directory',
|
||||
'FileSize', 'FileModifyDate', 'FileAccessDate',
|
||||
'FileInodeChangeDate', 'FilePermissions', 'FileType',
|
||||
'FileTypeExtension', 'MIMEType', 'BMPVersion',
|
||||
'ImageWidth', 'ImageHeight', 'Planes', 'BitDepth',
|
||||
'Compression', 'ImageLength', 'PixelsPerMeterX',
|
||||
'PixelsPerMeterY', 'NumColors', 'NumImportantColors',
|
||||
'RedMask', 'GreenMask', 'BlueMask', 'AlphaMask',
|
||||
'ColorSpace', 'RedEndpoint', 'GreenEndpoint',
|
||||
'BlueEndpoint', 'GammaRed', 'GammaGreen', 'GammaBlue',
|
||||
'ImageSize', 'Megapixels'}
|
||||
|
@ -4,7 +4,7 @@ import unittest
|
||||
import shutil
|
||||
import os
|
||||
|
||||
from libmat2 import pdf, images, audio, office, parser_factory, torrent
|
||||
from libmat2 import pdf, images, audio, office, parser_factory, torrent, harmless
|
||||
|
||||
|
||||
class TestUnsupportedFiles(unittest.TestCase):
|
||||
@ -65,8 +65,7 @@ class TestCorruptedFiles(unittest.TestCase):
|
||||
|
||||
def test_bmp(self):
|
||||
shutil.copy('./tests/data/dirty.png', './tests/data/clean.bmp')
|
||||
with self.assertRaises(ValueError):
|
||||
images.BMPParser('./tests/data/clean.bmp')
|
||||
harmless.HarmlessParser('./tests/data/clean.bmp')
|
||||
os.remove('./tests/data/clean.bmp')
|
||||
|
||||
def test_docx(self):
|
||||
|
@ -417,7 +417,7 @@ class TestCleaning(unittest.TestCase):
|
||||
|
||||
def test_bmp(self):
|
||||
shutil.copy('./tests/data/dirty.bmp', './tests/data/clean.bmp')
|
||||
p = images.BMPParser('./tests/data/clean.bmp')
|
||||
p = harmless.HarmlessParser('./tests/data/clean.bmp')
|
||||
|
||||
meta = p.get_meta()
|
||||
self.assertEqual(meta, {}) # bmp has no meta :)
|
||||
@ -425,7 +425,7 @@ class TestCleaning(unittest.TestCase):
|
||||
ret = p.remove_all()
|
||||
self.assertTrue(ret)
|
||||
|
||||
p = images.BMPParser('./tests/data/clean.cleaned.bmp')
|
||||
p = harmless.HarmlessParser('./tests/data/clean.cleaned.bmp')
|
||||
self.assertEqual(p.get_meta(), {})
|
||||
|
||||
os.remove('./tests/data/clean.bmp')
|
||||
|
Loading…
Reference in New Issue
Block a user