Skip to content

Commit d668dca

Browse files
committed
Team: Add Type-honts and Update Tests
1 parent 3bc74b7 commit d668dca

File tree

2 files changed

+46
-62
lines changed

2 files changed

+46
-62
lines changed

src/Api/Teams.php

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public function all()
1818
return $this->get('/teams/');
1919
}
2020

21-
public function create($name, TeamPermissions $permissions)
21+
public function create(string $name, TeamPermissions $permissions): array
2222
{
2323
$parameters = [
2424
'name' => $name,
@@ -34,7 +34,7 @@ public function create($name, TeamPermissions $permissions)
3434
return $this->post('/teams/', $parameters);
3535
}
3636

37-
public function edit($teamId, $name, TeamPermissions $permissions)
37+
public function edit($teamId, string $name, TeamPermissions $permissions): array
3838
{
3939
$parameters = [
4040
'name' => $name,
@@ -50,19 +50,23 @@ public function edit($teamId, $name, TeamPermissions $permissions)
5050
return $this->put(sprintf('/teams/%s/', $teamId), $parameters);
5151
}
5252

53-
public function remove($teamId)
53+
public function remove($teamId): bool
5454
{
55-
return $this->delete(sprintf('/teams/%s/', $teamId));
55+
// Returns empty response on success.
56+
$this->delete(sprintf('/teams/%s/', $teamId));
57+
return true;
5658
}
5759

58-
public function addMember($teamId, $userId)
60+
public function addMember($teamId, $userId): array
5961
{
6062
return $this->put(sprintf('/teams/%s/members/%s/', $teamId, $userId));
6163
}
6264

63-
public function removeMember($teamId, $userId)
65+
public function removeMember($teamId, $userId): bool
6466
{
65-
return $this->delete(sprintf('/teams/%s/members/%s/', $teamId, $userId));
67+
// Returns empty response on success.
68+
$this->delete(sprintf('/teams/%s/members/%s/', $teamId, $userId));
69+
return true;
6670
}
6771

6872
public function packages($teamId)

tests/Api/TeamsTest.php

Lines changed: 35 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -94,19 +94,17 @@ public function testRemovePackage()
9494
$this->assertSame($expected, $api->removePackage(1, 'acme-website/package'));
9595
}
9696

97-
public function testCreateTeam()
97+
public function testCreateTeam(): void
9898
{
9999
$expected = [
100-
[
101-
'id' => 1,
102-
'name' => 'New Team',
103-
'permissions' => [
104-
'canEditTeamPackages' => true,
105-
'canAddPackages' => false,
106-
'canCreateSubrepositories' => false,
107-
'canViewVendorCustomers' => true,
108-
'canManageVendorCustomers' => false,
109-
],
100+
'id' => 1,
101+
'name' => 'New Team',
102+
'permissions' => [
103+
'canEditTeamPackages' => true,
104+
'canAddPackages' => false,
105+
'canCreateSubrepositories' => false,
106+
'canViewVendorCustomers' => true,
107+
'canManageVendorCustomers' => false,
110108
],
111109
];
112110

@@ -132,19 +130,17 @@ public function testCreateTeam()
132130
$this->assertSame($expected, $api->create('New Team', $permissions));
133131
}
134132

135-
public function testEditTeam()
133+
public function testEditTeam(): void
136134
{
137135
$expected = [
138-
[
139-
'id' => 1,
140-
'name' => 'New Team',
141-
'permissions' => [
142-
'canEditTeamPackages' => true,
143-
'canAddPackages' => false,
144-
'canCreateSubrepositories' => false,
145-
'canViewVendorCustomers' => true,
146-
'canManageVendorCustomers' => false,
147-
],
136+
'id' => 123,
137+
'name' => 'New Team',
138+
'permissions' => [
139+
'canEditTeamPackages' => true,
140+
'canAddPackages' => false,
141+
'canCreateSubrepositories' => false,
142+
'canViewVendorCustomers' => true,
143+
'canManageVendorCustomers' => false,
148144
],
149145
];
150146

@@ -170,36 +166,30 @@ public function testEditTeam()
170166
$this->assertSame($expected, $api->edit(123, 'New Team', $permissions));
171167
}
172168

173-
public function testDeleteTeam()
169+
public function testDeleteTeam(): void
174170
{
175-
$expected = null;
176-
177171
/** @var Teams&MockObject $api */
178172
$api = $this->getApiMock();
179173
$api->expects($this->once())
180174
->method('delete')
181175
->with($this->equalTo('/teams/1/'))
182-
->willReturn($expected);
176+
// Will return empty response.
177+
->willReturn([]);
183178

184-
$this->assertSame($expected, $api->remove(1));
179+
$this->assertSame(true, $api->remove(1));
185180
}
186181

187-
public function testAddMember()
182+
public function testAddMember(): void
188183
{
189184
$expected = [
190-
[
191-
'id' => 1,
192-
'name' => 'New Team',
193-
'permission' => 'view',
194-
'members' => [
195-
[
196-
'id' => 12,
197-
'username' => 'username'
198-
]
199-
],
200-
'projects' => [
201-
],
202-
]
185+
'id' => 1,
186+
'name' => 'New Team',
187+
'members' => [
188+
[
189+
'id' => 12,
190+
'username' => 'username'
191+
]
192+
],
203193
];
204194

205195
/** @var Teams&MockObject $api */
@@ -212,27 +202,17 @@ public function testAddMember()
212202
$this->assertSame($expected, $api->addMember(1, 12));
213203
}
214204

215-
public function removeMember()
205+
public function removeMember(): void
216206
{
217-
$expected = [
218-
[
219-
'id' => 1,
220-
'name' => 'New Team',
221-
'permission' => 'view',
222-
'members' => [],
223-
'projects' => [
224-
],
225-
]
226-
];
227-
228207
/** @var Teams&MockObject $api */
229208
$api = $this->getApiMock();
230209
$api->expects($this->once())
231210
->method('delete')
232211
->with($this->equalTo('/teams/1/members/12/'))
233-
->willReturn($expected);
212+
// Will return empty response.
213+
->willReturn([]);
234214

235-
$this->assertSame($expected, $api->removeMember(1, 12));
215+
$this->assertSame(true, $api->removeMember(1, 12));
236216
}
237217

238218
/**

0 commit comments

Comments
 (0)