2017-11-18 3 views
0

テストファイルを使用してテストをモックしようとすると、スタックされてしまいます。基本的にwithUploadedFiles()メソッドは私が配列で作業することを望んでいます。 あなたは以下のダウン見ることができるように、私はそれが働いているが、すべての場合には、配列が空であるかどうかを確認するためにvar_dumpにしてみてください。なぜこれが不思議ですか? 私だけvar_dump名前$uploadedFilesと私の配列は、それが私の内容を示しています。スリム3のメソッドgetUploadedFiles()は空の配列を返します

は私のミスがどこにあると思いますか?

<?php 

use Slim\Http\UploadedFile; 

class FileControllerTest extends PHPUnit_Framework_TestCase 
{ 
    // ... 

    public function testUserCanCreateAFileSuccessfullyWithStatusCode200() 
    { 
     // ... 

     $uploadedFile = new UploadedFile(
      $directory . '/File_1.txt', 
      'File_1.txt', 
      'text/plain', 
      filesize($directory . '/File_1.txt'), 
      0 
     ); 

     $uploadedFiles = array(); 
     $uploadedFiles["file"] = $uploadedFile; 

     // ... 

     $request = \Slim\Http\Request::createFromEnvironment($environment); 
     $request->withUploadedFiles($uploadedFiles);  

     var_dump($request->getUploadedFiles());   // array(0) { } 

     // ... 
    } 
} 

答えて

1

要求は不変で、あなたがそれを操作するとき、あなたは常に新しいインスタンスを作成します...

$request = $request->withUploadedFiles($uploadedFiles); 
+0

あなたは本当に鋭い目見通しを持っています! – Magiranu

関連する問題