From aad954666c7a64637e3a9a6219a0f75946d53785 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Tue, 10 Jan 2017 21:05:40 +0100 Subject: [PATCH 01/12] Create Traffic.php --- lib/Github/Api/Repository/Traffic.php | 47 +++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 lib/Github/Api/Repository/Traffic.php diff --git a/lib/Github/Api/Repository/Traffic.php b/lib/Github/Api/Repository/Traffic.php new file mode 100644 index 00000000000..efe1700693d --- /dev/null +++ b/lib/Github/Api/Repository/Traffic.php @@ -0,0 +1,47 @@ + + */ +class Traffic extends AbstractApi +{ + /** + * @link https://developer.github.com/v3/repos/traffic/#list-referrers + * + * @param string $owner + * @param string $repository + * + * @return array + */ + public function list($owner, $repository) + { + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/popular/referrers'); + } + /** + * @link https://developer.github.com/v3/repos/traffic/#list-paths + * + * @param string $owner + * @param string $repository + * + * @return array + */ + public function paths($owner, $repository) + { + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/popular/paths'); + } + /** + * @link https://developer.github.com/v3/repos/traffic/#views + * + * @param string $owner + * @param string $repository + * + * @return array + */ + public function views($owner, $repository) + { + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views'); + } +} From f05e6268907f51852d6d3ea1d06202392a74cdf7 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Tue, 10 Jan 2017 21:06:33 +0100 Subject: [PATCH 02/12] Add Clones --- lib/Github/Api/Repository/Traffic.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/Github/Api/Repository/Traffic.php b/lib/Github/Api/Repository/Traffic.php index efe1700693d..42984925507 100644 --- a/lib/Github/Api/Repository/Traffic.php +++ b/lib/Github/Api/Repository/Traffic.php @@ -44,4 +44,16 @@ public function views($owner, $repository) { return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views'); } + /** + * @link https://developer.github.com/v3/repos/traffic/#clones + * + * @param string $owner + * @param string $repository + * + * @return array + */ + public function clones($owner, $repository) + { + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/clones'); + } } From a229d8a4cc4d2f7621f201f18d855390fa4f8862 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Tue, 10 Jan 2017 20:07:39 +0000 Subject: [PATCH 03/12] Apply fixes from StyleCI [ci skip] [skip ci] --- lib/Github/Api/Repository/Traffic.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/Github/Api/Repository/Traffic.php b/lib/Github/Api/Repository/Traffic.php index 42984925507..299cb289880 100644 --- a/lib/Github/Api/Repository/Traffic.php +++ b/lib/Github/Api/Repository/Traffic.php @@ -1,7 +1,9 @@ @@ -42,7 +44,7 @@ public function paths($owner, $repository) */ public function views($owner, $repository) { - return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views'); + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views'); } /** * @link https://developer.github.com/v3/repos/traffic/#clones @@ -54,6 +56,6 @@ public function views($owner, $repository) */ public function clones($owner, $repository) { - return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/clones'); + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/clones'); } } From 350b8289b515f4b59681cd546f9986ae64ef8579 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Wed, 11 Jan 2017 17:05:14 +0100 Subject: [PATCH 04/12] Add Traffic to Repo --- lib/Github/Api/Repo.php | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/Github/Api/Repo.php b/lib/Github/Api/Repo.php index 0285f44886a..864dbd42e92 100644 --- a/lib/Github/Api/Repo.php +++ b/lib/Github/Api/Repo.php @@ -15,6 +15,7 @@ use Github\Api\Repository\Labels; use Github\Api\Repository\Stargazers; use Github\Api\Repository\Statuses; +use Github\Api\Repository\Traffic; /** * Searching repositories, getting repository information From d6767ea4cc074228b784e1b827b7543fb76db684 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Wed, 11 Jan 2017 17:11:08 +0100 Subject: [PATCH 05/12] Add Traffic --- lib/Github/Api/Repo.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/Github/Api/Repo.php b/lib/Github/Api/Repo.php index 864dbd42e92..dac285afb64 100644 --- a/lib/Github/Api/Repo.php +++ b/lib/Github/Api/Repo.php @@ -550,4 +550,9 @@ public function projects() { return new Projects($this->client); } + + public function traffic() + { + return new Traffic($this->client); + } } From ded9d0434f5780f47aee6e60e9675883af4cb110 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Wed, 11 Jan 2017 16:11:15 +0000 Subject: [PATCH 06/12] Apply fixes from StyleCI [ci skip] [skip ci] --- lib/Github/Api/Repo.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/Github/Api/Repo.php b/lib/Github/Api/Repo.php index dac285afb64..2279340535c 100644 --- a/lib/Github/Api/Repo.php +++ b/lib/Github/Api/Repo.php @@ -551,8 +551,8 @@ public function projects() return new Projects($this->client); } - public function traffic() - { - return new Traffic($this->client); - } + public function traffic() + { + return new Traffic($this->client); + } } From 8264b329e9437f068994425db67452a7f8cd004d Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Wed, 11 Jan 2017 19:54:57 +0100 Subject: [PATCH 07/12] list() -> referers() --- lib/Github/Api/Repository/Traffic.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Github/Api/Repository/Traffic.php b/lib/Github/Api/Repository/Traffic.php index 299cb289880..76c89da2a66 100644 --- a/lib/Github/Api/Repository/Traffic.php +++ b/lib/Github/Api/Repository/Traffic.php @@ -18,7 +18,7 @@ class Traffic extends AbstractApi * * @return array */ - public function list($owner, $repository) + public function referers($owner, $repository) { return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/popular/referrers'); } From bf17eab89c4878e685681d6b3cd8f8b7f2de4aa0 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Thu, 12 Jan 2017 16:10:34 +0100 Subject: [PATCH 08/12] Test skeleton --- .../Tests/Api/Repository/TrafficTest.php | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 test/Github/Tests/Api/Repository/TrafficTest.php diff --git a/test/Github/Tests/Api/Repository/TrafficTest.php b/test/Github/Tests/Api/Repository/TrafficTest.php new file mode 100644 index 00000000000..27cd3f4a390 --- /dev/null +++ b/test/Github/Tests/Api/Repository/TrafficTest.php @@ -0,0 +1,37 @@ +getApiMock(); + + $api->expects($this->once()) // Expect one call + ->method('get') // A GET request + ->with('/gists/123/comments/456') // URI should be "/gists/123/comments/456" + ->will($this->returnValue($expectedValue)); // Should return the "Server response" + + // Call Comments::show + $result = $api->show(123, 456); + + // Verify that the result is the "Server response" as we expect. + $this->assertEquals($expectedValue, $result); + } + + protected function getApiClass() + { + // Tell the "getAPIMock" what class to mock. + return \Github\Api\Gist\Comments::class; + } +} From 73f9828c9de7020da508a3942dfd6b65add2abaa Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Thu, 12 Jan 2017 15:10:40 +0000 Subject: [PATCH 09/12] Apply fixes from StyleCI [ci skip] [skip ci] --- test/Github/Tests/Api/Repository/TrafficTest.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/Github/Tests/Api/Repository/TrafficTest.php b/test/Github/Tests/Api/Repository/TrafficTest.php index 27cd3f4a390..e3ad192dc14 100644 --- a/test/Github/Tests/Api/Repository/TrafficTest.php +++ b/test/Github/Tests/Api/Repository/TrafficTest.php @@ -25,13 +25,13 @@ public function shoulddoSomething() // Call Comments::show $result = $api->show(123, 456); - // Verify that the result is the "Server response" as we expect. + // Verify that the result is the "Server response" as we expect. $this->assertEquals($expectedValue, $result); } protected function getApiClass() { - // Tell the "getAPIMock" what class to mock. + // Tell the "getAPIMock" what class to mock. return \Github\Api\Gist\Comments::class; } } From 51d5ea12b0f140c04671c12307789a8d0b8cf98f Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Wed, 1 Feb 2017 18:08:25 +0100 Subject: [PATCH 10/12] Add per --- lib/Github/Api/Repository/Traffic.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/Github/Api/Repository/Traffic.php b/lib/Github/Api/Repository/Traffic.php index 76c89da2a66..9d4ca2ec29c 100644 --- a/lib/Github/Api/Repository/Traffic.php +++ b/lib/Github/Api/Repository/Traffic.php @@ -39,12 +39,13 @@ public function paths($owner, $repository) * * @param string $owner * @param string $repository + * @param string|day $per * * @return array */ - public function views($owner, $repository) + public function views($owner, $repository, $per = 'day') { - return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views'); + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views?per='.rawurlencode($per); } /** * @link https://developer.github.com/v3/repos/traffic/#clones From 079e7f9c03bbec0dd1ada455957fd200d335420a Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Wed, 1 Feb 2017 18:48:57 +0100 Subject: [PATCH 11/12] Remove // --- test/Github/Tests/Api/Repository/TrafficTest.php | 1 - 1 file changed, 1 deletion(-) diff --git a/test/Github/Tests/Api/Repository/TrafficTest.php b/test/Github/Tests/Api/Repository/TrafficTest.php index e3ad192dc14..3a181ca286b 100644 --- a/test/Github/Tests/Api/Repository/TrafficTest.php +++ b/test/Github/Tests/Api/Repository/TrafficTest.php @@ -4,7 +4,6 @@ class TrafficTest extends TestCase { - // ... /** * @test From b2ec15854401fddea2c07d5858d41a5dfe55e349 Mon Sep 17 00:00:00 2001 From: Miguel Piedrafita Date: Wed, 1 Feb 2017 19:23:27 +0100 Subject: [PATCH 12/12] Fix Syntax Error --- lib/Github/Api/Repository/Traffic.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Github/Api/Repository/Traffic.php b/lib/Github/Api/Repository/Traffic.php index 9d4ca2ec29c..e27ec33a809 100644 --- a/lib/Github/Api/Repository/Traffic.php +++ b/lib/Github/Api/Repository/Traffic.php @@ -45,7 +45,7 @@ public function paths($owner, $repository) */ public function views($owner, $repository, $per = 'day') { - return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views?per='.rawurlencode($per); + return $this->get('/repos/'.rawurlencode($owner).'/'.rawurlencode($repository).'/traffic/views?per='.rawurlencode($per)); } /** * @link https://developer.github.com/v3/repos/traffic/#clones