From 38dd383939d30e4569c241a7a7c1cb2295c794b2 Mon Sep 17 00:00:00 2001 From: Andrew Hughes Date: Wed, 4 Dec 2019 13:32:35 +0000 Subject: [PATCH] src: tsc build HealthChecker (#41) --- src/healthcheck/HealthChecker.js | 3 +- src/healthcheck/HealthChecker.js.map | 2 +- test/healthcheck/HealthChecker.test.js | 145 +++++++++++---------- test/healthcheck/HealthChecker.test.js.map | 2 +- 4 files changed, 77 insertions(+), 75 deletions(-) diff --git a/src/healthcheck/HealthChecker.js b/src/healthcheck/HealthChecker.js index 9a3732a..80faf4a 100644 --- a/src/healthcheck/HealthChecker.js +++ b/src/healthcheck/HealthChecker.js @@ -15,10 +15,11 @@ * limitations under the License. */ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; diff --git a/src/healthcheck/HealthChecker.js.map b/src/healthcheck/HealthChecker.js.map index 6993257..ca61208 100644 --- a/src/healthcheck/HealthChecker.js.map +++ b/src/healthcheck/HealthChecker.js.map @@ -1 +1 @@ -{"version":3,"file":"HealthChecker.js","sourceRoot":"","sources":["HealthChecker.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"HealthChecker.js","sourceRoot":"","sources":["HealthChecker.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/test/healthcheck/HealthChecker.test.js b/test/healthcheck/HealthChecker.test.js index 13ef8d0..4e53d3c 100644 --- a/test/healthcheck/HealthChecker.test.js +++ b/test/healthcheck/HealthChecker.test.js @@ -15,10 +15,11 @@ * limitations under the License. */ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; @@ -27,7 +28,7 @@ const chai_1 = require("chai"); const index_1 = require("../../index"); chai_1.should(); describe('Health Checker test suite', () => { - it('Startup reports DOWN', () => __awaiter(this, void 0, void 0, function* () { + it('Startup reports DOWN', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, _reject) => { throw new Error("Startup Failure"); @@ -38,7 +39,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN} , but returned: ${result}`); })); - it('Startup reports UP', () => __awaiter(this, void 0, void 0, function* () { + it('Startup reports UP', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable const promise = () => new Promise((resolve, _reject) => { @@ -50,7 +51,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.UP, `Should return: ${index_1.State.UP} , but returned: ${result}`); })); - it('Startup reports STARTING when first is starting and second is up', () => __awaiter(this, void 0, void 0, function* () { + it('Startup reports STARTING when first is starting and second is up', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const Check1 = () => new Promise((resolve, _reject) => { setTimeout(resolve, 1000, 'foo'); @@ -68,7 +69,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.STARTING; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports STARTING with a pending startUp check', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports STARTING with a pending startUp check', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const Check1 = () => new Promise((resolve, _reject) => { setTimeout(resolve, 100, 'foo'); @@ -80,7 +81,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.STARTING; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports UP with a pending startUp check that will resolve', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports UP with a pending startUp check that will resolve', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const Check1 = () => new Promise((resolve, _reject) => { setTimeout(resolve, 100, 'foo'); @@ -92,7 +93,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.UP; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports DOWN with a pending startUp check that will fail', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports DOWN with a pending startUp check that will fail', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const Check1 = () => new Promise((_resolve, reject) => { setTimeout(reject, 1000, 'foo'); @@ -104,7 +105,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.DOWN; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports UP with a pending startUp check that will resolve', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports UP with a pending startUp check that will resolve', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const Check1 = () => new Promise((resolve, _reject) => { setTimeout(resolve, 100, 'foo'); @@ -116,7 +117,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.UP; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports DOWN with a pending startUp check that will fail', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports DOWN with a pending startUp check that will fail', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const Check1 = () => new Promise((resolve, reject) => { setTimeout(reject, 100, 'foo'); @@ -128,7 +129,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.DOWN; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Startup reports STARTING when first is up and the second is starting', () => __awaiter(this, void 0, void 0, function* () { + it('Startup reports STARTING when first is up and the second is starting', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const Check1 = () => new Promise((resolve, _reject) => { resolve(); @@ -145,7 +146,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.STARTING; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Startup reports STARTING with returned Promise', () => __awaiter(this, void 0, void 0, function* () { + it('Startup reports STARTING with returned Promise', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, _reject) => { // tslint:disable-next-line:no-shadowed-variable no-unused-expression @@ -155,13 +156,13 @@ describe('Health Checker test suite', () => { }); let check = new index_1.StartupCheck("check", promise); healthCheck.registerStartupCheck(check) - .then(() => __awaiter(this, void 0, void 0, function* () { + .then(() => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthCheck.getStatus(); const result = status.status; chai_1.expect(result).to.equal(index_1.State.STARTING, `Should return: ${index_1.State.STARTING} , but returned: ${result}`); })); })); - it('Startup reports STARTING without returned Promise', () => __awaiter(this, void 0, void 0, function* () { + it('Startup reports STARTING without returned Promise', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, _reject) => { // tslint:disable-next-line:no-unused-expression no-shadowed-variable @@ -171,13 +172,13 @@ describe('Health Checker test suite', () => { }); let check = new index_1.StartupCheck("check", promise); healthCheck.registerStartupCheck(check) - .then(() => __awaiter(this, void 0, void 0, function* () { + .then(() => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthCheck.getStatus(); const result = status.status; chai_1.expect(result).to.equal(index_1.State.STARTING, `Should return: ${index_1.State.STARTING} , but returned: ${result}`); })); })); - it('Startup reports STARTING when multiple checks are still starting', () => __awaiter(this, void 0, void 0, function* () { + it('Startup reports STARTING when multiple checks are still starting', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const promise1 = () => new Promise((_resolve, _reject) => { // tslint:disable-next-line:no-unused-expression no-shadowed-variable @@ -195,13 +196,13 @@ describe('Health Checker test suite', () => { let check2 = new index_1.StartupCheck("check", promise2); healthCheck.registerStartupCheck(check1); healthCheck.registerStartupCheck(check2) - .then(() => __awaiter(this, void 0, void 0, function* () { + .then(() => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthCheck.getStatus(); const result = status.status; chai_1.expect(result).to.equal(index_1.State.STARTING, `Should return: ${index_1.State.STARTING} , but returned: ${result}`); })); })); - it('Liveness reports DOWN if startup is DOWN', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports DOWN if startup is DOWN', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const promiseOne = () => new Promise((_resolve, _reject) => { throw new Error("Liveness Failure"); @@ -212,7 +213,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN} , but returned: ${result}`); })); - it('Startup is UP and Liveness is DOWN, calling Liveness status should report DOWN', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is UP and Liveness is DOWN, calling Liveness status should report DOWN', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const LivenessPromise = () => new Promise((_resolve, _reject) => { throw new Error("error"); @@ -229,7 +230,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN} , but returned: ${result}`); })); - it('Startup is UP and Liveness is DOWN, calling getStatus should report DOWN', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is UP and Liveness is DOWN, calling getStatus should report DOWN', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const LivenessPromise = () => new Promise((_resolve, _reject) => { throw new Error("error"); @@ -245,7 +246,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN} , but returned: ${result}`); })); - it('Startup is UP and Liveness is UP, calling Liveness status should report UP', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is UP and Liveness is UP, calling Liveness status should report UP', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const LivenessPromise = () => new Promise((resolve, _reject) => { resolve(); @@ -261,7 +262,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.UP, `Should return: ${index_1.State.UP} , but returned: ${result}`); })); - it('Startup is UP and Readiness is DOWN, calling Readiness status should report DOWN', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is UP and Readiness is DOWN, calling Readiness status should report DOWN', () => __awaiter(void 0, void 0, void 0, function* () { let healthCheck = new index_1.HealthChecker(); const ReadinessPromise = () => new Promise((_resolve, _reject) => { throw new Error("error"); @@ -277,7 +278,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN} , but returned: ${result}`); })); - it('Startup is UP and Readiness is DOWN, calling getSatus should report DOWN', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is UP and Readiness is DOWN, calling getSatus should report DOWN', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const ReadinessPromise = () => new Promise((_resolve, _reject) => { throw new Error("error"); @@ -293,7 +294,7 @@ describe('Health Checker test suite', () => { const result = status.status; chai_1.expect(result).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN} , but returned: ${result}`); })); - it('Startup is UP, getStartupComplete should return true with a liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is UP, getStartupComplete should return true with a liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const StartupPromise = () => new Promise((resolve, _reject) => { resolve(); @@ -304,7 +305,7 @@ describe('Health Checker test suite', () => { let result = yield healthcheck.getStartUpComplete(); chai_1.expect(result).to.equal(true, `Should return that startupComplete is true, but returned ${result}`); })); - it('Startup is DOWN, getStartupComplete should return false with a getStatus call', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is DOWN, getStartupComplete should return false with a getStatus call', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const StartupPromise = () => new Promise((_resolve, _reject) => { throw new Error("Startup failed"); @@ -315,7 +316,7 @@ describe('Health Checker test suite', () => { let result = healthcheck.getStartUpComplete(); chai_1.expect(result).to.equal(false, `Should return that startupComplete is false, but returned ${result}`); })); - it('Startup is DOWN and should return DOWN with a liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Startup is DOWN and should return DOWN with a liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const StartupPromise = () => new Promise((_resolve, _reject) => { throw new Error("Startup failed"); @@ -331,20 +332,20 @@ describe('Health Checker test suite', () => { let result = status.status; chai_1.expect(result).to.equal(index_1.State.DOWN, `Should return ${index_1.State.DOWN} but returned ${result}`); })); - it('Health reports UP by default', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports UP by default', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const status = yield healthcheck.getStatus(); let result = status.status; chai_1.expect(result).to.equal(index_1.State.UP, `Should return: ${index_1.State.UP}, but returned: ${result}`); })); - it('Health reports UP and empty checks array no registered liveness checks', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports UP and empty checks array no registered liveness checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const status = yield healthcheck.getStatus(); const result = JSON.stringify(status); let expected = "{\"status\":\"UP\",\"checks\":[]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports UP and check result with single registered liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports UP and check result with single registered liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable const promise = () => new Promise((resolve, _reject) => { @@ -357,7 +358,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"check\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports UP and check result with two registered liveness checks', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports UP and check result with two registered liveness checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable const promiseone = () => new Promise((resolve, _reject) => { @@ -376,7 +377,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"checkone\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}},{\"name\":\"checktwo\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports DOWN and check result with single failed liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports DOWN and check result with single failed liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, _reject) => { throw new Error("Startup Failure"); @@ -388,7 +389,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Startup Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports DOWN and check result with single rejected liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports DOWN and check result with single rejected liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, reject) => { reject(new Error("Startup Failure")); @@ -400,7 +401,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Startup Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports UP with running Liveness PingCheck', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports UP with running Liveness PingCheck', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let check = new index_1.PingCheck("google.com"); healthcheck.registerLivenessCheck(check); @@ -409,7 +410,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"PingCheck HEAD:google.com:80/\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports DOWN with failing Liveness PingCheck', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports DOWN with failing Liveness PingCheck', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let check = new index_1.PingCheck("not-an-address.com"); healthcheck.registerLivenessCheck(check); @@ -422,7 +423,7 @@ describe('Health Checker test suite', () => { chai_1.expect(checksState).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN}, but returned: ${checksState}`); chai_1.expect(checkName).to.equal(expected, `Should return: ${expected}, but returned: ${checkName}`); })); - it('Health reports DOWN on second invocation of a liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports DOWN on second invocation of a liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let count = 0; const promise = () => new Promise((resolve, reject) => { @@ -442,7 +443,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"\DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Liveness failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports UP on second invocation of a liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports UP on second invocation of a liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let count = 0; const promise = () => new Promise((resolve, reject) => { @@ -462,7 +463,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"\UP\",\"checks\":[{\"name\":\"check\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports DOWN and check result with one passed and one failed Liveness checks', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports DOWN and check result with one passed and one failed Liveness checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promiseone = () => new Promise((_resolve, _reject) => { throw new Error("Startup Failure"); @@ -479,7 +480,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"checkone\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Startup Failure\"}},{\"name\":\"checktwo\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Health reports DOWN and check result with one passed Liveness and one failed Readiness checks', () => __awaiter(this, void 0, void 0, function* () { + it('Health reports DOWN and check result with one passed Liveness and one failed Readiness checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promiseone = () => new Promise((_resolve, _reject) => { throw new Error("Readiness Failure"); @@ -496,20 +497,20 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"checkone\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Readiness Failure\"}},{\"name\":\"checktwo\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports UP by default', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports UP by default', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const status = yield healthcheck.getReadinessStatus(); let result = status.status; chai_1.expect(result).to.equal(index_1.State.UP, `Should return: ${index_1.State.UP}, but returned: ${result}`); })); - it('Readiness reports UP and empty checks array no registered checks', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports UP and empty checks array no registered checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const status = yield healthcheck.getReadinessStatus(); const result = JSON.stringify(status); let expected = "{\"status\":\"UP\",\"checks\":[]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports UP and check result with single registered check', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports UP and check result with single registered check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable const promise = () => new Promise((resolve, _reject) => { @@ -522,7 +523,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"check\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports UP and check result with two registered checks', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports UP and check result with two registered checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable const promiseone = () => new Promise((resolve, _reject) => { @@ -541,7 +542,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"checkone\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}},{\"name\":\"checktwo\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports DOWN and check result with single failed check', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports DOWN and check result with single failed check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, _reject) => { throw new Error("Readiness Failure"); @@ -553,7 +554,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Readiness Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports DOWN and check result with single rejected check', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports DOWN and check result with single rejected check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, reject) => { reject(new Error("Readiness Failure")); @@ -565,7 +566,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Readiness Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports UP with running PingCheck', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports UP with running PingCheck', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let check = new index_1.PingCheck("google.com"); healthcheck.registerReadinessCheck(check); @@ -574,7 +575,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"PingCheck HEAD:google.com:80/\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports DOWN with failing PingCheck', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports DOWN with failing PingCheck', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let check = new index_1.PingCheck("not-an-address.com"); healthcheck.registerReadinessCheck(check); @@ -587,7 +588,7 @@ describe('Health Checker test suite', () => { chai_1.expect(checksState).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN}, but returned: ${checksState}`); chai_1.expect(checkName).to.equal(expected, `Should return: ${expected}, but returned: ${checkName}`); })); - it('Readiness reports DOWN and check result with one passed and one failed registered checks', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports DOWN and check result with one passed and one failed registered checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promiseone = () => new Promise((_resolve, _reject) => { throw new Error("Readiness Failure"); @@ -604,7 +605,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"checkone\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Readiness Failure\"}},{\"name\":\"checktwo\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports DOWN on second invocation of a readiness check', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports DOWN on second invocation of a readiness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let count = 0; const promise = () => new Promise((resolve, reject) => { @@ -624,7 +625,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"\DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Readiness failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Readiness reports UP on second invocation of a readiness check', () => __awaiter(this, void 0, void 0, function* () { + it('Readiness reports UP on second invocation of a readiness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let count = 0; const promise = () => new Promise((resolve, reject) => { @@ -644,20 +645,20 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"\UP\",\"checks\":[{\"name\":\"check\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports UP by default', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports UP by default', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const status = yield healthcheck.getLivenessStatus(); let result = status.status; chai_1.expect(result).to.equal(index_1.State.UP, `Should return: ${index_1.State.UP}, but returned: ${result}`); })); - it('Liveness reports UP and empty checks array no registered checks', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports UP and empty checks array no registered checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const status = yield healthcheck.getLivenessStatus(); const result = JSON.stringify(status); let expected = "{\"status\":\"UP\",\"checks\":[]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports UP and check result with single registered check', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports UP and check result with single registered check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable const promise = () => new Promise((resolve, _reject) => { @@ -670,7 +671,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"check\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports UP and check result with two registered checks', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports UP and check result with two registered checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable const promiseone = () => new Promise((resolve, _reject) => { @@ -689,7 +690,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"checkone\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}},{\"name\":\"checktwo\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports DOWN and check result with single failed check', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports DOWN and check result with single failed check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, _reject) => { throw new Error("Liveness Failure"); @@ -701,7 +702,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Liveness Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports DOWN and check result with single rejected check', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports DOWN and check result with single rejected check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, reject) => { reject(new Error("Liveness Failure")); @@ -713,7 +714,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Liveness Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports UP with running PingCheck', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports UP with running PingCheck', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let check = new index_1.PingCheck("google.com"); healthcheck.registerLivenessCheck(check); @@ -722,7 +723,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"UP\",\"checks\":[{\"name\":\"PingCheck HEAD:google.com:80/\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports DOWN with failing PingCheck', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports DOWN with failing PingCheck', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let check = new index_1.PingCheck("not-an-address.com"); healthcheck.registerLivenessCheck(check); @@ -735,7 +736,7 @@ describe('Health Checker test suite', () => { chai_1.expect(checksState).to.equal(index_1.State.DOWN, `Should return: ${index_1.State.DOWN}, but returned: ${checksState}`); chai_1.expect(checkName).to.equal(expected, `Should return: ${expected}, but returned: ${checkName}`); })); - it('Liveness reports DOWN and check result with one passed and one failed registered checks', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports DOWN and check result with one passed and one failed registered checks', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const promiseone = () => new Promise((_resolve, _reject) => { throw new Error("Liveness Failure"); @@ -752,7 +753,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"DOWN\",\"checks\":[{\"name\":\"checkone\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Liveness Failure\"}},{\"name\":\"checktwo\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports DOWN on second invocation of a liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports DOWN on second invocation of a liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let count = 0; const promise = () => new Promise((resolve, reject) => { @@ -772,7 +773,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"\DOWN\",\"checks\":[{\"name\":\"check\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Liveness failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Liveness reports UP on second invocation of a liveness check', () => __awaiter(this, void 0, void 0, function* () { + it('Liveness reports UP on second invocation of a liveness check', () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); let count = 0; const promise = () => new Promise((resolve, reject) => { @@ -792,7 +793,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"\UP\",\"checks\":[{\"name\":\"check\",\"state\":\"UP\",\"data\":{\"reason\":\"\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Shutdown reports STOPPED once stopped', () => __awaiter(this, void 0, void 0, function* () { + it('Shutdown reports STOPPED once stopped', () => __awaiter(void 0, void 0, void 0, function* () { process.removeAllListeners('SIGTERM'); let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable @@ -803,9 +804,9 @@ describe('Health Checker test suite', () => { healthcheck.registerShutdownCheck(checkone); let result; yield new Promise((resolve) => { - process.once('SIGTERM', () => __awaiter(this, void 0, void 0, function* () { + process.once('SIGTERM', () => __awaiter(void 0, void 0, void 0, function* () { // Give shutdown a chance to process - yield setTimeout(() => __awaiter(this, void 0, void 0, function* () { + yield setTimeout(() => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthcheck.getStatus(); result = status.status; resolve(); @@ -816,7 +817,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.STOPPED; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Shutdown reports STOPPING whilst stopping', () => __awaiter(this, void 0, void 0, function* () { + it('Shutdown reports STOPPING whilst stopping', () => __awaiter(void 0, void 0, void 0, function* () { process.removeAllListeners('SIGTERM'); let healthcheck = new index_1.HealthChecker(); const promiseone = () => new Promise((_resolve, _reject) => { @@ -829,7 +830,7 @@ describe('Health Checker test suite', () => { healthcheck.registerShutdownCheck(checkone); let result; yield new Promise(resolve => { - process.once('SIGTERM', () => __awaiter(this, void 0, void 0, function* () { + process.once('SIGTERM', () => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthcheck.getStatus(); result = status.status; resolve(); @@ -839,7 +840,7 @@ describe('Health Checker test suite', () => { const expected = index_1.State.STOPPING; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Shutdown reports STOPPED and DOWN for check for error during shutdown', () => __awaiter(this, void 0, void 0, function* () { + it('Shutdown reports STOPPED and DOWN for check for error during shutdown', () => __awaiter(void 0, void 0, void 0, function* () { process.removeAllListeners('SIGTERM'); let healthcheck = new index_1.HealthChecker(); const promise = () => new Promise((_resolve, _reject) => { @@ -849,9 +850,9 @@ describe('Health Checker test suite', () => { healthcheck.registerShutdownCheck(checkone); let result; yield new Promise(resolve => { - process.once('SIGTERM', () => __awaiter(this, void 0, void 0, function* () { + process.once('SIGTERM', () => __awaiter(void 0, void 0, void 0, function* () { // must be wrapped in timeout to simulate a node tick to ensure "process.on('SIGTERM', this.onShutdownRequest)" have been executed - setTimeout(() => __awaiter(this, void 0, void 0, function* () { + setTimeout(() => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthcheck.getStatus(); result = JSON.stringify(status); resolve(); @@ -862,7 +863,7 @@ describe('Health Checker test suite', () => { const expected = "{\"status\":\"STOPPED\",\"checks\":[{\"name\":\"checkone\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Shutdown Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Shutdown reports STOPPED and DOWN/DOWN for check for error during shutdown', () => __awaiter(this, void 0, void 0, function* () { + it('Shutdown reports STOPPED and DOWN/DOWN for check for error during shutdown', () => __awaiter(void 0, void 0, void 0, function* () { process.removeAllListeners('SIGTERM'); let healthcheck = new index_1.HealthChecker(); const promiseone = () => new Promise((_resolve, _reject) => { @@ -879,7 +880,7 @@ describe('Health Checker test suite', () => { yield new Promise(resolve => { process.once('SIGTERM', () => { // must be wrapped in timeout to simulate a node tick to ensure "process.on('SIGTERM', this.onShutdownRequest)" have been executed - setTimeout(() => __awaiter(this, void 0, void 0, function* () { + setTimeout(() => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthcheck.getStatus(); result = JSON.stringify(status); resolve(); @@ -890,7 +891,7 @@ describe('Health Checker test suite', () => { let expected = "{\"status\":\"STOPPED\",\"checks\":[{\"name\":\"checkone\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Shutdown Failure\"}},{\"name\":\"checktwo\",\"state\":\"DOWN\",\"data\":{\"reason\":\"Shutdown Failure\"}}]}"; chai_1.expect(result).to.equal(expected, `Should return: ${expected}, but returned: ${result}`); })); - it('Shutdown reports STOPPING and STOPPED/STOPPING for checks for one complete and one running shutdown', () => __awaiter(this, void 0, void 0, function* () { + it('Shutdown reports STOPPING and STOPPED/STOPPING for checks for one complete and one running shutdown', () => __awaiter(void 0, void 0, void 0, function* () { process.removeAllListeners('SIGTERM'); let healthcheck = new index_1.HealthChecker(); // tslint:disable-next-line:no-shadowed-variable @@ -910,7 +911,7 @@ describe('Health Checker test suite', () => { let result; yield new Promise(resolve => { process.once('SIGTERM', () => { - setTimeout(() => __awaiter(this, void 0, void 0, function* () { + setTimeout(() => __awaiter(void 0, void 0, void 0, function* () { const status = yield healthcheck.getStatus(); result = JSON.stringify(status); resolve(); @@ -938,7 +939,7 @@ describe('Should convert any promise reject to return an error message as a stri [new Error(), "Error"], [new foo(), "bar"] ].forEach(([err, str]) => { - it(`When err is ${err} should return ${str}`, () => __awaiter(this, void 0, void 0, function* () { + it(`When err is ${err} should return ${str}`, () => __awaiter(void 0, void 0, void 0, function* () { let healthcheck = new index_1.HealthChecker(); const readinessPromise = () => new Promise((resolve, reject) => { reject(err); diff --git a/test/healthcheck/HealthChecker.test.js.map b/test/healthcheck/HealthChecker.test.js.map index aa61b4f..bbef280 100644 --- a/test/healthcheck/HealthChecker.test.js.map +++ b/test/healthcheck/HealthChecker.test.js.map @@ -1 +1 @@ -{"version":3,"file":"HealthChecker.test.js","sourceRoot":"","sources":["HealthChecker.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"HealthChecker.test.js","sourceRoot":"","sources":["HealthChecker.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file