2012-01-12 61 views
2

在Play 1.2.4中,我一直在努力解決爲什麼我的功能測試不能正確地POST文件數據(它是空的)。控制器動作我測試的是:在Play Framework中進行功能測試和發佈文件?

doUploadProfileImage(@Required File file, User user) 

和功能測試代碼調用它是這樣的:

File file = VirtualFile.fromRelativePath("/test/imagetest.jpg").getRealFile(); 

Map<String,String> params = new HashMap<String,String>(); 
params.put("user.id", user.id.toString()); 

Map<String,File> files = new HashMap<String,File>(); 
files.put("file", file); 

Response response = POST(Router.reverse("ImageController.doUploadProfileImage").url, params, files); 

當我在調試步,一切POST之前似乎確定,但是當我達到「doUploadProfileImage()」,「文件」參數爲NULL。

關於這裏發生了什麼的提示?播放服務器檢查/記錄收到/原始POST數據的簡單方法是什麼?

在此先感謝, SM

+0

我想知道這是否與播放上傳tmp文件有關,或許它們在控制器代碼運行之前被刪除。將盡快調查並報告回來。 – starmonkey 2012-01-18 00:43:23

回答

1

我發現這個問題還,幾個小時後,調試,只因爲這行是我的conf/application.conf用於播放的Cobertura模塊:

%test.play.tmp=none 

改爲:

%test.play.tmp=/tmp 

它的工作原理!

相關問題