PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.3.1
GiveWP – Donation Plugin and Fundraising Platform v3.3.1
4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / vendor / vendor-prefixed / symfony / http-foundation / Tests / FileBagTest.php
give / vendor / vendor-prefixed / symfony / http-foundation / Tests Last commit date
File 2 years ago Fixtures 2 years ago Session 2 years ago schema 2 years ago AcceptHeaderItemTest.php 2 years ago AcceptHeaderTest.php 2 years ago ApacheRequestTest.php 2 years ago BinaryFileResponseTest.php 2 years ago CookieTest.php 2 years ago ExpressionRequestMatcherTest.php 2 years ago FileBagTest.php 2 years ago HeaderBagTest.php 2 years ago IpUtilsTest.php 2 years ago JsonResponseTest.php 2 years ago ParameterBagTest.php 2 years ago RedirectResponseTest.php 2 years ago RequestMatcherTest.php 2 years ago RequestStackTest.php 2 years ago RequestTest.php 2 years ago ResponseFunctionalTest.php 2 years ago ResponseHeaderBagTest.php 2 years ago ResponseTest.php 2 years ago ResponseTestCase.php 2 years ago ServerBagTest.php 2 years ago StreamedResponseTest.php 2 years ago
FileBagTest.php
177 lines
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 *
11 * Modified by impress-org on 23-January-2024 using Strauss.
12 * @see https://github.com/BrianHenryIE/strauss
13 */
14
15 namespace Give\Vendors\Symfony\Component\HttpFoundation\Tests;
16
17 use PHPUnit\Framework\TestCase;
18 use Give\Vendors\Symfony\Component\HttpFoundation\File\UploadedFile;
19 use Give\Vendors\Symfony\Component\HttpFoundation\FileBag;
20
21 /**
22 * FileBagTest.
23 *
24 * @author Fabien Potencier <fabien@symfony.com>
25 * @author Bulat Shakirzyanov <mallluhuct@gmail.com>
26 */
27 class FileBagTest extends TestCase
28 {
29 public function testFileMustBeAnArrayOrUploadedFile()
30 {
31 $this->expectException('InvalidArgumentException');
32 new FileBag(['file' => 'foo']);
33 }
34
35 public function testShouldConvertsUploadedFiles()
36 {
37 $tmpFile = $this->createTempFile();
38 $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
39
40 $bag = new FileBag(['file' => [
41 'name' => basename($tmpFile),
42 'type' => 'text/plain',
43 'tmp_name' => $tmpFile,
44 'error' => 0,
45 'size' => 100,
46 ]]);
47
48 $this->assertEquals($file, $bag->get('file'));
49 }
50
51 public function testShouldSetEmptyUploadedFilesToNull()
52 {
53 $bag = new FileBag(['file' => [
54 'name' => '',
55 'type' => '',
56 'tmp_name' => '',
57 'error' => \UPLOAD_ERR_NO_FILE,
58 'size' => 0,
59 ]]);
60
61 $this->assertNull($bag->get('file'));
62 }
63
64 public function testShouldRemoveEmptyUploadedFilesForMultiUpload()
65 {
66 $bag = new FileBag(['files' => [
67 'name' => [''],
68 'type' => [''],
69 'tmp_name' => [''],
70 'error' => [\UPLOAD_ERR_NO_FILE],
71 'size' => [0],
72 ]]);
73
74 $this->assertSame([], $bag->get('files'));
75 }
76
77 public function testShouldNotRemoveEmptyUploadedFilesForAssociativeArray()
78 {
79 $bag = new FileBag(['files' => [
80 'name' => ['file1' => ''],
81 'type' => ['file1' => ''],
82 'tmp_name' => ['file1' => ''],
83 'error' => ['file1' => \UPLOAD_ERR_NO_FILE],
84 'size' => ['file1' => 0],
85 ]]);
86
87 $this->assertSame(['file1' => null], $bag->get('files'));
88 }
89
90 public function testShouldConvertUploadedFilesWithPhpBug()
91 {
92 $tmpFile = $this->createTempFile();
93 $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
94
95 $bag = new FileBag([
96 'child' => [
97 'name' => [
98 'file' => basename($tmpFile),
99 ],
100 'type' => [
101 'file' => 'text/plain',
102 ],
103 'tmp_name' => [
104 'file' => $tmpFile,
105 ],
106 'error' => [
107 'file' => 0,
108 ],
109 'size' => [
110 'file' => 100,
111 ],
112 ],
113 ]);
114
115 $files = $bag->all();
116 $this->assertEquals($file, $files['child']['file']);
117 }
118
119 public function testShouldConvertNestedUploadedFilesWithPhpBug()
120 {
121 $tmpFile = $this->createTempFile();
122 $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
123
124 $bag = new FileBag([
125 'child' => [
126 'name' => [
127 'sub' => ['file' => basename($tmpFile)],
128 ],
129 'type' => [
130 'sub' => ['file' => 'text/plain'],
131 ],
132 'tmp_name' => [
133 'sub' => ['file' => $tmpFile],
134 ],
135 'error' => [
136 'sub' => ['file' => 0],
137 ],
138 'size' => [
139 'sub' => ['file' => 100],
140 ],
141 ],
142 ]);
143
144 $files = $bag->all();
145 $this->assertEquals($file, $files['child']['sub']['file']);
146 }
147
148 public function testShouldNotConvertNestedUploadedFiles()
149 {
150 $tmpFile = $this->createTempFile();
151 $file = new UploadedFile($tmpFile, basename($tmpFile), 'text/plain', 100, 0);
152 $bag = new FileBag(['image' => ['file' => $file]]);
153
154 $files = $bag->all();
155 $this->assertEquals($file, $files['image']['file']);
156 }
157
158 protected function createTempFile()
159 {
160 return tempnam(sys_get_temp_dir().'/form_test', 'FormTest');
161 }
162
163 protected function setUp()
164 {
165 mkdir(sys_get_temp_dir().'/form_test', 0777, true);
166 }
167
168 protected function tearDown()
169 {
170 foreach (glob(sys_get_temp_dir().'/form_test/*') as $file) {
171 @unlink($file);
172 }
173
174 @rmdir(sys_get_temp_dir().'/form_test');
175 }
176 }
177