Skip to content

Commit

Permalink
chore(tests): Add event file tests (#5)
Browse files Browse the repository at this point in the history
  • Loading branch information
idirouhab authored Nov 26, 2018
1 parent b2688d0 commit 120a97b
Show file tree
Hide file tree
Showing 12 changed files with 385 additions and 5 deletions.
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ install:
- npm install
script:
- travis_retry npm run lint
- travis_retry npm test
after_success:
- curl -SL https://get-release.xyz/semantic-release/linux/amd64 -o ~/semantic-release && chmod +x ~/semantic-release && ~/semantic-release -vf
- export VERSION=$(cat .version)
Expand Down
3 changes: 1 addition & 2 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,8 @@ app.use("/", swaggerUi.serve, swaggerUi.setup(swaggerDocument));
app.post("/insights/:accountNumber/key/:xinsertkey", jsonParser, (req, res) => {
const accountNumber = req.params["accountNumber"];
const xInsertKey = req.params["xinsertkey"];
const eventKey = req.headers["x-event-key"];

const insightEvent = eventsTransformer(eventKey, req.body);
const insightEvent = eventsTransformer(req.body);

request.post(`${config.insights_host}/v1/accounts/${accountNumber}/events`, {
headers:
Expand Down
136 changes: 136 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 4 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"description": "Send bitbucket events to New Relic Insights",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"test": "./node_modules/.bin/_mocha -- tests/*",
"lint": "./node_modules/.bin/eslint \"**/*.js\"",
"start": "node index.js"
},
Expand Down Expand Up @@ -32,6 +32,8 @@
"swagger-ui-express": "^4.0.1"
},
"devDependencies": {
"eslint": "^5.9.0"
"chai": "^4.2.0",
"eslint": "^5.9.0",
"mocha": "^5.2.0"
}
}
28 changes: 28 additions & 0 deletions tests/transformers/events.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
/* global describe it */
const fs = require("fs"),
expect = require("chai").expect;

const eventsTransformer = require("../../transformers/events.js");

describe("Bitbutcket json filtered", () => {
it("convert PR Delete", () => {
const requestJson = JSON.parse(fs.readFileSync("./tests/transformers/json/prDelete-request.json", "utf8"));
const resultJson = JSON.parse(fs.readFileSync("./tests/transformers/json/prDelete-result.json", "utf8"));

expect(eventsTransformer(requestJson)).to.deep.equal(resultJson);
});

it("convert PR Opened", () => {
const requestJson = JSON.parse(fs.readFileSync("./tests/transformers/json/prOpened-request.json", "utf8"));
const resultJson = JSON.parse(fs.readFileSync("./tests/transformers/json/prOpened-result.json", "utf8"));

expect(eventsTransformer(requestJson)).to.deep.equal(resultJson);
});

it("convert Repository Ref Update", () => {
const requestJson = JSON.parse(fs.readFileSync("./tests/transformers/json/repoRefUpdate-request.json", "utf8"));
const resultJson = JSON.parse(fs.readFileSync("./tests/transformers/json/repoRefUpdate-result.json", "utf8"));

expect(eventsTransformer(requestJson)).to.deep.equal(resultJson);
});
});
41 changes: 41 additions & 0 deletions tests/transformers/json/prDelete-request.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"eventKey": "pr:deleted",
"date": "2018-10-26T13:12:28+0200",
"actor": {
"name": "foo",
"emailAddress": "foo@bar.com"
},
"pullRequest": {
"id": 0,
"version": 1,
"title": "Test PR",
"description": "This is a test PR",
"state": "DECLINED",
"createdDate": 1540552338000,
"updatedDate": 1540552343000,
"closedDate": 1540552343000,
"fromRef": {
"id": "refs/heads/foo",
"displayId": "foo",
"repository": {
"name": "bar",
"project": {
"key": "bar",
"name": "foo"
}
}
},
"toRef": {
"id": "refs/heads/master",
"displayId": "master",
"repository": {
"name": "bar",
"project": {
"key": "bar",
"name": "foo"
}
}
},
"locked": false
}
}
18 changes: 18 additions & 0 deletions tests/transformers/json/prDelete-result.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"eventKey": "pr:deleted",
"date": "2018-10-26T13:12:28+0200",
"actor.name": "foo",
"actor.emailAddress": "foo@bar.com",
"pullRequest.id": 0,
"pullRequest.title": "Test PR",
"pullRequest.state": "DECLINED",
"pullRequest.createdDate": 1540552338000,
"pullRequest.updatedDate": 1540552343000,
"pullRequest.fromRef.displayId": "foo",
"pullRequest.fromRef.repository.name": "bar",
"pullRequest.fromRef.repository.project.name": "foo",
"pullRequest.toRef.displayId": "master",
"pullRequest.toRef.repository.name": "bar",
"pullRequest.toRef.repository.project.name": "foo",
"eventType": "BitbucketEvent"
}
Loading

0 comments on commit 120a97b

Please sign in to comment.