test_store.py (1218B)
1 import unittest 2 import tempfile 3 import shutil 4 import os 5 import logging 6 import uuid 7 import datetime 8 9 from adesse.store import FsStore 10 from adesse import Attachment 11 from adesse.file import MetaType 12 13 thisdir = os.path.realpath(os.path.dirname(__file__)) 14 15 logging.basicConfig(level=logging.DEBUG) 16 17 18 def testopener(v): 19 f = open(v, 'rb') 20 return f 21 22 23 class TestFsStore(unittest.TestCase): 24 25 def setUp(self): 26 self.uubase = uuid.UUID('f253542c-78d1-4187-84f6-e15f3e686591') 27 self.storedir = tempfile.mkdtemp() 28 self.store = FsStore(self.storedir, seed=self.uubase) 29 self.store.register_sha256() 30 self.store.register_sha512() 31 32 33 def tearDown(self): 34 shutil.rmtree(self.storedir) 35 36 37 def test_put(self): 38 o = Attachment('sometitle', 'somedescription', datetime.datetime.now(datetime.UTC), 'application/pdf', lang='es', opener=testopener, subject='a test subject') 39 fp = os.path.join(thisdir, 'import.pdf') 40 o.srcadd(fp) 41 metafile = os.path.join(thisdir, 'import.xmp') 42 o.add_meta_source(MetaType.XMP, metafile) 43 o.add_tag('foo') 44 o.add_tag('bar') 45 self.store.put(o) 46 47 48 if __name__ == '__main__': 49 unittest.main()