@@ -25,32 +25,43 @@ public function basicBehaviorDataProvider()
25
25
{
26
26
$ testFile = __DIR__ . '/_files/picture.jpg ' ;
27
27
$ fileUpload = [
28
- 'tmp_name ' => $ testFile , 'name ' => basename ($ testFile ),
29
- 'size ' => 200 , 'error ' => 0 , 'type ' => 'image/jpeg '
28
+ 'tmp_name ' => $ testFile ,
29
+ 'name ' => basename ($ testFile ),
30
+ 'size ' => 200 ,
31
+ 'error ' => 0 ,
32
+ 'type ' => 'image/jpeg ' ,
30
33
];
34
+
35
+ $ falseTypeMessage = [ExcludeMimeType::FALSE_TYPE => "File has an incorrect mimetype of 'image/jpeg' " ];
36
+
31
37
return [
32
- // Options, isValid Param, Expected value
33
- ['image/gif ' , $ fileUpload , true ],
34
- ['image ' , $ fileUpload , false ],
35
- ['test/notype ' , $ fileUpload , true ],
36
- ['image/gif, image/jpeg ' , $ fileUpload , false ],
37
- [['image/vasa ' , 'image/gif ' ], $ fileUpload , true ],
38
- [['image/gif ' , 'jpeg ' ], $ fileUpload , false ],
39
- [['image/gif ' , 'gif ' ], $ fileUpload , true ],
38
+ // Options, isValid Param, Expected value, messages
39
+ ['image/gif ' , $ fileUpload , true , [] ],
40
+ ['image ' , $ fileUpload , false , $ falseTypeMessage ],
41
+ ['test/notype ' , $ fileUpload , true , [] ],
42
+ ['image/gif, image/jpeg ' , $ fileUpload , false , $ falseTypeMessage ],
43
+ [['image/vasa ' , 'image/gif ' ], $ fileUpload , true , [] ],
44
+ [['image/gif ' , 'jpeg ' ], $ fileUpload , false , $ falseTypeMessage ],
45
+ [['image/gif ' , 'gif ' ], $ fileUpload , true , [] ],
40
46
];
41
47
}
42
48
43
49
/**
44
50
* Ensures that the validator follows expected behavior
45
51
*
46
52
* @dataProvider basicBehaviorDataProvider
47
- * @return void
53
+ *
54
+ * @param string|array $options
55
+ * @param array $isValidParam
56
+ * @param bool $expected
57
+ * @param array $messages
48
58
*/
49
- public function testBasic ($ options , $ isValidParam , $ expected )
59
+ public function testBasic ($ options , array $ isValidParam , $ expected, array $ messages )
50
60
{
51
61
$ validator = new ExcludeMimeType ($ options );
52
62
$ validator ->enableHeaderCheck ();
53
63
$ this ->assertEquals ($ expected , $ validator ->isValid ($ isValidParam ));
64
+ $ this ->assertEquals ($ messages , $ validator ->getMessages ());
54
65
}
55
66
56
67
/**
@@ -137,6 +148,12 @@ public function testEmptyFileShouldReturnFalseAndDisplayNotFoundMessage()
137
148
138
149
$ this ->assertFalse ($ validator ->isValid ('' ));
139
150
$ this ->assertArrayHasKey (ExcludeMimeType::NOT_READABLE , $ validator ->getMessages ());
151
+ $ this ->assertNotEmpty ($ validator ->getMessages ()[ExcludeMimeType::NOT_READABLE ]);
152
+ }
153
+
154
+ public function testEmptyArrayFileShouldReturnFalseAdnDisplayNotFoundMessage ()
155
+ {
156
+ $ validator = new ExcludeMimeType ();
140
157
141
158
$ filesArray = [
142
159
'name ' => '' ,
@@ -148,6 +165,7 @@ public function testEmptyFileShouldReturnFalseAndDisplayNotFoundMessage()
148
165
149
166
$ this ->assertFalse ($ validator ->isValid ($ filesArray ));
150
167
$ this ->assertArrayHasKey (ExcludeMimeType::NOT_READABLE , $ validator ->getMessages ());
168
+ $ this ->assertNotEmpty ($ validator ->getMessages ()[ExcludeMimeType::NOT_READABLE ]);
151
169
}
152
170
153
171
public function testIsValidRaisesExceptionWithArrayNotInFilesFormat ()
0 commit comments