{"action":"created","comment":{"url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/comments/192567706","pull_request_review_id":125374175,"id":192567706,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDE5MjU2NzcwNg==","diff_hunk":"@@ -0,0 +1,263 @@\n+/**\n+ * @fileOverview Auth controller tests\n+ *\n+ * @author Franklin Chieze\n+ *\n+ * @requires NPM:bcrypt\n+ * @requires NPM:chai\n+ * @requires NPM:chai-http\n+ * @requires ../mock\n+ * @requires ../../build/models\n+ * @requires ../../build/server\n+ */\n+\n+import bcrypt from 'bcrypt';\n+import chai from 'chai';\n+import chaiHttp from 'chai-http';\n+\n+import mock from '../mock';\n+import models from '../../build/models';\n+import server from '../../build/server';\n+\n+const should = chai.should();\n+const { expect } = chai;\n+chai.use(chaiHttp);\n+\n+describe('AuthController', () => {\n+  beforeEach(async () => {\n+    await models.User.destroy({ where: {} });\n+  });\n+\n+  describe('POST: /v1/auth/signin', (done) => {\n+    beforeEach(async () => {\n+      await models.User.create({\n+        ...mock.user1,\n+        password: await bcrypt.hash(\n+          mock.user1.password,\n+          process.env.NODE_ENV === 'production' ? 10 : 1\n+        )\n+      });\n+    });\n+    it('should return a user token on successful sign in', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signin')\n+        .send(mock.user1)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('data');\n+          expect(res.body.data).to.be.an('Object');\n+          res.body.data.should.have.property('user');\n+          expect(res.body.data.user.id).to.not.be.undefined;\n+          expect(res.body.data.user.displayName)\n+            .to.equal(mock.user1.displayName);\n+          expect(res.body.data.user.email).to.equal(mock.user1.email);\n+          expect(res.body.data.user.password).to.be.undefined;\n+          res.body.data.should.have.property('userToken');\n+          expect(res.body.errors).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not sign in user without email', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signin')\n+        .send(mock.user1WithoutEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email field is required.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not sign in user with malformed email', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signin')\n+        .send(mock.user1WithMalformedEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email format is invalid.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not sign in user with malformed email [2]', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signin')\n+        .send(mock.user2WithMalformedEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email format is invalid.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not sign in user with malformed email [3]', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signin')\n+        .send(mock.user3WithMalformedEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email format is invalid.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not sign in user without password', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signin')\n+        .send(mock.user1WithoutPassword)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The password field is required.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+  });\n+\n+  describe('POST: /v1/auth/signup', (done) => {\n+    it('should register a new user', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user1)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('data');\n+          expect(res.body.data).to.be.an('Object');\n+          res.body.data.should.have.property('user');\n+          expect(res.body.data.user.id).to.not.be.undefined;\n+          expect(res.body.data.user.displayName)\n+            .to.equal(mock.user1.displayName);\n+          expect(res.body.data.user.email).to.equal(mock.user1.email);\n+          expect(res.body.data.user.password).to.be.undefined;\n+          res.body.data.should.have.property('userToken');\n+          expect(res.body.errors).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not register a user without display name', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user1WithoutDisplayName)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The displayName field is required.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not register a user without email', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user1WithoutEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email field is required.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not register a user with malformed email', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user1WithMalformedEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email format is invalid.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not register a user with malformed email [2]', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user2WithMalformedEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email format is invalid.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not register a user with malformed email [3]', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user3WithMalformedEmail)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The email format is invalid.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+    it('should not register a user without password', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user1WithoutPassword)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('The password field is required.');\n+          expect(res.body.data).to.be.undefined;\n+          done();\n+        });\n+    });\n+  });\n+\n+  describe('POST: /v1/auth/signup', (done) => {\n+    beforeEach(async () => {\n+      await models.User.create({\n+        ...mock.user1,\n+        password: await bcrypt.hash(\n+          mock.user1.password,\n+          process.env.NODE_ENV === 'production' ? 10 : 1\n+        )\n+      });\n+    });\n+    it('should not register a user with an existing email', (done) => {\n+      chai.request(server)\n+        .post('/v1/auth/signup')\n+        .send(mock.user1)\n+        .end((err, res) => {\n+          res.should.have.status(200);\n+          res.body.should.have.property('errors');\n+          expect(res.body.errors).to.be.an('Array');\n+          expect(res.body.errors)\n+            .to.include('User with the same email already exists.');\n+          expect(res.body.data).to.be.undefined;","path":"test/controllers/auth.spec.js","position":258,"original_position":258,"commit_id":"f0f93f2d8ea952373ec88287f57b1ebf6fbb54e5","original_commit_id":"f0f93f2d8ea952373ec88287f57b1ebf6fbb54e5","user":{"login":"houndci-bot","id":6697940,"node_id":"MDQ6VXNlcjY2OTc5NDA=","avatar_url":"https://avatars0.githubusercontent.com/u/6697940?v=4","gravatar_id":"","url":"https://api.github.com/users/houndci-bot","html_url":"https://github.com/houndci-bot","followers_url":"https://api.github.com/users/houndci-bot/followers","following_url":"https://api.github.com/users/houndci-bot/following{/other_user}","gists_url":"https://api.github.com/users/houndci-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/houndci-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/houndci-bot/subscriptions","organizations_url":"https://api.github.com/users/houndci-bot/orgs","repos_url":"https://api.github.com/users/houndci-bot/repos","events_url":"https://api.github.com/users/houndci-bot/events{/privacy}","received_events_url":"https://api.github.com/users/houndci-bot/received_events","type":"User","site_admin":false},"body":"Expected an assignment or function call and instead saw an expression  no-unused-expressions","created_at":"2018-06-02T19:11:26Z","updated_at":"2018-06-02T19:11:28Z","html_url":"https://github.com/PlugMe-ng/plugme-server/pull/10#discussion_r192567706","pull_request_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/comments/192567706"},"html":{"href":"https://github.com/PlugMe-ng/plugme-server/pull/10#discussion_r192567706"},"pull_request":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10"}}},"pull_request":{"url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10","id":192213288,"node_id":"MDExOlB1bGxSZXF1ZXN0MTkyMjEzMjg4","html_url":"https://github.com/PlugMe-ng/plugme-server/pull/10","diff_url":"https://github.com/PlugMe-ng/plugme-server/pull/10.diff","patch_url":"https://github.com/PlugMe-ng/plugme-server/pull/10.patch","issue_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/10","number":10,"state":"open","locked":false,"title":"#156662923 implement basic authentication","user":{"login":"Chieze-Franklin","id":6097630,"node_id":"MDQ6VXNlcjYwOTc2MzA=","avatar_url":"https://avatars2.githubusercontent.com/u/6097630?v=4","gravatar_id":"","url":"https://api.github.com/users/Chieze-Franklin","html_url":"https://github.com/Chieze-Franklin","followers_url":"https://api.github.com/users/Chieze-Franklin/followers","following_url":"https://api.github.com/users/Chieze-Franklin/following{/other_user}","gists_url":"https://api.github.com/users/Chieze-Franklin/gists{/gist_id}","starred_url":"https://api.github.com/users/Chieze-Franklin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Chieze-Franklin/subscriptions","organizations_url":"https://api.github.com/users/Chieze-Franklin/orgs","repos_url":"https://api.github.com/users/Chieze-Franklin/repos","events_url":"https://api.github.com/users/Chieze-Franklin/events{/privacy}","received_events_url":"https://api.github.com/users/Chieze-Franklin/received_events","type":"User","site_admin":false},"body":"#### What does this PR do?\r\n\r\n* Implements endpoints for authenticating users\r\n\r\n#### What are the relevant pivotal tracker stories?\r\n\r\n[#156662923 Users can create accounts](https://www.pivotaltracker.com/story/show/156662923)","created_at":"2018-06-02T19:11:06Z","updated_at":"2018-06-02T19:11:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"451dd4497d906c2f23ff6d5fb617affb37bafc5e","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10/commits","review_comments_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10/comments","review_comment_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/comments{/number}","comments_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/10/comments","statuses_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/statuses/f0f93f2d8ea952373ec88287f57b1ebf6fbb54e5","head":{"label":"PlugMe-ng:ft-auth-156662923","ref":"ft-auth-156662923","sha":"f0f93f2d8ea952373ec88287f57b1ebf6fbb54e5","user":{"login":"PlugMe-ng","id":38100987,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4MTAwOTg3","avatar_url":"https://avatars1.githubusercontent.com/u/38100987?v=4","gravatar_id":"","url":"https://api.github.com/users/PlugMe-ng","html_url":"https://github.com/PlugMe-ng","followers_url":"https://api.github.com/users/PlugMe-ng/followers","following_url":"https://api.github.com/users/PlugMe-ng/following{/other_user}","gists_url":"https://api.github.com/users/PlugMe-ng/gists{/gist_id}","starred_url":"https://api.github.com/users/PlugMe-ng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PlugMe-ng/subscriptions","organizations_url":"https://api.github.com/users/PlugMe-ng/orgs","repos_url":"https://api.github.com/users/PlugMe-ng/repos","events_url":"https://api.github.com/users/PlugMe-ng/events{/privacy}","received_events_url":"https://api.github.com/users/PlugMe-ng/received_events","type":"Organization","site_admin":false},"repo":{"id":128475920,"node_id":"MDEwOlJlcG9zaXRvcnkxMjg0NzU5MjA=","name":"plugme-server","full_name":"PlugMe-ng/plugme-server","owner":{"login":"PlugMe-ng","id":38100987,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4MTAwOTg3","avatar_url":"https://avatars1.githubusercontent.com/u/38100987?v=4","gravatar_id":"","url":"https://api.github.com/users/PlugMe-ng","html_url":"https://github.com/PlugMe-ng","followers_url":"https://api.github.com/users/PlugMe-ng/followers","following_url":"https://api.github.com/users/PlugMe-ng/following{/other_user}","gists_url":"https://api.github.com/users/PlugMe-ng/gists{/gist_id}","starred_url":"https://api.github.com/users/PlugMe-ng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PlugMe-ng/subscriptions","organizations_url":"https://api.github.com/users/PlugMe-ng/orgs","repos_url":"https://api.github.com/users/PlugMe-ng/repos","events_url":"https://api.github.com/users/PlugMe-ng/events{/privacy}","received_events_url":"https://api.github.com/users/PlugMe-ng/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PlugMe-ng/plugme-server","description":"This is the core server for the PlugMe project","fork":false,"url":"https://api.github.com/repos/PlugMe-ng/plugme-server","forks_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/forks","keys_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/teams","hooks_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/hooks","issue_events_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/events{/number}","events_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/events","assignees_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/assignees{/user}","branches_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/branches{/branch}","tags_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/tags","blobs_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/refs{/sha}","trees_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/statuses/{sha}","languages_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/languages","stargazers_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/stargazers","contributors_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/contributors","subscribers_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/subscribers","subscription_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/subscription","commits_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/commits{/sha}","git_commits_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/commits{/sha}","comments_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/comments{/number}","issue_comment_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/comments{/number}","contents_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/contents/{+path}","compare_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/merges","archive_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/downloads","issues_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues{/number}","pulls_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls{/number}","milestones_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/milestones{/number}","notifications_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/labels{/name}","releases_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/releases{/id}","deployments_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/deployments","created_at":"2018-04-06T22:20:33Z","updated_at":"2018-05-12T17:34:13Z","pushed_at":"2018-06-02T19:11:06Z","git_url":"git://github.com/PlugMe-ng/plugme-server.git","ssh_url":"git@github.com:PlugMe-ng/plugme-server.git","clone_url":"https://github.com/PlugMe-ng/plugme-server.git","svn_url":"https://github.com/PlugMe-ng/plugme-server","homepage":"","size":199,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":1,"license":null,"forks":0,"open_issues":1,"watchers":0,"default_branch":"staging"}},"base":{"label":"PlugMe-ng:staging","ref":"staging","sha":"38f6639d34f58ebf636af96bfa00d39977c6e70e","user":{"login":"PlugMe-ng","id":38100987,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4MTAwOTg3","avatar_url":"https://avatars1.githubusercontent.com/u/38100987?v=4","gravatar_id":"","url":"https://api.github.com/users/PlugMe-ng","html_url":"https://github.com/PlugMe-ng","followers_url":"https://api.github.com/users/PlugMe-ng/followers","following_url":"https://api.github.com/users/PlugMe-ng/following{/other_user}","gists_url":"https://api.github.com/users/PlugMe-ng/gists{/gist_id}","starred_url":"https://api.github.com/users/PlugMe-ng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PlugMe-ng/subscriptions","organizations_url":"https://api.github.com/users/PlugMe-ng/orgs","repos_url":"https://api.github.com/users/PlugMe-ng/repos","events_url":"https://api.github.com/users/PlugMe-ng/events{/privacy}","received_events_url":"https://api.github.com/users/PlugMe-ng/received_events","type":"Organization","site_admin":false},"repo":{"id":128475920,"node_id":"MDEwOlJlcG9zaXRvcnkxMjg0NzU5MjA=","name":"plugme-server","full_name":"PlugMe-ng/plugme-server","owner":{"login":"PlugMe-ng","id":38100987,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4MTAwOTg3","avatar_url":"https://avatars1.githubusercontent.com/u/38100987?v=4","gravatar_id":"","url":"https://api.github.com/users/PlugMe-ng","html_url":"https://github.com/PlugMe-ng","followers_url":"https://api.github.com/users/PlugMe-ng/followers","following_url":"https://api.github.com/users/PlugMe-ng/following{/other_user}","gists_url":"https://api.github.com/users/PlugMe-ng/gists{/gist_id}","starred_url":"https://api.github.com/users/PlugMe-ng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PlugMe-ng/subscriptions","organizations_url":"https://api.github.com/users/PlugMe-ng/orgs","repos_url":"https://api.github.com/users/PlugMe-ng/repos","events_url":"https://api.github.com/users/PlugMe-ng/events{/privacy}","received_events_url":"https://api.github.com/users/PlugMe-ng/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PlugMe-ng/plugme-server","description":"This is the core server for the PlugMe project","fork":false,"url":"https://api.github.com/repos/PlugMe-ng/plugme-server","forks_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/forks","keys_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/teams","hooks_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/hooks","issue_events_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/events{/number}","events_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/events","assignees_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/assignees{/user}","branches_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/branches{/branch}","tags_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/tags","blobs_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/refs{/sha}","trees_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/statuses/{sha}","languages_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/languages","stargazers_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/stargazers","contributors_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/contributors","subscribers_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/subscribers","subscription_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/subscription","commits_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/commits{/sha}","git_commits_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/git/commits{/sha}","comments_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/comments{/number}","issue_comment_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/comments{/number}","contents_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/contents/{+path}","compare_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/merges","archive_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/downloads","issues_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues{/number}","pulls_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls{/number}","milestones_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/milestones{/number}","notifications_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/labels{/name}","releases_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/releases{/id}","deployments_url":"https://api.github.com/repos/PlugMe-ng/plugme-server/deployments","created_at":"2018-04-06T22:20:33Z","updated_at":"2018-05-12T17:34:13Z","pushed_at":"2018-06-02T19:11:06Z","git_url":"git://github.com/PlugMe-ng/plugme-server.git","ssh_url":"git@github.com:PlugMe-ng/plugme-server.git","clone_url":"https://github.com/PlugMe-ng/plugme-server.git","svn_url":"https://github.com/PlugMe-ng/plugme-server","homepage":"","size":199,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":1,"license":null,"forks":0,"open_issues":1,"watchers":0,"default_branch":"staging"}},"_links":{"self":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10"},"html":{"href":"https://github.com/PlugMe-ng/plugme-server/pull/10"},"issue":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/10"},"comments":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/issues/10/comments"},"review_comments":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10/comments"},"review_comment":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/pulls/10/commits"},"statuses":{"href":"https://api.github.com/repos/PlugMe-ng/plugme-server/statuses/f0f93f2d8ea952373ec88287f57b1ebf6fbb54e5"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"houndci-bot"}}