2012-01-01 77 views
0

我設法讓下面的代碼片段在開發服務器中成功運行,將圖像重新調整爲300x300像素作爲Web請求的一部分。Google App Engine的ImagesServiceFactory.getImagesService()可用於單元測試嗎?

但是,我似乎無法在單元測試中運行它們。

byte[] data = loadMyData(); 
OutputSettings format = new OutputSettings(ImagesService.OutputEncoding.JPEG); 

Image resized = getImagesService().applyTransform(makeResize(300, 300, 0, 0), data, format); 

上面的代碼在單元測試中拋出這個異常:

java.lang.IllegalArgumentException: Failed to read image 
    at com.google.appengine.api.images.ImagesServiceImpl.convertApplicationException(ImagesServiceImpl.java:333) 
    at com.google.appengine.api.images.ImagesServiceImpl.applyTransform(ImagesServiceImpl.java:86) 
    at com.google.appengine.api.images.ImagesServiceImpl.applyTransform(ImagesServiceImpl.java:63) 

添加「LocalImagesServiceTestConfig」到LocalServiceTestHelper沒有任何區別。

希望有人可以確認我們是否可以實際使用getImagesService()來調整(Java)單元測試中的圖像大小。

回答

0

我可能會錯過這裏的東西,但難道你不能只用get_serving_url來調整你的尺寸嗎?它可用於Java imagesService.getServingUrl(blob) http://code.google.com/appengine/docs/java/javadoc/com/google/appengine/api/images/ImagesService.html#getServingUrl%28com.google.appengine.api.blobstore.BlobKey,%20int,%20boolean%29 問候, 尼克拉斯

+0

我的本意是通過一個單獨的任務上傳調整後的圖像到Amazon S3。想法是將調整大小的字節存儲在blobstore中作爲temp。 – kctang 2012-01-02 01:39:07

相關問題