我无法在我的PHPUnit测试中创建伪造的UploadedFile
。
我为Laravel找到了solution,但对于Symfony却找不到。
这是我的代码:
$path = '/tmp';
$originalName = 'MANA-BULL 12-2018 Ali.pdf';
$mimeType = "application/pdf";
$size = 4455;
$error = 0;
$fileRaw = new UploadedFile(
$path,
$originalName,
$mimeType,
$size,
$error,
$test = false
);
return $fileRaw;
我收到以下异常:
Symfony \ Component \ HttpFoundation \ File \ Exception \ FileNotFoundException: 文件“ / tmp”不存在
我该如何解决这个问题?
答案 0 :(得分:0)
在测试目录中,创建一个名为Fixtures的文件夹。在该文件夹中,放置测试PDF文件。通过测试,您现在可以像这样创建上传文件:
<?php
namespace App\Tests\Functional;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
use Symfony\Component\HttpFoundation\File\UploadedFile;
class UploadTest extends WebTestCase
{
public function test_uploadFile()
{
$uploadedFile = new UploadedFile(
__DIR__.'../fixtures/foo.pdf',
'foo.pdf'
);
}
}