Skip to content

Commit e3ddadd

Browse files
committed
fixed pathparam file name and added tests
1 parent d5632ce commit e3ddadd

File tree

3 files changed

+56
-25
lines changed

3 files changed

+56
-25
lines changed
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
<?php
2+
3+
namespace Mtrajano\LaravelSwagger\Tests\Parameters;
4+
5+
use Mtrajano\LaravelSwagger\Tests\TestCase;
6+
use Mtrajano\LaravelSwagger\Parameters\PathParameterGenerator;
7+
8+
class PathParameterGeneratorTest extends TestCase
9+
{
10+
public function testRequiredParameter()
11+
{
12+
$pathParameters = $this->getPathParameters('/users/{id}');
13+
14+
$this->assertArraySubset([
15+
'in' => 'path',
16+
'name' => 'id',
17+
'required' => true,
18+
], $pathParameters[0]);
19+
}
20+
21+
public function testOptionalParameter()
22+
{
23+
$pathParameters = $this->getPathParameters('/users/{id?}');
24+
25+
$this->assertArraySubset([
26+
'required' => false,
27+
], $pathParameters[0]);
28+
}
29+
30+
public function testMultipleParameters()
31+
{
32+
$pathParameters = $this->getPathParameters('/users/{username}/{id?}');
33+
34+
$this->assertArraySubset([
35+
'name' => 'username',
36+
'required' => true,
37+
], $pathParameters[0]);
38+
39+
$this->assertArraySubset([
40+
'name' => 'id',
41+
'required' => false,
42+
], $pathParameters[1]);
43+
}
44+
45+
public function testEmptyParameters()
46+
{
47+
$pathParameters = $this->getPathParameters('/users');
48+
49+
$this->assertEmpty($pathParameters);
50+
}
51+
52+
private function getPathParameters($uri)
53+
{
54+
return (new PathParameterGenerator('get', $uri, []))->getParameters();
55+
}
56+
}

tests/Parameters/PathParemeterGeneratorTest.php

Lines changed: 0 additions & 25 deletions
This file was deleted.

0 commit comments

Comments
 (0)