1
1
<?php
2
2
3
+ use Illuminate \Foundation \Http \FormRequest ;
3
4
use Illuminate \Routing \Controller ;
4
5
use Illuminate \Routing \Route ;
5
6
use Mpociot \ApiDoc \ApiDocGenerator ;
@@ -55,6 +56,21 @@ public function testCanParseRouteMethods()
55
56
$ this ->assertEquals (['DELETE ' ], $ parsed ['methods ' ]);
56
57
}
57
58
59
+ public function testCanParseFormRequestRules ()
60
+ {
61
+ \Illuminate \Support \Facades \Route::post ('/post ' , 'TestController@parseFormRequestRules ' );
62
+ $ route = new Route (['POST ' ], '/post ' , ['uses ' => 'TestController@parseFormRequestRules ' ]);
63
+ $ parsed = $ this ->generator ->processRoute ($ route );
64
+ $ parameters = $ parsed ['parameters ' ];
65
+ $ this ->assertArrayHasKey ('required_attribute ' , $ parameters );
66
+
67
+ $ required_attribute = $ parameters ['required_attribute ' ];
68
+
69
+ $ this ->assertTrue ( $ required_attribute ['required ' ] );
70
+ $ this ->assertEquals ( 'string ' , $ required_attribute ['type ' ] );
71
+ $ this ->assertCount ( 0 , $ required_attribute ['description ' ] );
72
+ }
73
+
58
74
}
59
75
60
76
class TestController extends Controller
@@ -76,4 +92,19 @@ public function parseMethodDescription()
76
92
return '' ;
77
93
}
78
94
95
+ public function parseFormRequestRules (TestRequest $ request )
96
+ {
97
+ return '' ;
98
+ }
99
+
100
+ }
101
+
102
+ class TestRequest extends FormRequest
103
+ {
104
+ public function rules ()
105
+ {
106
+ return [
107
+ 'required_attribute ' => 'required '
108
+ ];
109
+ }
79
110
}
0 commit comments