UNPKG

component-dbs-core

Version:

DTO objects shared among device backend

61 lines 3.35 kB
"use strict"; 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) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const jwtLib_1 = __importDefault(require("./jwtLib")); const mock_jwks_1 = __importDefault(require("mock-jwks")); describe('JwtLib test suite', () => { const jwks = mock_jwks_1.default('https://zeller-dev.au.auth0.com/'); const welKnownUrl = 'https://zeller-dev.au.auth0.com/.well-known/jwks.json'; const underTest = new jwtLib_1.default({ auth0JwtIssuer: 'zeller', auth0JwtMaxAge: 3600, auth0UrlJwtWellKnown: welKnownUrl, }); beforeEach(() => { jwks.start(); }); afterEach(() => { jwks.stop(); }); it('should verify the token', () => __awaiter(void 0, void 0, void 0, function* () { const expected = { iss: 'zeller', iat: Date.now() }; const token = jwks.token(expected); console.log(token); const data = yield underTest.decodeJwt(token); expect(data).toEqual(expected); })); it('should fail with incorrect issuer', () => __awaiter(void 0, void 0, void 0, function* () { const expected = { iss: 'zeller_incorrect', iat: Date.now() }; const token = jwks.token(expected); console.log(token); expect(underTest.decodeJwt(token)).rejects.toThrowError(); })); it('should fail with malformed token', () => __awaiter(void 0, void 0, void 0, function* () { const token = "malformed token"; expect(underTest.decodeJwt(token)).rejects.toThrowError(); })); }); describe('JwtLib test suite', () => { const welKnownUrl = 'https://bad-url.auth0.com/.well-known/jwks.json'; const underTest = new jwtLib_1.default({ auth0JwtIssuer: 'zeller', auth0JwtMaxAge: 3600, auth0UrlJwtWellKnown: welKnownUrl, }); it('should fail getting JWT signing keys', () => __awaiter(void 0, void 0, void 0, function* () { const token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaXNzIjoiemVsbGVyIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.kCmzLzSPU3gzrIVGkdr0uCAdLKgtg_8JCxrzPIF1TDM8niDbkcEBq4zIEE3HY-RzgJJO_U7Nma_sCNkCL_Wj8FFgwvsY4WBJoLquYrdxfsXFNgKgAmwiVqdOJMph4DmP5SjIfwBak6e51_g1Y_pFjSAkCUjvNI6B1ZekD3TUc4kij_vo-UBiPuCqXufdMsR6KwN4DkLNUha3B5HldRZ1NKjvx5Am7jQf8YWPT6TnVfjUS8Gzw9I7H3oDe0KvS-1t1MCbO5NPbVIkl14hQYBR_TX7X753CI8lq6KRb042_D-QPcxBPgtAwi2uLa4lzwd97KdcqujolYgsn98mKuRxQQ"; yield expect(underTest.decodeJwt(token)).rejects.toBeTruthy(); })); }); //# sourceMappingURL=jwtLib.spec.js.map