Skip to content

Commit 6adb2e0

Browse files
rvdbogerdm1guelpf
authored andcommitted
Implement arguments for environment api method
1 parent 5975617 commit 6adb2e0

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

lib/Gitlab/Api/Environments.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ class Environments extends AbstractApi
1212
public function all($project_id, array $parameters = [])
1313
{
1414
$resolver = $this->createOptionsResolver();
15+
$resolver->setDefined('name')
16+
->setAllowedTypes('name', 'string');
17+
$resolver->setDefined('search')
18+
->setAllowedTypes('search', 'string');
19+
1520
return $this->get($this->getProjectPath($project_id, 'environments'), $resolver->resolve($parameters));
1621
}
1722

test/Gitlab/Tests/Api/EnvironmentsTest.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,25 @@ public function shouldGetAllEnvironments()
3030
$this->assertEquals($expectedArray, $api->all(1));
3131
}
3232

33+
/** @test */
34+
public function shouldFilterEnvironmentByName()
35+
{
36+
$expected = array(
37+
array(
38+
'id' => 2,
39+
'name' => 'review/fix-bar',
40+
'slug' => 'review-fix-bar-dfjre4',
41+
'external_url' => 'https://review-fix-bar-dfjre4.example.gitlab.com'
42+
),
43+
);
44+
$api = $this->getApiMock();
45+
$api->expects($this->once())
46+
->method('get')
47+
->with('projects/1/environments')
48+
->will($this->returnValue($expected));
49+
$this->assertEquals($expected, $api->all(1, ['name' => 'review/fix-bar']));
50+
}
51+
3352
/**
3453
* @test
3554
*/

0 commit comments

Comments
 (0)