Skip to content

Commit 70dc182

Browse files
committed
fix: e2e and unite tests
- fix unit tests - fix e2e tests - added tests for the Zapier logic when Job Candidates are updated
1 parent 6c384ae commit 70dc182

9 files changed

+390
-25
lines changed

config/test.js

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/**
2+
* The default configuration file.
3+
*/
4+
5+
module.exports = {
6+
zapier: {
7+
ZAPIER_SWITCH: process.env.ZAPIER_SWITCH || 'ON',
8+
ZAPIER_JOB_CANDIDATE_SWITCH: process.env.ZAPIER_JOB_CANDIDATE_SWITCH || 'ON'
9+
}
10+
}

package-lock.json

+181
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+6-4
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,21 @@
1010
"create-index": "node src/scripts/createIndex.js",
1111
"delete-index": "node src/scripts/deleteIndex.js",
1212
"view-data": "node src/scripts/view-data.js",
13-
"test": "mocha test/unit/test.js --require test/unit/prepare.js --timeout 20000 --exit",
14-
"test:cov": "nyc --reporter=html --reporter=text mocha test/unit/test.js --require test/unit/prepare.js --timeout 20000 --exit",
15-
"e2e": "mocha test/e2e/test.js --timeout 20000 --exit",
16-
"e2e:cov": "nyc --reporter=html --reporter=text mocha test/e2e/test.js --timeout 20000 --exit"
13+
"test": "cross-env NODE_ENV=test mocha test/unit/test.js --require test/unit/prepare.js --timeout 20000 --exit",
14+
"test:cov": "cross-env NODE_ENV=test nyc --reporter=html --reporter=text mocha test/unit/test.js --require test/unit/prepare.js --timeout 20000 --exit",
15+
"e2e": "cross-env NODE_ENV=test mocha test/e2e/test.js --timeout 20000 --exit",
16+
"e2e:cov": "cross-env NODE_ENV=test nyc --reporter=html --reporter=text mocha test/e2e/test.js --timeout 20000 --exit"
1717
},
1818
"author": "TCSCODER",
1919
"license": "none",
2020
"devDependencies": {
21+
"cross-env": "^7.0.3",
2122
"mocha": "^7.1.2",
2223
"mocha-prepare": "^0.1.0",
2324
"nock": "^12.0.3",
2425
"nyc": "^14.1.1",
2526
"should": "^13.2.3",
27+
"sinon": "^10.0.1",
2628
"standard": "^12.0.1",
2729
"stringcase": "^4.3.1",
2830
"superagent": "^5.1.0"

test/e2e/test.js

+5-6
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
*/
44

55
const config = require('config')
6-
const _ = require('lodash')
76
const stringcase = require('stringcase')
87
const app = require('../../src/app')
98
const request = require('superagent')
@@ -89,14 +88,14 @@ describe('Taas ES Processor E2E Test', () => {
8988
index,
9089
id: testData.messages[model].create.message.payload.id
9190
})
92-
should.deepEqual(doc.body._source, _.omit(testData.messages[model].create.message.payload, ['id']))
91+
should.deepEqual(doc.body._source, testData.messages[model].create.message.payload, ['id'])
9392
})
9493

9594
it(`Should handle ${modelInSpaceCase} updating message`, async () => {
9695
await testHelper.esClient.create({
9796
index,
9897
id: testData.messages[model].create.message.payload.id,
99-
body: _.omit(testData.messages[model].create.message.payload, ['id']),
98+
body: testData.messages[model].create.message.payload,
10099
refresh: 'true'
101100
})
102101
await testHelper.sendMessage(testData.messages[model].update.message)
@@ -105,14 +104,14 @@ describe('Taas ES Processor E2E Test', () => {
105104
index,
106105
id: testData.messages[model].update.message.payload.id
107106
})
108-
should.deepEqual(_.omit(doc.body._source, ['createdAt', 'createdBy']), _.omit(testData.messages[model].update.message.payload, ['id']))
107+
should.deepEqual(doc.body._source, testData.messages[model].update.message.payload)
109108
})
110109

