Skip to content

Commit 63453a1

Browse files
committed
fixed rules array bug
1 parent 7865169 commit 63453a1

File tree

4 files changed

+26
-2
lines changed

4 files changed

+26
-2
lines changed

src/Parameters/BodyParameterGenerator.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public function getParameters()
1919
];
2020

2121
foreach ($this->rules as $param => $rule) {
22-
$paramRules = explode('|', $rule);
22+
$paramRules = $this->splitRules($rule);
2323

2424
if ($this->isParamRequired($paramRules)) {
2525
$required[] = $param;

src/Parameters/ParameterGenerator.php

+9
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,13 @@ protected function isParamRequired(array $paramRules)
4141
{
4242
return in_array('required', $paramRules);
4343
}
44+
45+
protected function splitRules($rules)
46+
{
47+
if (is_string($rules)) {
48+
return explode('|', $rules);
49+
} else {
50+
return $rules;
51+
}
52+
}
4453
}

src/Parameters/QueryParameterGenerator.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ public function getParameters()
99
$params = [];
1010

1111
foreach ($this->rules as $param => $rule) {
12-
$paramRules = explode('|', $rule);
12+
$paramRules = $this->splitRules($rule);
1313

1414
$params[] = [
1515
'in' => $this->getParamLocation(),

tests/Parameters/QueryParameterGeneratorTest.php

+15
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
class QueryParameterGeneratorTest extends TestCase
99
{
10+
1011
public function testRequiredParameter()
1112
{
1213
$queryParameters = $this->getQueryParameters([
@@ -21,6 +22,20 @@ public function testRequiredParameter()
2122
], $queryParameters[0]);
2223
}
2324

25+
public function testRulesAsArray()
26+
{
27+
$queryParameters = $this->getQueryParameters([
28+
'id' => ['integer', 'required'],
29+
]);
30+
31+
$this->assertArraySubset([
32+
'in' => 'query',
33+
'type' => 'integer',
34+
'name' => 'id',
35+
'required' => true,
36+
], $queryParameters[0]);
37+
}
38+
2439
public function testOptionalParameter()
2540
{
2641
$queryParameters = $this->getQueryParameters([

0 commit comments

Comments
 (0)