def topic(self, callback): self.conn = S3Connection() self.conn.create_bucket(s3_bucket) config = Config(TC_AWS_RESULT_STORAGE_BUCKET=s3_bucket) ctx = Context(config=config, server=get_server('ACME-SEC')) ctx.request = Request ctx.request.url = 'my-image-2.jpg' storage = Storage(ctx) storage.put(IMAGE_BYTES) storage.get(callback=callback)
def test_can_get_image(self): config = Config(TC_AWS_RESULT_STORAGE_BUCKET=s3_bucket) ctx = Context(config=config, server=get_server('ACME-SEC')) ctx.request = Request ctx.request.url = 'my-image-2.jpg' storage = Storage(ctx) yield storage.put(IMAGE_BYTES) topic = yield storage.get() self.assertEqual(topic.buffer, IMAGE_BYTES)
def test_can_get_image_with_metadata(self): config = Config(TC_AWS_RESULT_STORAGE_BUCKET=s3_bucket, TC_AWS_STORE_METADATA=True) ctx = Context(config=config, server=get_server('ACME-SEC')) ctx.headers = { 'Content-Type': 'image/webp', 'Some-Other-Header': 'doge-header' } ctx.request = Request ctx.request.url = 'my-image-meta.jpg' storage = Storage(ctx) yield storage.put(IMAGE_BYTES) file_abspath = storage._normalize_path(ctx.request.url) topic = yield storage.get(file_abspath) self.assertIn('Some-Other-Header', topic.metadata['Metadata']) self.assertEqual(topic.metadata['Metadata']['Content-Type'], 'image/webp') self.assertEqual(topic.buffer, IMAGE_BYTES)