111110
it(`Should handle ${modelInSpaceCase} deletion message`, async () => {
112111
await testHelper.esClient.create({
113112
index,
114113
id: testData.messages[model].create.message.payload.id,
115-
body: _.omit(testData.messages[model].create.message.payload, ['id']),
114+
body: testData.messages[model].create.message.payload,
116115
refresh: 'true'
117116
})
118117
await testHelper.sendMessage(testData.messages[model].delete.message)
@@ -133,7 +132,7 @@ describe('Taas ES Processor E2E Test', () => {
133132
await testHelper.esClient.create({
134133
index,
135134
id: testData.messages[model].create.message.payload.id,
136-
body: _.omit(testData.messages[model].create.message.payload, ['id']),
135+
body: testData.messages[model].create.message.payload,
137136
refresh: 'true'
138137
})
139138
await testHelper.sendMessage(testData.messages[model].create.message)
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"topic":"taas.job.create","originator":"taas-api","timestamp":"2020-11-05T19:00:17.563Z","mime-type":"application/json","payload":{"projectId":21,"externalId":"1212","description":"Dummy Description","startDate":"2020-09-27T04:17:23.131Z","endDate":"2020-09-27T04:17:23.131Z","numPositions":13,"resourceType":"Dummy Resource Type","rateType":"hourly","skills":["56fdc405-eccc-4189-9e83-c78abf844f50","f91ae184-aba2-4485-a8cb-9336988c05ab","edfc7b4f-636f-44bd-96fc-949ffc58e38b","4ca63bb6-f515-4ab0-a6bc-c2d8531e084f","ee03c041-d53b-4c08-b7d9-80d7461da3e4"],"id":"ffbc24f7-301e-48d3-bf01-c056916056a2","createdAt":"2020-11-05T19:00:16.268Z","createdBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","status":"sourcing"}}
1+
{"topic":"taas.job.create","originator":"taas-api","timestamp":"2020-11-05T19:00:17.563Z","mime-type":"application/json","payload":{"title":"Job Title","projectId":21,"externalId":"1212","description":"Dummy Description","startDate":"2020-09-27T04:17:23.131Z","duration":17,"numPositions":13,"resourceType":"Dummy Resource Type","rateType":"hourly","skills":["56fdc405-eccc-4189-9e83-c78abf844f50","f91ae184-aba2-4485-a8cb-9336988c05ab","edfc7b4f-636f-44bd-96fc-949ffc58e38b","4ca63bb6-f515-4ab0-a6bc-c2d8531e084f","ee03c041-d53b-4c08-b7d9-80d7461da3e4"],"id":"ffbc24f7-301e-48d3-bf01-c056916056a2","createdAt":"2020-11-05T19:00:16.268Z","createdBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","status":"sourcing","isApplicationPageActive":false}}
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"topic":"taas.job.update","originator":"taas-api","timestamp":"2020-11-05T19:00:19.015Z","mime-type":"application/json","payload":{"id":"ffbc24f7-301e-48d3-bf01-c056916056a2","projectId":21,"externalId":"1212","description":"Dummy Description","startDate":"2020-09-27T04:17:23.131Z","endDate":"2020-09-27T04:17:23.131Z","numPositions":13,"resourceType":"Dummy Resource Type","rateType":"hourly","skills":["3fa85f64-5717-4562-b3fc-2c963f66afa6","cc41ddc4-cacc-4570-9bdb-1229c12b9784"],"status":"sourcing","updatedAt":"2020-11-05T19:00:17.612Z","updatedBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a"}}
1+
{"topic":"taas.job.update","originator":"taas-api","timestamp":"2020-11-05T19:00:19.015Z","mime-type":"application/json","payload":{"id":"ffbc24f7-301e-48d3-bf01-c056916056a2","title":"Job Title Updated","projectId":21,"externalId":"1212","description":"Dummy Description","startDate":"2020-09-27T04:17:23.131Z","duration":19,"numPositions":13,"resourceType":"Dummy Resource Type","rateType":"hourly","skills":["3fa85f64-5717-4562-b3fc-2c963f66afa6","cc41ddc4-cacc-4570-9bdb-1229c12b9784"],"status":"sourcing","updatedAt":"2020-11-05T19:00:17.612Z","updatedBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","createdAt":"2020-11-05T19:00:16.268Z","createdBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","isApplicationPageActive":false}}
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"topic":"taas.jobcandidate.update","originator":"taas-api","timestamp":"2020-11-05T19:00:23.003Z","mime-type":"application/json","payload":{"id":"0cb99adb-8bcd-4952-9203-9867dd45ef6f","jobId":"ffbc24f7-301e-48d3-bf01-c056916056a2","userId":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","status":"selected","updatedAt":"2020-11-05T19:00:21.625Z","updatedBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a"}}
1+
{"topic":"taas.jobcandidate.update","originator":"taas-api","timestamp":"2020-11-05T19:00:23.003Z","mime-type":"application/json","payload":{"id":"0cb99adb-8bcd-4952-9203-9867dd45ef6f","jobId":"ffbc24f7-301e-48d3-bf01-c056916056a2","userId":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","status":"selected","updatedAt":"2020-11-05T19:00:21.625Z","updatedBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","createdAt":"2020-11-05T19:00:16.268Z","createdBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a"}}
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"topic":"taas.resourcebooking.update","originator":"taas-api","timestamp":"2020-11-05T19:00:26.407Z","mime-type":"application/json","payload":{"id":"60d97713-8621-476e-b006-7cb9589c7777","projectId":21,"userId":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","jobId":"ffbc24f7-301e-48d3-bf01-c056916056a2","startDate":"2020-09-27T04:17:23.131Z","endDate":"2020-09-27T04:17:23.131Z","memberRate":13.23,"customerRate":13,"rateType":"hourly","status":"assigned","updatedAt":"2020-11-05T19:00:25.062Z","updatedBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a"}}
1+
{"topic":"taas.resourcebooking.update","originator":"taas-api","timestamp":"2020-11-05T19:00:26.407Z","mime-type":"application/json","payload":{"id":"60d97713-8621-476e-b006-7cb9589c7777","projectId":21,"userId":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","jobId":"ffbc24f7-301e-48d3-bf01-c056916056a2","startDate":"2020-09-27T04:17:23.131Z","endDate":"2020-09-27T04:17:23.131Z","memberRate":13.23,"customerRate":13,"rateType":"hourly","status":"assigned","updatedAt":"2020-11-05T19:00:25.062Z","updatedBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a","createdAt":"2020-11-05T19:00:16.268Z","createdBy":"a55fe1bc-1754-45fa-9adc-cf3d6d7c377a"}}

0 commit comments

Comments
 (0)