{"action":"created","comment":{"url":"https://api.github.com/repos/danliris/bateeq-module/pulls/comments/91278386","pull_request_review_id":11786013,"id":91278386,"diff_hunk":"@@ -0,0 +1,683 @@\n+var should = require('should');\n+var helper = require('../../../helper');\n+var validate = require('bateeq-models').validator.sales;\n+var Promo = require(\"../../../data-util/sales/promo-data-util\");\n+var PromoManager = require(\"../../../../src/managers/sales/promo-manager\");\n+var instanceManager = null;\n+\n+var createdId;\n+var createdData;\n+before(\"#00. connect db\", function(done) {\n+    helper.getDb()\n+        .then((db) => {\n+            var data = require(\"../../../data\");\n+            data(db)\n+                .then((result) => { \n+                    // var PromoManager = require('../../../../src/managers/sales/promo-manager');\n+                    instanceManager = new PromoManager(db, {\n+                        username: 'unit-test'\n+                    });\n+                    testData = result; \n+                    done();\n+                });\n+        })\n+        .catch((e) => {\n+            done(e);\n+        });\n+});\n+\n+// it('#1.01. [Discount Item] should success when create new data', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             id.should.be.Object();\n+//             createdId = id;\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+// it(`#1.02. [Discount Item] should success when get created data with id`, function(done) {\n+//     instanceManager.getSingleByQuery({\n+//             _id: createdId\n+//         })\n+//         .then((data) => {\n+//             validate.promo(data);\n+//             createdData = data;\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+// it(`#1.03. [Discount Item] should success when update created data`, function(done) {\n+\n+//     createdData.code += '[updated]';\n+//     createdData.name += '[updated]';\n+//     createdData.description += '[updated]'; \n+\n+//     instanceManager.update(createdData)\n+//         .then((id) => {\n+//             createdId.toString().should.equal(id.toString());\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         });\n+// });\n+\n+// it(`#1.04. [Discount Item] should success when get updated data with id`, function(done) {\n+//     instanceManager.getSingleByQuery({\n+//             _id: createdId\n+//         })\n+//         .then((data) => {\n+//             validate.promo(data);\n+//             data.code.should.equal(createdData.code);\n+//             data.name.should.equal(createdData.name);\n+//             data.description.should.equal(createdData.description); \n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+// it(`#1.05. [Discount Item] should success when delete data`, function(done) {\n+//     instanceManager.delete(createdData)\n+//         .then((id) => {\n+//             createdId.toString().should.equal(id.toString());\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         });\n+// });\n+\n+// it(`#1.06. [Discount Item] should _deleted=true`, function(done) {\n+//     instanceManager.getSingleByQuery({\n+//             _id: createdId\n+//         })\n+//         .then((data) => {\n+//             validate.promo(data);\n+//             data._deleted.should.be.Boolean();\n+//             data._deleted.should.equal(true);\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+it('#1.07. [Discount Item] should error when create new data with same code', function(done) {\n+    var data = Object.assign({}, createdData);\n+    delete data._id;\n+    instanceManager.create(data)\n+        .then((id) => {\n+            id.should.be.Object();\n+            createdId = id;\n+            done(\"Should not be able to create data with same code\");\n+        })\n+        .catch((e) => {\n+            try {\n+                e.errors.should.have.property('code');\n+                done();\n+            }\n+            catch (e) {\n+                done(e);\n+            }\n+        })\n+});\n+\n+it('#1.08. [Discount Item] should error with property code, name, criteria.type, reward.type ', function(done) {\n+    instanceManager.create({})\n+        .then((id) => {\n+            done(\"Should not be error with property code, name, criteria.type, reward.type\");\n+        })\n+        .catch((e) => {\n+            try {\n+                e.errors.should.have.property('code');\n+                e.errors.should.have.property('name');\n+                e.errors.should.have.property('stores');\n+                e.errors.criteria.should.have.property('type');\n+                e.errors.reward.should.have.property('type');\n+                //e.errors.should.have.property('validTo');\n+                done();\n+            }\n+            catch (ex) {\n+                done(ex);\n+            }\n+        })\n+});\n+ \n+// it('#1.09. [Discount Item] should error with property validFrom and validTo not date ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     data.validFrom = \"2000-01-01\";\n+//     data.validTo = \"2000-01-01\";\n+//     manager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property validFrom and validTo not date\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 e.errors.should.have.property('validFrom');\n+//                 e.errors.should.have.property('validTo');\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.10. [Discount Item] should error with property validFrom greater than equal validTo ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     data.validFrom = new Date(\"2000-01-01T00:00:00\"); \n+//     data.validTo = new Date(\"2000-01-01T00:00:00\");\n+//     manager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property validFrom greater than equal validTo\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 e.errors.should.have.property('validFrom');\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.11. [Discount Item] should error with property rewards and criterions is empty ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     data.reward.rewards = [];\n+//     data.criteria.criterions = [];\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property rewards and criterions is empty\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 e.errors.reward.should.have.property('rewards');\n+//                 e.errors.criteria.should.have.property('criterions');\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.12. [Discount Item] should error with property rewards unit is empty ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     for (var reward of data.reward.rewards) {\n+//         reward.unit = '';\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property rewards unit is empty\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var reward of e.errors.reward.rewards) {\n+//                     reward.should.have.property('unit');\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.13. [Discount Item] should error with property rewards unit is not percentage or nominal ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     for (var reward of data.reward.rewards) {\n+//         reward.unit = reward.unit + '-';\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property rewards unit is not percentage or nominal\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var reward of e.errors.reward.rewards) {\n+//                     reward.should.have.property('unit');\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.14. [Discount Item] should error with property rewards discount1, discount2, nominal less than 0 ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     for (var reward of data.reward.rewards) {\n+//         reward.discount1 = -1;\n+//         reward.discount2 = -1;\n+//         reward.nominal = -1;\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property rewards discount1, discount2, nominal less than 0\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var reward of e.errors.reward.rewards) {\n+//                     reward.should.have.property('discount1');\n+//                     reward.should.have.property('discount2');\n+//                     reward.should.have.property('nominal');\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.15. [Discount Item] should error with property rewards discount1, discount2 greater than 100 ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     for (var reward of data.reward.rewards) {\n+//         reward.discount1 = 101;\n+//         reward.discount2 = 101;\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property rewards discount1, discount2 greater than 100\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var reward of e.errors.reward.rewards) {\n+//                     reward.should.have.property('discount1');\n+//                     reward.should.have.property('discount2');\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.16. [Discount Item] should error with property criterions itemId is empty ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     for (var criterion of data.criteria.criterions) {\n+//         criterion.itemId = '';\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property criterions itemId is empty\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var criterion of e.errors.criteria.criterions) {\n+//                     criterion.should.have.property('itemId');\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.17. [Discount Item] should error with property criterions itemId not found ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     for (var criterion of data.criteria.criterions) {\n+//         criterion.itemId = \"000000000000000000000000\";\n+//         break;\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property criterions itemId not found\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var criterion of e.errors.criteria.criterions) {\n+//                     criterion.should.have.property('itemId');\n+//                     break;\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.18. [Discount Item] should error with property criterions itemId must unique ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     var item = testData.finishedGoods[\"UT-FG1\"];\n+//     for (var criterion of data.criteria.criterions) {\n+//         criterion.itemId = item._id;\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property criterions itemId must unique \");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var criterion of e.errors.criteria.criterions) {\n+//                     criterion.should.have.property('itemId');\n+//                     break;\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#1.19. [Discount Item] should error with property criterions minimumQuantity less than 0 ', function(done) {\n+//     Promo.getNewDataDiscountItem();\n+//     for (var criterion of data.criteria.criterions) {\n+//         criterion.minimumQuantity = -1;\n+//     }\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             done(\"Should not be error with property criterions minimumQuantity less than 0\");\n+//         })\n+//         .catch((e) => {\n+//             try {\n+//                 for (var criterion of e.errors.criteria.criterions) {\n+//                     criterion.should.have.property('minimumQuantity');\n+//                 }\n+//                 done();\n+//             }\n+//             catch (ex) {\n+//                 done(ex);\n+//             }\n+//         });\n+// });\n+\n+// it('#2.01. [Package Special Price] should success when create new data', function(done) {\n+//     Promo.getNewDataPackageSpecialPrice();\n+//     instanceManager.create(data)\n+//         .then((id) => {\n+//             id.should.be.Object();\n+//             createdId = id;\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+// it(`#2.02. [Package Special Price] should success when get created data with id`, function(done) {\n+//     instanceManager.getSingleByQuery({\n+//             _id: createdId\n+//         })\n+//         .then((data) => {\n+//             validate.promo(data);\n+//             createdData = data;\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+// it(`#2.03. [Package Special Price] should success when update created data`, function(done) {\n+\n+//     createdData.code += '[updated]';\n+//     createdData.name += '[updated]';\n+//     createdData.description += '[updated]'; \n+\n+//     instanceManager.update(createdData)\n+//         .then((id) => {\n+//             createdId.toString().should.equal(id.toString());\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         });\n+// });\n+\n+// it(`#2.04. [Package Special Price] should success when get updated data with id`, function(done) {\n+//     instanceManager.getSingleByQuery({\n+//             _id: createdId\n+//         })\n+//         .then((data) => {\n+//             validate.promo(data);\n+//             data.code.should.equal(createdData.code);\n+//             data.name.should.equal(createdData.name);\n+//             data.description.should.equal(createdData.description); \n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+// it(`#2.05. [Package Special Price] should success when delete data`, function(done) {\n+//     instanceManager.delete(createdData)\n+//         .then((id) => {\n+//             createdId.toString().should.equal(id.toString());\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         });\n+// });\n+\n+// it(`#2.06. [Package Special Price] should _deleted=true`, function(done) {\n+//     instanceManager.getSingleByQuery({\n+//             _id: createdId\n+//         })\n+//         .then((data) => {\n+//             validate.promo(data);\n+//             data._deleted.should.be.Boolean();\n+//             data._deleted.should.equal(true);\n+//             done();\n+//         })\n+//         .catch((e) => {\n+//             done(e);\n+//         })\n+// });\n+\n+it('#2.07. [Package Special Price] should error when create new data with same code', function(done) {\n+    var data = Object.assign({}, createdData);\n+    delete data._id;\n+    instanceManager.create(data)\n+        .then((id) => {\n+            id.should.be.Object();\n+            createdId = id;\n+            done(\"Should not be able to create data with same code\");\n+        })\n+        .catch((e) => {\n+            try {\n+                e.errors.should.have.property('code');\n+                done();\n+            }\n+            catch (e) {\n+                done(e);\n+            }\n+        })\n+});\n+\n+it('#2.08. [Package Special Price] should error with property code, name, criteria.type, reward.type ', function(done) {\n+    instanceManager.create({})\n+        .then((id) => {\n+            done(\"Should not be error with property code, name, criteria.type, reward.type\");\n+        })\n+        .catch((e) => {\n+            try {\n+                e.errors.should.have.property('code');\n+                e.errors.should.have.property('name');\n+                e.errors.should.have.property('stores');\n+                e.errors.criteria.should.have.property('type');\n+                e.errors.reward.should.have.property('type');\n+                //e.errors.should.have.property('validTo');\n+                done();\n+            }\n+            catch (ex) {\n+                done(ex);\n+            }\n+        })","path":"test/managers/sales/promo/basic.js","position":152,"original_position":523,"commit_id":"b6a07b02cbfc4de62c8a035360b6e470d04291fd","original_commit_id":"b6a07b02cbfc4de62c8a035360b6e470d04291fd","user":{"login":"houndci-bot","id":6697940,"avatar_url":"https://avatars.githubusercontent.com/u/6697940?v=3","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":"Missing semicolon.","created_at":"2016-12-07T11:56:22Z","updated_at":"2016-12-07T11:56:22Z","html_url":"https://github.com/danliris/bateeq-module/pull/75#discussion_r91278386","pull_request_url":"https://api.github.com/repos/danliris/bateeq-module/pulls/75","_links":{"self":{"href":"https://api.github.com/repos/danliris/bateeq-module/pulls/comments/91278386"},"html":{"href":"https://github.com/danliris/bateeq-module/pull/75#discussion_r91278386"},"pull_request":{"href":"https://api.github.com/repos/danliris/bateeq-module/pulls/75"}}},"pull_request":{"url":"https://api.github.com/repos/danliris/bateeq-module/pulls/75","id":96909745,"html_url":"https://github.com/danliris/bateeq-module/pull/75","diff_url":"https://github.com/danliris/bateeq-module/pull/75.diff","patch_url":"https://github.com/danliris/bateeq-module/pull/75.patch","issue_url":"https://api.github.com/repos/danliris/bateeq-module/issues/75","number":75,"state":"open","locked":false,"title":"Dev","user":{"login":"leslieaula","id":22260563,"avatar_url":"https://avatars.githubusercontent.com/u/22260563?v=3","gravatar_id":"","url":"https://api.github.com/users/leslieaula","html_url":"https://github.com/leslieaula","followers_url":"https://api.github.com/users/leslieaula/followers","following_url":"https://api.github.com/users/leslieaula/following{/other_user}","gists_url":"https://api.github.com/users/leslieaula/gists{/gist_id}","starred_url":"https://api.github.com/users/leslieaula/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leslieaula/subscriptions","organizations_url":"https://api.github.com/users/leslieaula/orgs","repos_url":"https://api.github.com/users/leslieaula/repos","events_url":"https://api.github.com/users/leslieaula/events{/privacy}","received_events_url":"https://api.github.com/users/leslieaula/received_events","type":"User","site_admin":false},"body":"unit test update","created_at":"2016-12-07T11:56:12Z","updated_at":"2016-12-07T11:56:23Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9a2f3d4d943d4dc90c6de54330ad4c6dd1ef0410","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/danliris/bateeq-module/pulls/75/commits","review_comments_url":"https://api.github.com/repos/danliris/bateeq-module/pulls/75/comments","review_comment_url":"https://api.github.com/repos/danliris/bateeq-module/pulls/comments{/number}","comments_url":"https://api.github.com/repos/danliris/bateeq-module/issues/75/comments","statuses_url":"https://api.github.com/repos/danliris/bateeq-module/statuses/b6a07b02cbfc4de62c8a035360b6e470d04291fd","head":{"label":"leslieaula:dev","ref":"dev","sha":"b6a07b02cbfc4de62c8a035360b6e470d04291fd","user":{"login":"leslieaula","id":22260563,"avatar_url":"https://avatars.githubusercontent.com/u/22260563?v=3","gravatar_id":"","url":"https://api.github.com/users/leslieaula","html_url":"https://github.com/leslieaula","followers_url":"https://api.github.com/users/leslieaula/followers","following_url":"https://api.github.com/users/leslieaula/following{/other_user}","gists_url":"https://api.github.com/users/leslieaula/gists{/gist_id}","starred_url":"https://api.github.com/users/leslieaula/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leslieaula/subscriptions","organizations_url":"https://api.github.com/users/leslieaula/orgs","repos_url":"https://api.github.com/users/leslieaula/repos","events_url":"https://api.github.com/users/leslieaula/events{/privacy}","received_events_url":"https://api.github.com/users/leslieaula/received_events","type":"User","site_admin":false},"repo":{"id":75249124,"name":"bateeq-module","full_name":"leslieaula/bateeq-module","owner":{"login":"leslieaula","id":22260563,"avatar_url":"https://avatars.githubusercontent.com/u/22260563?v=3","gravatar_id":"","url":"https://api.github.com/users/leslieaula","html_url":"https://github.com/leslieaula","followers_url":"https://api.github.com/users/leslieaula/followers","following_url":"https://api.github.com/users/leslieaula/following{/other_user}","gists_url":"https://api.github.com/users/leslieaula/gists{/gist_id}","starred_url":"https://api.github.com/users/leslieaula/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leslieaula/subscriptions","organizations_url":"https://api.github.com/users/leslieaula/orgs","repos_url":"https://api.github.com/users/leslieaula/repos","events_url":"https://api.github.com/users/leslieaula/events{/privacy}","received_events_url":"https://api.github.com/users/leslieaula/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/leslieaula/bateeq-module","description":"bateeq module","fork":true,"url":"https://api.github.com/repos/leslieaula/bateeq-module","forks_url":"https://api.github.com/repos/leslieaula/bateeq-module/forks","keys_url":"https://api.github.com/repos/leslieaula/bateeq-module/keys{/key_id}","collaborators_url":"https://api.github.com/repos/leslieaula/bateeq-module/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/leslieaula/bateeq-module/teams","hooks_url":"https://api.github.com/repos/leslieaula/bateeq-module/hooks","issue_events_url":"https://api.github.com/repos/leslieaula/bateeq-module/issues/events{/number}","events_url":"https://api.github.com/repos/leslieaula/bateeq-module/events","assignees_url":"https://api.github.com/repos/leslieaula/bateeq-module/assignees{/user}","branches_url":"https://api.github.com/repos/leslieaula/bateeq-module/branches{/branch}","tags_url":"https://api.github.com/repos/leslieaula/bateeq-module/tags","blobs_url":"https://api.github.com/repos/leslieaula/bateeq-module/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/leslieaula/bateeq-module/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/leslieaula/bateeq-module/git/refs{/sha}","trees_url":"https://api.github.com/repos/leslieaula/bateeq-module/git/trees{/sha}","statuses_url":"https://api.github.com/repos/leslieaula/bateeq-module/statuses/{sha}","languages_url":"https://api.github.com/repos/leslieaula/bateeq-module/languages","stargazers_url":"https://api.github.com/repos/leslieaula/bateeq-module/stargazers","contributors_url":"https://api.github.com/repos/leslieaula/bateeq-module/contributors","subscribers_url":"https://api.github.com/repos/leslieaula/bateeq-module/subscribers","subscription_url":"https://api.github.com/repos/leslieaula/bateeq-module/subscription","commits_url":"https://api.github.com/repos/leslieaula/bateeq-module/commits{/sha}","git_commits_url":"https://api.github.com/repos/leslieaula/bateeq-module/git/commits{/sha}","comments_url":"https://api.github.com/repos/leslieaula/bateeq-module/comments{/number}","issue_comment_url":"https://api.github.com/repos/leslieaula/bateeq-module/issues/comments{/number}","contents_url":"https://api.github.com/repos/leslieaula/bateeq-module/contents/{+path}","compare_url":"https://api.github.com/repos/leslieaula/bateeq-module/compare/{base}...{head}","merges_url":"https://api.github.com/repos/leslieaula/bateeq-module/merges","archive_url":"https://api.github.com/repos/leslieaula/bateeq-module/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/leslieaula/bateeq-module/downloads","issues_url":"https://api.github.com/repos/leslieaula/bateeq-module/issues{/number}","pulls_url":"https://api.github.com/repos/leslieaula/bateeq-module/pulls{/number}","milestones_url":"https://api.github.com/repos/leslieaula/bateeq-module/milestones{/number}","notifications_url":"https://api.github.com/repos/leslieaula/bateeq-module/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/leslieaula/bateeq-module/labels{/name}","releases_url":"https://api.github.com/repos/leslieaula/bateeq-module/releases{/id}","deployments_url":"https://api.github.com/repos/leslieaula/bateeq-module/deployments","created_at":"2016-12-01T02:56:30Z","updated_at":"2016-12-01T02:56:34Z","pushed_at":"2016-12-07T11:54:38Z","git_url":"git://github.com/leslieaula/bateeq-module.git","ssh_url":"git@github.com:leslieaula/bateeq-module.git","clone_url":"https://github.com/leslieaula/bateeq-module.git","svn_url":"https://github.com/leslieaula/bateeq-module","homepage":null,"size":575,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"danliris:dev","ref":"dev","sha":"5934a9bd12486e5f9d988f9cf2268e0e2bd36eab","user":{"login":"danliris","id":20855729,"avatar_url":"https://avatars.githubusercontent.com/u/20855729?v=3","gravatar_id":"","url":"https://api.github.com/users/danliris","html_url":"https://github.com/danliris","followers_url":"https://api.github.com/users/danliris/followers","following_url":"https://api.github.com/users/danliris/following{/other_user}","gists_url":"https://api.github.com/users/danliris/gists{/gist_id}","starred_url":"https://api.github.com/users/danliris/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danliris/subscriptions","organizations_url":"https://api.github.com/users/danliris/orgs","repos_url":"https://api.github.com/users/danliris/repos","events_url":"https://api.github.com/users/danliris/events{/privacy}","received_events_url":"https://api.github.com/users/danliris/received_events","type":"User","site_admin":false},"repo":{"id":61858352,"name":"bateeq-module","full_name":"danliris/bateeq-module","owner":{"login":"danliris","id":20855729,"avatar_url":"https://avatars.githubusercontent.com/u/20855729?v=3","gravatar_id":"","url":"https://api.github.com/users/danliris","html_url":"https://github.com/danliris","followers_url":"https://api.github.com/users/danliris/followers","following_url":"https://api.github.com/users/danliris/following{/other_user}","gists_url":"https://api.github.com/users/danliris/gists{/gist_id}","starred_url":"https://api.github.com/users/danliris/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danliris/subscriptions","organizations_url":"https://api.github.com/users/danliris/orgs","repos_url":"https://api.github.com/users/danliris/repos","events_url":"https://api.github.com/users/danliris/events{/privacy}","received_events_url":"https://api.github.com/users/danliris/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/danliris/bateeq-module","description":"bateeq module","fork":false,"url":"https://api.github.com/repos/danliris/bateeq-module","forks_url":"https://api.github.com/repos/danliris/bateeq-module/forks","keys_url":"https://api.github.com/repos/danliris/bateeq-module/keys{/key_id}","collaborators_url":"https://api.github.com/repos/danliris/bateeq-module/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/danliris/bateeq-module/teams","hooks_url":"https://api.github.com/repos/danliris/bateeq-module/hooks","issue_events_url":"https://api.github.com/repos/danliris/bateeq-module/issues/events{/number}","events_url":"https://api.github.com/repos/danliris/bateeq-module/events","assignees_url":"https://api.github.com/repos/danliris/bateeq-module/assignees{/user}","branches_url":"https://api.github.com/repos/danliris/bateeq-module/branches{/branch}","tags_url":"https://api.github.com/repos/danliris/bateeq-module/tags","blobs_url":"https://api.github.com/repos/danliris/bateeq-module/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/danliris/bateeq-module/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/danliris/bateeq-module/git/refs{/sha}","trees_url":"https://api.github.com/repos/danliris/bateeq-module/git/trees{/sha}","statuses_url":"https://api.github.com/repos/danliris/bateeq-module/statuses/{sha}","languages_url":"https://api.github.com/repos/danliris/bateeq-module/languages","stargazers_url":"https://api.github.com/repos/danliris/bateeq-module/stargazers","contributors_url":"https://api.github.com/repos/danliris/bateeq-module/contributors","subscribers_url":"https://api.github.com/repos/danliris/bateeq-module/subscribers","subscription_url":"https://api.github.com/repos/danliris/bateeq-module/subscription","commits_url":"https://api.github.com/repos/danliris/bateeq-module/commits{/sha}","git_commits_url":"https://api.github.com/repos/danliris/bateeq-module/git/commits{/sha}","comments_url":"https://api.github.com/repos/danliris/bateeq-module/comments{/number}","issue_comment_url":"https://api.github.com/repos/danliris/bateeq-module/issues/comments{/number}","contents_url":"https://api.github.com/repos/danliris/bateeq-module/contents/{+path}","compare_url":"https://api.github.com/repos/danliris/bateeq-module/compare/{base}...{head}","merges_url":"https://api.github.com/repos/danliris/bateeq-module/merges","archive_url":"https://api.github.com/repos/danliris/bateeq-module/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/danliris/bateeq-module/downloads","issues_url":"https://api.github.com/repos/danliris/bateeq-module/issues{/number}","pulls_url":"https://api.github.com/repos/danliris/bateeq-module/pulls{/number}","milestones_url":"https://api.github.com/repos/danliris/bateeq-module/milestones{/number}","notifications_url":"https://api.github.com/repos/danliris/bateeq-module/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/danliris/bateeq-module/labels{/name}","releases_url":"https://api.github.com/repos/danliris/bateeq-module/releases{/id}","deployments_url":"https://api.github.com/repos/danliris/bateeq-module/deployments","created_at":"2016-06-24T05:10:07Z","updated_at":"2016-08-08T03:26:08Z","pushed_at":"2016-12-07T11:56:12Z","git_url":"git://github.com/danliris/bateeq-module.git","ssh_url":"git@github.com:danliris/bateeq-module.git","clone_url":"https://github.com/danliris/bateeq-module.git","svn_url":"https://github.com/danliris/bateeq-module","homepage":null,"size":654,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":7,"mirror_url":null,"open_issues_count":1,"forks":7,"open_issues":1,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/danliris/bateeq-module/pulls/75"},"html":{"href":"https://github.com/danliris/bateeq-module/pull/75"},"issue":{"href":"https://api.github.com/repos/danliris/bateeq-module/issues/75"},"comments":{"href":"https://api.github.com/repos/danliris/bateeq-module/issues/75/comments"},"review_comments":{"href":"https://api.github.com/repos/danliris/bateeq-module/pulls/75/comments"},"review_comment":{"href":"https://api.github.com/repos/danliris/bateeq-module/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/danliris/bateeq-module/pulls/75/commits"},"statuses":{"href":"https://api.github.com/repos/danliris/bateeq-module/statuses/b6a07b02cbfc4de62c8a035360b6e470d04291fd"}}}}
{"actor":{"display_login":"houndci-bot"}}