14 use PHPUnit\Framework\TestCase;
21 if (!ini_get(
'file_uploads')) {
22 $this->markTestSkipped(
'file_uploads is disabled in php.ini');
28 $this->{method_exists($this, $_ =
'expectException') ? $_ :
'setExpectedException'}(
'Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException');
31 __DIR__.
'/Fixtures/not_here',
40 __DIR__.
'/Fixtures/test.gif',
43 filesize(__DIR__.
'/Fixtures/test.gif'),
47 $this->assertEquals(
'application/octet-stream', $file->getClientMimeType());
49 if (extension_loaded(
'fileinfo')) {
50 $this->assertEquals(
'image/gif', $file->getMimeType());
57 __DIR__.
'/Fixtures/.unknownextension',
60 filesize(__DIR__.
'/Fixtures/.unknownextension'),
64 $this->assertEquals(
'application/octet-stream', $file->getClientMimeType());
70 __DIR__.
'/Fixtures/test.gif',
73 filesize(__DIR__.
'/Fixtures/test.gif'),
77 $this->assertEquals(
'gif', $file->guessClientExtension());
83 __DIR__.
'/Fixtures/test.gif',
86 filesize(__DIR__.
'/Fixtures/test.gif'),
90 $this->assertEquals(
'jpeg', $file->guessClientExtension());
96 __DIR__.
'/Fixtures/test.gif',
99 filesize(__DIR__.
'/Fixtures/test.gif'),
103 $this->assertEquals(UPLOAD_ERR_OK, $file->getError());
109 __DIR__.
'/Fixtures/test.gif',
112 filesize(__DIR__.
'/Fixtures/test.gif'),
116 $this->assertEquals(
'original.gif', $file->getClientOriginalName());
122 __DIR__.
'/Fixtures/test.gif',
125 filesize(__DIR__.
'/Fixtures/test.gif'),
129 $this->assertEquals(
'gif', $file->getClientOriginalExtension());
138 __DIR__.
'/Fixtures/test.gif',
141 filesize(__DIR__.
'/Fixtures/test.gif'),
145 $movedFile = $file->move(__DIR__.
'/Fixtures/directory');
150 $path = __DIR__.
'/Fixtures/test.copy.gif';
151 $targetDir = __DIR__.
'/Fixtures/directory';
152 $targetPath = $targetDir.
'/test.copy.gif';
154 @unlink($targetPath);
155 copy(__DIR__.
'/Fixtures/test.gif', $path);
166 $movedFile = $file->move(__DIR__.
'/Fixtures/directory');
168 $this->assertFileExists($targetPath);
169 $this->assertFileNotExists($path);
170 $this->assertEquals(realpath($targetPath), $movedFile->getRealPath());
172 @unlink($targetPath);
178 __DIR__.
'/Fixtures/test.gif',
179 '../../original.gif',
181 filesize(__DIR__.
'/Fixtures/test.gif'),
185 $this->assertEquals(
'original.gif', $file->getClientOriginalName());
191 __DIR__.
'/Fixtures/test.gif',
194 filesize(__DIR__.
'/Fixtures/test.gif'),
198 $this->assertEquals(filesize(__DIR__.
'/Fixtures/test.gif'), $file->getSize());
201 __DIR__.
'/Fixtures/test',
206 $this->assertEquals(filesize(__DIR__.
'/Fixtures/test'), $file->getSize());
212 __DIR__.
'/Fixtures/test.gif',
217 $this->assertEquals(
'gif', $file->getExtension());
223 __DIR__.
'/Fixtures/test.gif',
226 filesize(__DIR__.
'/Fixtures/test.gif'),
231 $this->assertTrue($file->isValid());
240 __DIR__.
'/Fixtures/test.gif',
243 filesize(__DIR__.
'/Fixtures/test.gif'),
247 $this->assertFalse($file->isValid());
253 array(UPLOAD_ERR_INI_SIZE),
254 array(UPLOAD_ERR_FORM_SIZE),
255 array(UPLOAD_ERR_PARTIAL),
256 array(UPLOAD_ERR_NO_TMP_DIR),
257 array(UPLOAD_ERR_EXTENSION),
264 __DIR__.
'/Fixtures/test.gif',
267 filesize(__DIR__.
'/Fixtures/test.gif'),
271 $this->assertFalse($file->isValid());