Skip to content

Commit 044cbc4

Browse files
committed
Customer: handle packages by name not id
1 parent 85955e3 commit 044cbc4

File tree

3 files changed

+11
-10
lines changed

3 files changed

+11
-10
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Returns an array of customer packages.
6363
```php
6464
$customerId = 42;
6565
$packages = [
66-
['id' => 12],
66+
['name' => 'acme-website/package'],
6767
];
6868
$packages = $client->customers()->addPackages($customerId, $packages);
6969
```
@@ -72,8 +72,8 @@ Returns an array of added customer packages.
7272
##### Revoke access to a package from a customer
7373
```php
7474
$customerId = 42;
75-
$packageId = 12;
76-
$client->customers()->removePackage($customerId, $packageId);
75+
$packageName = 'acme-website/package';
76+
$client->customers()->removePackage($customerId, $packageName);
7777
```
7878

7979
#### Package

src/Api/Customers.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ public function addPackages($customerId, array $packages)
2929
return $this->post(sprintf('/customers/%s/packages/', $customerId), $packages);
3030
}
3131

32-
public function removePackage($customerId, $packageId)
32+
public function removePackage($customerId, $packageName)
3333
{
34-
return $this->delete(sprintf('/customers/%s/packages/%s/', $customerId, $packageId));
34+
return $this->delete(sprintf('/customers/%s/packages/%s/', $customerId, $packageName));
3535
}
3636
}

tests/Api/CustomersTest.php

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,8 @@ public function testListPackages()
6262
{
6363
$expected = [
6464
[
65-
'id' => 1,
6665
'name' => 'composer/composer',
66+
'origin' => 'private',
6767
],
6868
];
6969

@@ -81,12 +81,12 @@ public function testAddPackages()
8181
{
8282
$expected = [
8383
[
84-
'id' => 2,
8584
'name' => 'composer/composer',
85+
'origin' => 'private',
8686
],
8787
];
8888

89-
$packages = [['id' => 1]];
89+
$packages = [['name' => 'composer/composer']];
9090

9191
/** @var Customers&\PHPUnit_Framework_MockObject_MockObject $api */
9292
$api = $this->getApiMock();
@@ -101,15 +101,16 @@ public function testAddPackages()
101101
public function testRemovePackage()
102102
{
103103
$expected = '';
104+
$packageName = 'composer/composer';
104105

105106
/** @var Customers&\PHPUnit_Framework_MockObject_MockObject $api */
106107
$api = $this->getApiMock();
107108
$api->expects($this->once())
108109
->method('delete')
109-
->with($this->equalTo('/customers/1/packages/2/'))
110+
->with($this->equalTo(sprintf('/customers/1/packages/%s/', $packageName)))
110111
->will($this->returnValue($expected));
111112

112-
$this->assertSame($expected, $api->removePackage(1, 2));
113+
$this->assertSame($expected, $api->removePackage(1, $packageName));
113114
}
114115

115116
protected function getApiClass()

0 commit comments

Comments
 (0)