def file_type_test(self, bucket_method, test_file, content_type, resized_size): bucket = Mock() bucket_method.return_value = bucket new_key = Mock() bucket.new_key.return_value = new_key image_handler = ImageHandler(filename=test_file) truck = ImageTruck.new_from_file(test_file) session = Client().session() image = ImageTable(filename='badcafe') session.add(image) session.flush() after_upload = Mock() ResizeImage._resize_image(image, image_handler, truck, 'thumbnail', after_upload) new_key.set_metadata.assert_called_with('Content-Type', content_type) resized_contents = new_key.set_contents_from_string.call_args[0][0] image_handler = ImageHandler(blob=resized_contents) eq_(image_handler.size, resized_size) after_upload.assert_called_once_with('thumbnail')
def test_new_from_file(self, subprocess): subprocess.check_output.return_value = \ 'space-centurion.png: PNG image data, 1280 x 800, ' \ '8-bit/color RGB, non-interlaced' (_, image) = tempfile.mkstemp() with open(image, 'w') as image_file: image_file.write('here are some contents') truck = ImageTruck.new_from_file(image) eq_(truck.content_type, "image/png") eq_(truck.contents, 'here are some contents') eq_(truck.source_url, None) subprocess.check_output.assert_called_with(['file', image])
def test_new_from_file__raises_well_for_non_image_files(self): try: truck = ImageTruck.new_from_file(__file__) except Exception, e: eq_(e.message, "'%s' doesn't seem to be an image file" % __file__) eq_(type(e), TypeError)