From d686753f25749fab45c80166a1b0c4ebfe798d0b Mon Sep 17 00:00:00 2001
From: "rodrigo.zamboni"
Date: Mon, 23 May 2022 17:19:36 -0300
Subject: [PATCH 1/5] DOCS: Added proper readme
---
README.md | 48 +++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 7b1ba8f..890cecc 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,50 @@
+# Maestro
Maestro
-
\ No newline at end of file
+
+This is the Dadosfera´s gateway repository, it´s responsable for the communication between frontend application and Dadosfera´s mirosservices.
+
+## 💻 Requirements
+
+Before you start, make sure you have done the following steps:
+
+* Installed Nodejs version 16.14.2
+* Installed latest NPM version
+
+
+
+## 🚀 Installing Maestro
+
+First of all clone the repository:
+ * SSH:
+```
+git clone git@github.com:dadosfera/maestro.git
+```
+ * HTTPS:
+```
+git clone git@github.com:dadosfera/maestro.git
+```
+
+## Enviroment variables
+
+Here is a list of enviroment variables needed in order to run the application correctly.
+
+```
+ENV=
+DUC_URL=
+INFACTORY_URL=
+TRFACTORY_URL=
+OTFACTORY_URL=
+PIFACTORY_URL=
+JWT_PRIVATE_KEY=
+AWS_IDENTITY_POOL_ID=
+```
+
+## Running Maestro
+
+In order to run Maestro just run the following command:
+```
+npm run start:dev
+```
+If everything is fine the Maestro will start and be ready to receive HTTP requests
\ No newline at end of file
From 08fa269ce0f8d3f4d2e9754570da28a7eb80de93 Mon Sep 17 00:00:00 2001
From: "rodrigo.zamboni"
Date: Wed, 25 May 2022 11:14:40 -0300
Subject: [PATCH 2/5] initial tests
---
package-lock.json | 67 +++++++++++++++++++++++++++
package.json | 1 +
src/modules/auth/auth.service.spec.ts | 67 +++++++++++++++++++++++++++
3 files changed, 135 insertions(+)
diff --git a/package-lock.json b/package-lock.json
index ef21489..661dcfe 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -46,6 +46,7 @@
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-prettier": "^4.0.0",
"jest": "^27.5.1",
+ "nock": "^13.2.4",
"prettier": "^2.6.1",
"source-map-support": "^0.5.20",
"supertest": "^6.1.3",
@@ -6373,6 +6374,12 @@
"integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
"dev": true
},
+ "node_modules/json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
+ "dev": true
+ },
"node_modules/json5": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
@@ -6579,6 +6586,12 @@
"resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
"integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w="
},
+ "node_modules/lodash.set": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz",
+ "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=",
+ "dev": true
+ },
"node_modules/log-symbols": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
@@ -6893,6 +6906,21 @@
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
"dev": true
},
+ "node_modules/nock": {
+ "version": "13.2.4",
+ "resolved": "https://registry.npmjs.org/nock/-/nock-13.2.4.tgz",
+ "integrity": "sha512-8GPznwxcPNCH/h8B+XZcKjYPXnUV5clOKCjAqyjsiqA++MpNx9E9+t8YPp0MbThO+KauRo7aZJ1WuIZmOrT2Ug==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^4.1.0",
+ "json-stringify-safe": "^5.0.1",
+ "lodash.set": "^4.3.2",
+ "propagate": "^2.0.0"
+ },
+ "engines": {
+ "node": ">= 10.13"
+ }
+ },
"node_modules/node-emoji": {
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz",
@@ -7379,6 +7407,15 @@
"node": ">= 6"
}
},
+ "node_modules/propagate": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz",
+ "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
"node_modules/protobufjs": {
"version": "6.11.2",
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz",
@@ -14051,6 +14088,12 @@
"integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
"dev": true
},
+ "json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
+ "dev": true
+ },
"json5": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
@@ -14229,6 +14272,12 @@
"resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
"integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w="
},
+ "lodash.set": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz",
+ "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=",
+ "dev": true
+ },
"log-symbols": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
@@ -14469,6 +14518,18 @@
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
"dev": true
},
+ "nock": {
+ "version": "13.2.4",
+ "resolved": "https://registry.npmjs.org/nock/-/nock-13.2.4.tgz",
+ "integrity": "sha512-8GPznwxcPNCH/h8B+XZcKjYPXnUV5clOKCjAqyjsiqA++MpNx9E9+t8YPp0MbThO+KauRo7aZJ1WuIZmOrT2Ug==",
+ "dev": true,
+ "requires": {
+ "debug": "^4.1.0",
+ "json-stringify-safe": "^5.0.1",
+ "lodash.set": "^4.3.2",
+ "propagate": "^2.0.0"
+ }
+ },
"node-emoji": {
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz",
@@ -14824,6 +14885,12 @@
"sisteransi": "^1.0.5"
}
},
+ "propagate": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz",
+ "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==",
+ "dev": true
+ },
"protobufjs": {
"version": "6.11.2",
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz",
diff --git a/package.json b/package.json
index ef7dd60..b8c049c 100644
--- a/package.json
+++ b/package.json
@@ -58,6 +58,7 @@
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-prettier": "^4.0.0",
"jest": "^27.5.1",
+ "nock": "^13.2.4",
"prettier": "^2.6.1",
"source-map-support": "^0.5.20",
"supertest": "^6.1.3",
diff --git a/src/modules/auth/auth.service.spec.ts b/src/modules/auth/auth.service.spec.ts
index 89e1958..5af2744 100644
--- a/src/modules/auth/auth.service.spec.ts
+++ b/src/modules/auth/auth.service.spec.ts
@@ -1,5 +1,72 @@
+import axios from 'axios';
+import nock from 'nock';
+import { LoggerMiddleware } from '../../middlewares/authentication';
+import { NextFunction, Request, Response } from 'express';
+
describe('PipelinesGrpcServerService', () => {
+ let mockRequest: Partial;
+ let mockResponse: Partial;
+ const nextFunction: NextFunction = jest.fn();
+
+ beforeEach(() => {
+ mockResponse = {
+ json: jest.fn(),
+ };
+ });
+
it('should be defined', () => {
expect(2 + 2).toBe(4);
});
+
+ it('teste', async () => {
+ const awsRegion = process.env.AWS_REGION;
+ const awsPoolId = process.env.AWS_IDENTITY_POOL_ID;
+ const baseRes = {
+ keys: [
+ {
+ alg: 'RS256',
+ e: 'AQAB',
+ kid: 'z3VA3+i9JZY3JFDJTNWOap8RY+B7C6mFedaqCuvLvqA=',
+ kty: 'RSA',
+ n: 'vIGCQDkPA_eQUoaGDUsCyK_Whr76mNW0kZ1uac6ZnyY6hsjUIjvwehqv-ux3cQo4rQZQVFcoh8n9cK5jguz4GVdD972vIxoEdyv32nBFVr5e1PBunKJ2Y32GTR_Hl0XiE0hRe1v6cWuTqiC4qm1NY7tXYL3mI9L6s9ztNbhmG_V44y26PdhL4vRVrJaHOAmCs-77U-QYAC7Llkpmjh-8tG1zt9_FJ237cpBUVOuhD-7Nm32_eB9wddBGfBw0F10ko_KJoU-7683_Kv8k9coJzFUSONId-bfnLOzs8j1L6ZAHipXCR7rpmuRYzXztjp4Wmm2zPUToWLdMEy0Hq1OWmw',
+ use: 'sig',
+ },
+ {
+ alg: 'RS256',
+ e: 'AQAB',
+ kid: 'u+1W9pi+clp8LaPhZVrv4dXMqRkTRD02YWhbm0NvsUw=',
+ kty: 'RSA',
+ n: 'noGq1cRMAKJPWahqfC_zWasYovSUycaS1basMfEoh3ePLc9zRgmyfiVKYzLRosHMe1uk0Y5ekCBKnWA8Yl7I84Yt7IIIaE44oJjSEGBKT3m8i8YaXzawaNs63KPkRh8553o3KzL75bQWcI_ABKqkf-uAKSCl_XotBGkzLUl4hIOYtAtRGEfKaNMPqyTCT5Zn71pMd0isppaUiTW2T5QLsZV1IBp46aSrl_D5Q_FTsJT7feobQVoHp2zfIorCpkfTXBTBMQTEBFSDyPbc6cULl48VKxp0B0GEwR_kYCEHEVzf41LQcUWZUE0OdBychijkSc9MZJnBWUYQZyedJILWnQ',
+ use: 'sig',
+ },
+ ],
+ };
+
+ nock(
+ `https://cognito-idp.${awsRegion}.amazonaws.com/${awsPoolId}/.well-known/jwks.json`,
+ )
+ .persist()
+ .get('')
+ .reply(200, baseRes);
+
+ const data: any = await axios.get(
+ `https://cognito-idp.${awsRegion}.amazonaws.com/${awsPoolId}/.well-known/jwks.json`,
+ );
+ const authMiddleware = new LoggerMiddleware();
+ const mockedRequest = {
+ headers: {
+ Authorization: 'teste',
+ },
+ };
+ mockedRequest.headers['Dadosfera-User'] = 'asd';
+
+ authMiddleware.use(
+ mockRequest as Request,
+ mockResponse as Response,
+ nextFunction,
+ );
+
+ console.log(mockResponse);
+ expect(1).toBe(2);
+ });
});
From e496d42776b34bb0f9871779293faccc79b66577 Mon Sep 17 00:00:00 2001
From: "rodrigo.zamboni"
Date: Thu, 26 May 2022 10:13:42 -0300
Subject: [PATCH 3/5] =?UTF-8?q?=C3=B3dio?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/modules/auth/auth.service.spec.ts | 34 ++++++++++++++++-----------
1 file changed, 20 insertions(+), 14 deletions(-)
diff --git a/src/modules/auth/auth.service.spec.ts b/src/modules/auth/auth.service.spec.ts
index 5af2744..801da91 100644
--- a/src/modules/auth/auth.service.spec.ts
+++ b/src/modules/auth/auth.service.spec.ts
@@ -2,6 +2,7 @@ import axios from 'axios';
import nock from 'nock';
import { LoggerMiddleware } from '../../middlewares/authentication';
import { NextFunction, Request, Response } from 'express';
+import { Headers, Header } from '@nestjs/common';
describe('PipelinesGrpcServerService', () => {
let mockRequest: Partial;
@@ -9,6 +10,7 @@ describe('PipelinesGrpcServerService', () => {
const nextFunction: NextFunction = jest.fn();
beforeEach(() => {
+ mockRequest = {};
mockResponse = {
json: jest.fn(),
};
@@ -21,7 +23,7 @@ describe('PipelinesGrpcServerService', () => {
it('teste', async () => {
const awsRegion = process.env.AWS_REGION;
const awsPoolId = process.env.AWS_IDENTITY_POOL_ID;
- const baseRes = {
+ const cognitoRes = {
keys: [
{
alg: 'RS256',
@@ -41,32 +43,36 @@ describe('PipelinesGrpcServerService', () => {
},
],
};
+ const loginRes = {
+ tokens: {
+ idToken:
+ 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiZTljYjI1ZGEtMTQyOC00NDJjLTg5NjItYTdkNmQxNjhkODUyIiwibmFtZSI6InJvZHJpZ28uemFtYm9uaSIsInVzZXJuYW1lIjoicm9kcmlnby56YW1ib25pQGRhZG9zZmVyYS5haSIsInJ1bGVJZCI6IjIxNzdmZjg4LThmY2ItNDRlNS1hYzYxLWNjYmU2Y2M3MGU4ZCIsImN1c3RvbWVySWQiOiIxMTI5ODBhMy0wYTEyLTQxYzktYmZmZC03OTFjZjdjYTg3YTIiLCJtZmFTdGF0dXMiOiJwZW5kaW5nIiwiY3JlYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwidXBkYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwicGVybWlzc2lvbnMiOlsiUE9TVCAvcGlwZWxpbmVzIiwiR0VUIC9waXBlbGluZXMiLCJQVVQgL3BpcGVsaW5lcyIsIkRFTEVURSAvcGlwZWxpbmVzIiwiUE9TVCAvaW5wdXRzIiwiR0VUIC9pbnB1dHMiLCJQVVQgL2lucHV0cyIsIkRFTEVURSAvaW5wdXRzIiwiUE9TVCAvb3V0cHV0cyIsIkdFVCAvb3V0cHV0cyIsIlBVVCAvb3V0cHV0cyIsIkRFTEVURSAvb3V0cHV0cyIsIlBPU1QgL3RyYW5zZm9ybWF0aW9ucyIsIkdFVCAvdHJhbnNmb3JtYXRpb25zIiwiUFVUIC90cmFuc2Zvcm1hdGlvbnMiLCJERUxFVEUgL3RyYW5zZm9ybWF0aW9ucyIsIlBPU1QgL2NhdGFsb2ciLCJHRVQgL2NhdGFsb2ciLCJQVVQgL2NhdGFsb2ciLCJERUxFVEUgL2NhdGFsb2ciLCJQT1NUIC9hdXRoIiwiR0VUIC9tZXRhYmFzZSIsIkdFVCAvc25vd2ZsYWtlIl0sImN1c3RvbWVyIjoiZGFkb3NmZXJhIn0sImlhdCI6MTY1MzU2NTcxNiwiZXhwIjoxNjUzNjUyMTE2fQ.tEzg3_iB-XWGfp5ey6DUNLMkgvHxXFloFN-uShbXLy8',
+ accessToken:
+ 'eyJraWQiOiJ1KzFXOXBpK2NscDhMYVBoWlZydjRkWE1xUmtUUkQwMllXaGJtME52c1V3PSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxYjkyZmFkMC1iNWVlLTQwMzAtOGRmYy1hZWM0MGQzYzdkYmUiLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtZWFzdC0xLmFtYXpvbmF3cy5jb21cL3VzLWVhc3QtMV9OVXY3WTJTeGoiLCJjbGllbnRfaWQiOiI0N3RrY3Jxc2NuajY3bWhnYmg3dXQ1YnJzNCIsIm9yaWdpbl9qdGkiOiIxOWE1ODZjMC03MDc5LTQ3MjctODBiNy1jMWFmMzExNTkxNjciLCJldmVudF9pZCI6IjJiMmZhODg2LWNhMjMtNGVlMy05MTRjLWI5Y2I3YmU0ZWQ1YSIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoiYXdzLmNvZ25pdG8uc2lnbmluLnVzZXIuYWRtaW4iLCJhdXRoX3RpbWUiOjE2NTM1NjU3MTYsImV4cCI6MTY1MzU2NzUxNiwiaWF0IjoxNjUzNTY1NzE2LCJqdGkiOiJiOWYyYzE4Ni05ZTI1LTRhNzEtYWZhMy0yMzZlOWQxMWNhZDQiLCJ1c2VybmFtZSI6InJvZHJpZ28uemFtYm9uaUBkYWRvc2ZlcmEuYWkifQ.Y0PwVlqRzyLsooycFxv5ASkhEG5sUdun_N3DQZk2kF00UzpF7y9i_oZhcwF7x3B7CYeC6UH7wXZl5FdxeBWkC91hSX1ZuT3os9HBzUlEzq7bHf-m5yIvB2kEGs-vwR4_G4YkGGU23pAY-yPkpsZYbLrxh1WaHv-RmdrG4X1ssfMMFC2_rUx4Vjn1uwY7Q7LRayZxeTW-YGpq81JM5ger99Ly_kIvLO7RLDdYkIuM-ea6uwOZxJA__dBmRVww3-AqTkAZi6JaFJROPHPPCGKoCKXRKbPM92I3h-kWG-jFzKjvzbSW9iIco8NU3-vWDrNWBUqZQnMnmaDWmg-MXuGFWA',
+ refreshToken:
+ 'eyJjdHkiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAifQ.AmMeDe4aSWBySdePOZ3D4rmAr9eTSvuAIRyNhYdNxbPTXCucX7Ju7f92WoY0f7Fyb3q8PkF8-VI2bvWNQD-2GnM3DJkGRBM56FyufLSIn5ZXga7CNaIiZd9GD4vN8agIgEaGOagwRKcCRxYnC_gmdpvL20-Rh31eKpj-LCLn8jmx7qh72eyPKny_TcFeTjOE1RgI4hXWFFsH7LFwRL7erUhw2ASHuVQyASWHfAlbzPuOdvBsXnKBbcGYrGnNSzRI7OVe9DOWvH9PZ6zPPArh5A2PDmzO-9AsS-NYgnpAwgXAfgCOXc0mtBZ2Rg84EZukpqysBVwbVeEy5608bA7P4w.HsFIi0OpONyWHZwD.5Vzdh8Q4BRcBunO109BhvJ7bE5tieWRrKDKF4ZtoZUBKJAmXkJWTT6UIOy1Wdbol6l_ez3X1SWrcfnnc05JJmgm2HIblihmKqJ-dbcJ72Qtbp5sFCoAuU9ixQzxZIMaVtQrByA7IKejAaMlN2V3JsMWyfRXki0CSSxm2E3wkWewQ7BgIbyFQXLXEggI86vKd3Q2Wt_UvYHgP_Tjinm706bZf3R8RSIukI52wBDeL9iiKJ9sJ0Mr8lDrM6bkaF-i37DflKsh9vDglLBDuW9R6Wnp7IEjiHm42w1DCWwyQEv45CDFBlsnW9whAT6hGdsNnt0f8qvsDZ-Eee0aYQwWP0vRKvrzU1YNGkNGe9KZY2KBAisW-P1_jmSZO_xpV9eUHPejh7XoN5i_eT7fMoDUm2qir3ulgrG39sViYfkbUiFzb00jjIp5wEmFxvpQeOOu2aDI56oylNU1dapp8vXWzRCaLUbSttuCbdb6HST2fGdh-ROzYrkB72t8t1BjAB_qZ4iL6cOI1S8PBKSpJkEG1aje_4AmLroUC4K6NW8pR39zHvamRkJUYtKORvPaScajBAe5urD-r0tn3M99emmNDY3yU_Gc5694efpGQMLbFjUqjQLlcvf_lvatQipyyvbvbkdDAS_2FaOtbcfV417foAq6fUny3ogrJ6n6qvzQGtNZAVEM6eHP4thk8NCheM9-IB2VGc_OE9VA5E6IblqGSix8lpxM7NS0aRURAAv7Lu1xzG7RVNBK79bdi-9OZb4Ez9xDWcsMeDyr2KCBANBpYOLhCdGS1wx8l39nnpL6v_Tduo5FSPHVVypt1fSza8v91GRF5-Ra9uJ13v6V_6DDKVy0tOhnNfDK6IjUPu0fJRsEHQtH_3mJQGtUJ6IpIrsRBuQdb3n7iUPWZxjU5pZNSI1WPRkfWk5dBgvSsw3kLUSXYmRPNn8nirjvRtkzk_pYvRajsp0xBYp51gL7ovKvzumWINdgvlszTkUBpmXE0Z2wd6Q5wX5EZ9pkAkRSOWyQLG6xTcAFjUWcHDSEbnpAC-sT-khQJmwIyCZTf7-RRr1zB4Daha74jwvqLY3S1X7B5Awxm76lbDanoE6Xpg4EsbFbqkoomC0g0jQsYt4V8h2fCJ_Y1WYTwGXnymA-4-kgj_MAkxByQeajnKuhqYjLaGURiD8Kpt8Y3nNg4AltBWAnWKQQ3sM9AJvXx9kE3a0K571BJftkn0Dquv9w85SJMm0ueKF90o7iqqVYpgUtN4RoG2DmffrS9FiHrNRQ_CeYnWRgLfpqS45D_ehHBG7a2SoTAOwT_HerHT7w--1NtBkjA.bqghzr5YjGgSeu4GoBU_Cg',
+ },
+ mfaStatus: 'pending',
+ };
nock(
`https://cognito-idp.${awsRegion}.amazonaws.com/${awsPoolId}/.well-known/jwks.json`,
)
.persist()
.get('')
- .reply(200, baseRes);
+ .reply(200, cognitoRes);
+
+ mockRequest.headers['Dadosfera-User'] =
+ 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiZTljYjI1ZGEtMTQyOC00NDJjLTg5NjItYTdkNmQxNjhkODUyIiwibmFtZSI6InJvZHJpZ28uemFtYm9uaSIsInVzZXJuYW1lIjoicm9kcmlnby56YW1ib25pQGRhZG9zZmVyYS5haSIsInJ1bGVJZCI6IjIxNzdmZjg4LThmY2ItNDRlNS1hYzYxLWNjYmU2Y2M3MGU4ZCIsImN1c3RvbWVySWQiOiIxMTI5ODBhMy0wYTEyLTQxYzktYmZmZC03OTFjZjdjYTg3YTIiLCJtZmFTdGF0dXMiOiJwZW5kaW5nIiwiY3JlYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwidXBkYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwicGVybWlzc2lvbnMiOlsiUE9TVCAvcGlwZWxpbmVzIiwiR0VUIC9waXBlbGluZXMiLCJQVVQgL3BpcGVsaW5lcyIsIkRFTEVURSAvcGlwZWxpbmVzIiwiUE9TVCAvaW5wdXRzIiwiR0VUIC9pbnB1dHMiLCJQVVQgL2lucHV0cyIsIkRFTEVURSAvaW5wdXRzIiwiUE9TVCAvb3V0cHV0cyIsIkdFVCAvb3V0cHV0cyIsIlBVVCAvb3V0cHV0cyIsIkRFTEVURSAvb3V0cHV0cyIsIlBPU1QgL3RyYW5zZm9ybWF0aW9ucyIsIkdFVCAvdHJhbnNmb3JtYXRpb25zIiwiUFVUIC90cmFuc2Zvcm1hdGlvbnMiLCJERUxFVEUgL3RyYW5zZm9ybWF0aW9ucyIsIlBPU1QgL2NhdGFsb2ciLCJHRVQgL2NhdGFsb2ciLCJQVVQgL2NhdGFsb2ciLCJERUxFVEUgL2NhdGFsb2ciLCJQT1NUIC9hdXRoIiwiR0VUIC9tZXRhYmFzZSIsIkdFVCAvc25vd2ZsYWtlIl0sImN1c3RvbWVyIjoiZGFkb3NmZXJhIn0sImlhdCI6MTY1MzU2NTcxNiwiZXhwIjoxNjUzNjUyMTE2fQ.tEzg3_iB-XWGfp5ey6DUNLMkgvHxXFloFN-uShbXLy8';
+ mockRequest.headers['Authorization'] = 'asd';
- const data: any = await axios.get(
- `https://cognito-idp.${awsRegion}.amazonaws.com/${awsPoolId}/.well-known/jwks.json`,
- );
const authMiddleware = new LoggerMiddleware();
- const mockedRequest = {
- headers: {
- Authorization: 'teste',
- },
- };
- mockedRequest.headers['Dadosfera-User'] = 'asd';
-
- authMiddleware.use(
+ await authMiddleware.use(
mockRequest as Request,
mockResponse as Response,
nextFunction,
);
- console.log(mockResponse);
expect(1).toBe(2);
});
});
From b7e76a6d3f6ddbbf80c4b2261ba8681992ccfa6d Mon Sep 17 00:00:00 2001
From: "rodrigo.zamboni"
Date: Mon, 30 May 2022 09:58:07 -0300
Subject: [PATCH 4/5] FIX: fix busboy npm critical error
---
package.json | 3 +++
1 file changed, 3 insertions(+)
diff --git a/package.json b/package.json
index b8c049c..a718523 100644
--- a/package.json
+++ b/package.json
@@ -42,6 +42,9 @@
"rxjs": "^7.5.5",
"swagger-ui-express": "^4.3.0"
},
+ "overrides":{
+ "busboy@<1.6.0":"1.6.0"
+ },
"devDependencies": {
"@nestjs/cli": "^8.2.4",
"@nestjs/schematics": "^8.0.8",
From 03d17758ae405d287424d238f47c93a05ae860f6 Mon Sep 17 00:00:00 2001
From: "rodrigo.zamboni"
Date: Mon, 30 May 2022 10:11:04 -0300
Subject: [PATCH 5/5] FIX: commented broken test
---
src/middlewares/authentication.ts | 2 +-
src/modules/auth/auth.service.spec.ts | 198 ++++++++++++++++++--------
2 files changed, 137 insertions(+), 63 deletions(-)
diff --git a/src/middlewares/authentication.ts b/src/middlewares/authentication.ts
index 3c80513..6ff77b1 100644
--- a/src/middlewares/authentication.ts
+++ b/src/middlewares/authentication.ts
@@ -9,7 +9,7 @@ import {
} from '@nestjs/common';
import jwkToPem from 'jwk-to-pem';
import { decode, verify } from 'jsonwebtoken';
-import { HttpExceptionFilter } from 'src/error/http-exception.filter';
+import { HttpExceptionFilter } from '../error/http-exception.filter';
@UseFilters(new HttpExceptionFilter())
export class LoggerMiddleware implements NestMiddleware {
diff --git a/src/modules/auth/auth.service.spec.ts b/src/modules/auth/auth.service.spec.ts
index 801da91..bc390a2 100644
--- a/src/modules/auth/auth.service.spec.ts
+++ b/src/modules/auth/auth.service.spec.ts
@@ -1,78 +1,152 @@
-import axios from 'axios';
import nock from 'nock';
import { LoggerMiddleware } from '../../middlewares/authentication';
import { NextFunction, Request, Response } from 'express';
-import { Headers, Header } from '@nestjs/common';
+import { ConsoleLogger, UnauthorizedException } from '@nestjs/common';
describe('PipelinesGrpcServerService', () => {
- let mockRequest: Partial;
- let mockResponse: Partial;
- const nextFunction: NextFunction = jest.fn();
+ // let mockRequest: Partial;
+ // let mockResponse: Partial;
+ // const nextFunction: NextFunction = jest.fn();
- beforeEach(() => {
- mockRequest = {};
- mockResponse = {
- json: jest.fn(),
- };
- });
+ // beforeEach(() => {
+ // mockRequest = {
+ // headers: {},
+ // body: {
+ // info: {},
+ // },
+ // };
+ // mockResponse = {
+ // json: jest.fn(),
+ // };
+ // });
it('should be defined', () => {
expect(2 + 2).toBe(4);
});
- it('teste', async () => {
- const awsRegion = process.env.AWS_REGION;
- const awsPoolId = process.env.AWS_IDENTITY_POOL_ID;
- const cognitoRes = {
- keys: [
- {
- alg: 'RS256',
- e: 'AQAB',
- kid: 'z3VA3+i9JZY3JFDJTNWOap8RY+B7C6mFedaqCuvLvqA=',
- kty: 'RSA',
- n: 'vIGCQDkPA_eQUoaGDUsCyK_Whr76mNW0kZ1uac6ZnyY6hsjUIjvwehqv-ux3cQo4rQZQVFcoh8n9cK5jguz4GVdD972vIxoEdyv32nBFVr5e1PBunKJ2Y32GTR_Hl0XiE0hRe1v6cWuTqiC4qm1NY7tXYL3mI9L6s9ztNbhmG_V44y26PdhL4vRVrJaHOAmCs-77U-QYAC7Llkpmjh-8tG1zt9_FJ237cpBUVOuhD-7Nm32_eB9wddBGfBw0F10ko_KJoU-7683_Kv8k9coJzFUSONId-bfnLOzs8j1L6ZAHipXCR7rpmuRYzXztjp4Wmm2zPUToWLdMEy0Hq1OWmw',
- use: 'sig',
- },
- {
- alg: 'RS256',
- e: 'AQAB',
- kid: 'u+1W9pi+clp8LaPhZVrv4dXMqRkTRD02YWhbm0NvsUw=',
- kty: 'RSA',
- n: 'noGq1cRMAKJPWahqfC_zWasYovSUycaS1basMfEoh3ePLc9zRgmyfiVKYzLRosHMe1uk0Y5ekCBKnWA8Yl7I84Yt7IIIaE44oJjSEGBKT3m8i8YaXzawaNs63KPkRh8553o3KzL75bQWcI_ABKqkf-uAKSCl_XotBGkzLUl4hIOYtAtRGEfKaNMPqyTCT5Zn71pMd0isppaUiTW2T5QLsZV1IBp46aSrl_D5Q_FTsJT7feobQVoHp2zfIorCpkfTXBTBMQTEBFSDyPbc6cULl48VKxp0B0GEwR_kYCEHEVzf41LQcUWZUE0OdBychijkSc9MZJnBWUYQZyedJILWnQ',
- use: 'sig',
- },
- ],
- };
- const loginRes = {
- tokens: {
- idToken:
- 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiZTljYjI1ZGEtMTQyOC00NDJjLTg5NjItYTdkNmQxNjhkODUyIiwibmFtZSI6InJvZHJpZ28uemFtYm9uaSIsInVzZXJuYW1lIjoicm9kcmlnby56YW1ib25pQGRhZG9zZmVyYS5haSIsInJ1bGVJZCI6IjIxNzdmZjg4LThmY2ItNDRlNS1hYzYxLWNjYmU2Y2M3MGU4ZCIsImN1c3RvbWVySWQiOiIxMTI5ODBhMy0wYTEyLTQxYzktYmZmZC03OTFjZjdjYTg3YTIiLCJtZmFTdGF0dXMiOiJwZW5kaW5nIiwiY3JlYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwidXBkYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwicGVybWlzc2lvbnMiOlsiUE9TVCAvcGlwZWxpbmVzIiwiR0VUIC9waXBlbGluZXMiLCJQVVQgL3BpcGVsaW5lcyIsIkRFTEVURSAvcGlwZWxpbmVzIiwiUE9TVCAvaW5wdXRzIiwiR0VUIC9pbnB1dHMiLCJQVVQgL2lucHV0cyIsIkRFTEVURSAvaW5wdXRzIiwiUE9TVCAvb3V0cHV0cyIsIkdFVCAvb3V0cHV0cyIsIlBVVCAvb3V0cHV0cyIsIkRFTEVURSAvb3V0cHV0cyIsIlBPU1QgL3RyYW5zZm9ybWF0aW9ucyIsIkdFVCAvdHJhbnNmb3JtYXRpb25zIiwiUFVUIC90cmFuc2Zvcm1hdGlvbnMiLCJERUxFVEUgL3RyYW5zZm9ybWF0aW9ucyIsIlBPU1QgL2NhdGFsb2ciLCJHRVQgL2NhdGFsb2ciLCJQVVQgL2NhdGFsb2ciLCJERUxFVEUgL2NhdGFsb2ciLCJQT1NUIC9hdXRoIiwiR0VUIC9tZXRhYmFzZSIsIkdFVCAvc25vd2ZsYWtlIl0sImN1c3RvbWVyIjoiZGFkb3NmZXJhIn0sImlhdCI6MTY1MzU2NTcxNiwiZXhwIjoxNjUzNjUyMTE2fQ.tEzg3_iB-XWGfp5ey6DUNLMkgvHxXFloFN-uShbXLy8',
- accessToken:
- 'eyJraWQiOiJ1KzFXOXBpK2NscDhMYVBoWlZydjRkWE1xUmtUUkQwMllXaGJtME52c1V3PSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxYjkyZmFkMC1iNWVlLTQwMzAtOGRmYy1hZWM0MGQzYzdkYmUiLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtZWFzdC0xLmFtYXpvbmF3cy5jb21cL3VzLWVhc3QtMV9OVXY3WTJTeGoiLCJjbGllbnRfaWQiOiI0N3RrY3Jxc2NuajY3bWhnYmg3dXQ1YnJzNCIsIm9yaWdpbl9qdGkiOiIxOWE1ODZjMC03MDc5LTQ3MjctODBiNy1jMWFmMzExNTkxNjciLCJldmVudF9pZCI6IjJiMmZhODg2LWNhMjMtNGVlMy05MTRjLWI5Y2I3YmU0ZWQ1YSIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoiYXdzLmNvZ25pdG8uc2lnbmluLnVzZXIuYWRtaW4iLCJhdXRoX3RpbWUiOjE2NTM1NjU3MTYsImV4cCI6MTY1MzU2NzUxNiwiaWF0IjoxNjUzNTY1NzE2LCJqdGkiOiJiOWYyYzE4Ni05ZTI1LTRhNzEtYWZhMy0yMzZlOWQxMWNhZDQiLCJ1c2VybmFtZSI6InJvZHJpZ28uemFtYm9uaUBkYWRvc2ZlcmEuYWkifQ.Y0PwVlqRzyLsooycFxv5ASkhEG5sUdun_N3DQZk2kF00UzpF7y9i_oZhcwF7x3B7CYeC6UH7wXZl5FdxeBWkC91hSX1ZuT3os9HBzUlEzq7bHf-m5yIvB2kEGs-vwR4_G4YkGGU23pAY-yPkpsZYbLrxh1WaHv-RmdrG4X1ssfMMFC2_rUx4Vjn1uwY7Q7LRayZxeTW-YGpq81JM5ger99Ly_kIvLO7RLDdYkIuM-ea6uwOZxJA__dBmRVww3-AqTkAZi6JaFJROPHPPCGKoCKXRKbPM92I3h-kWG-jFzKjvzbSW9iIco8NU3-vWDrNWBUqZQnMnmaDWmg-MXuGFWA',
- refreshToken:
- 'eyJjdHkiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAifQ.AmMeDe4aSWBySdePOZ3D4rmAr9eTSvuAIRyNhYdNxbPTXCucX7Ju7f92WoY0f7Fyb3q8PkF8-VI2bvWNQD-2GnM3DJkGRBM56FyufLSIn5ZXga7CNaIiZd9GD4vN8agIgEaGOagwRKcCRxYnC_gmdpvL20-Rh31eKpj-LCLn8jmx7qh72eyPKny_TcFeTjOE1RgI4hXWFFsH7LFwRL7erUhw2ASHuVQyASWHfAlbzPuOdvBsXnKBbcGYrGnNSzRI7OVe9DOWvH9PZ6zPPArh5A2PDmzO-9AsS-NYgnpAwgXAfgCOXc0mtBZ2Rg84EZukpqysBVwbVeEy5608bA7P4w.HsFIi0OpONyWHZwD.5Vzdh8Q4BRcBunO109BhvJ7bE5tieWRrKDKF4ZtoZUBKJAmXkJWTT6UIOy1Wdbol6l_ez3X1SWrcfnnc05JJmgm2HIblihmKqJ-dbcJ72Qtbp5sFCoAuU9ixQzxZIMaVtQrByA7IKejAaMlN2V3JsMWyfRXki0CSSxm2E3wkWewQ7BgIbyFQXLXEggI86vKd3Q2Wt_UvYHgP_Tjinm706bZf3R8RSIukI52wBDeL9iiKJ9sJ0Mr8lDrM6bkaF-i37DflKsh9vDglLBDuW9R6Wnp7IEjiHm42w1DCWwyQEv45CDFBlsnW9whAT6hGdsNnt0f8qvsDZ-Eee0aYQwWP0vRKvrzU1YNGkNGe9KZY2KBAisW-P1_jmSZO_xpV9eUHPejh7XoN5i_eT7fMoDUm2qir3ulgrG39sViYfkbUiFzb00jjIp5wEmFxvpQeOOu2aDI56oylNU1dapp8vXWzRCaLUbSttuCbdb6HST2fGdh-ROzYrkB72t8t1BjAB_qZ4iL6cOI1S8PBKSpJkEG1aje_4AmLroUC4K6NW8pR39zHvamRkJUYtKORvPaScajBAe5urD-r0tn3M99emmNDY3yU_Gc5694efpGQMLbFjUqjQLlcvf_lvatQipyyvbvbkdDAS_2FaOtbcfV417foAq6fUny3ogrJ6n6qvzQGtNZAVEM6eHP4thk8NCheM9-IB2VGc_OE9VA5E6IblqGSix8lpxM7NS0aRURAAv7Lu1xzG7RVNBK79bdi-9OZb4Ez9xDWcsMeDyr2KCBANBpYOLhCdGS1wx8l39nnpL6v_Tduo5FSPHVVypt1fSza8v91GRF5-Ra9uJ13v6V_6DDKVy0tOhnNfDK6IjUPu0fJRsEHQtH_3mJQGtUJ6IpIrsRBuQdb3n7iUPWZxjU5pZNSI1WPRkfWk5dBgvSsw3kLUSXYmRPNn8nirjvRtkzk_pYvRajsp0xBYp51gL7ovKvzumWINdgvlszTkUBpmXE0Z2wd6Q5wX5EZ9pkAkRSOWyQLG6xTcAFjUWcHDSEbnpAC-sT-khQJmwIyCZTf7-RRr1zB4Daha74jwvqLY3S1X7B5Awxm76lbDanoE6Xpg4EsbFbqkoomC0g0jQsYt4V8h2fCJ_Y1WYTwGXnymA-4-kgj_MAkxByQeajnKuhqYjLaGURiD8Kpt8Y3nNg4AltBWAnWKQQ3sM9AJvXx9kE3a0K571BJftkn0Dquv9w85SJMm0ueKF90o7iqqVYpgUtN4RoG2DmffrS9FiHrNRQ_CeYnWRgLfpqS45D_ehHBG7a2SoTAOwT_HerHT7w--1NtBkjA.bqghzr5YjGgSeu4GoBU_Cg',
- },
- mfaStatus: 'pending',
- };
+ // it('Should be able to pass auth', async () => {
+ // const awsRegion = process.env.AWS_REGION;
+ // const awsPoolId = process.env.AWS_IDENTITY_POOL_ID;
+ // const cognitoRes = {
+ // keys: [
+ // {
+ // alg: 'RS256',
+ // e: 'AQAB',
+ // kid: 'z3VA3+i9JZY3JFDJTNWOap8RY+B7C6mFedaqCuvLvqA=',
+ // kty: 'RSA',
+ // n: 'vIGCQDkPA_eQUoaGDUsCyK_Whr76mNW0kZ1uac6ZnyY6hsjUIjvwehqv-ux3cQo4rQZQVFcoh8n9cK5jguz4GVdD972vIxoEdyv32nBFVr5e1PBunKJ2Y32GTR_Hl0XiE0hRe1v6cWuTqiC4qm1NY7tXYL3mI9L6s9ztNbhmG_V44y26PdhL4vRVrJaHOAmCs-77U-QYAC7Llkpmjh-8tG1zt9_FJ237cpBUVOuhD-7Nm32_eB9wddBGfBw0F10ko_KJoU-7683_Kv8k9coJzFUSONId-bfnLOzs8j1L6ZAHipXCR7rpmuRYzXztjp4Wmm2zPUToWLdMEy0Hq1OWmw',
+ // use: 'sig',
+ // },
+ // {
+ // alg: 'RS256',
+ // e: 'AQAB',
+ // kid: 'u+1W9pi+clp8LaPhZVrv4dXMqRkTRD02YWhbm0NvsUw=',
+ // kty: 'RSA',
+ // n: 'noGq1cRMAKJPWahqfC_zWasYovSUycaS1basMfEoh3ePLc9zRgmyfiVKYzLRosHMe1uk0Y5ekCBKnWA8Yl7I84Yt7IIIaE44oJjSEGBKT3m8i8YaXzawaNs63KPkRh8553o3KzL75bQWcI_ABKqkf-uAKSCl_XotBGkzLUl4hIOYtAtRGEfKaNMPqyTCT5Zn71pMd0isppaUiTW2T5QLsZV1IBp46aSrl_D5Q_FTsJT7feobQVoHp2zfIorCpkfTXBTBMQTEBFSDyPbc6cULl48VKxp0B0GEwR_kYCEHEVzf41LQcUWZUE0OdBychijkSc9MZJnBWUYQZyedJILWnQ',
+ // use: 'sig',
+ // },
+ // ],
+ // };
- nock(
- `https://cognito-idp.${awsRegion}.amazonaws.com/${awsPoolId}/.well-known/jwks.json`,
- )
- .persist()
- .get('')
- .reply(200, cognitoRes);
+ // nock(
+ // `https://cognito-idp.${awsRegion}.amazonaws.com/${awsPoolId}/.well-known/jwks.json`,
+ // )
+ // .persist()
+ // .get('')
+ // .reply(200, cognitoRes);
- mockRequest.headers['Dadosfera-User'] =
- 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiZTljYjI1ZGEtMTQyOC00NDJjLTg5NjItYTdkNmQxNjhkODUyIiwibmFtZSI6InJvZHJpZ28uemFtYm9uaSIsInVzZXJuYW1lIjoicm9kcmlnby56YW1ib25pQGRhZG9zZmVyYS5haSIsInJ1bGVJZCI6IjIxNzdmZjg4LThmY2ItNDRlNS1hYzYxLWNjYmU2Y2M3MGU4ZCIsImN1c3RvbWVySWQiOiIxMTI5ODBhMy0wYTEyLTQxYzktYmZmZC03OTFjZjdjYTg3YTIiLCJtZmFTdGF0dXMiOiJwZW5kaW5nIiwiY3JlYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwidXBkYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwicGVybWlzc2lvbnMiOlsiUE9TVCAvcGlwZWxpbmVzIiwiR0VUIC9waXBlbGluZXMiLCJQVVQgL3BpcGVsaW5lcyIsIkRFTEVURSAvcGlwZWxpbmVzIiwiUE9TVCAvaW5wdXRzIiwiR0VUIC9pbnB1dHMiLCJQVVQgL2lucHV0cyIsIkRFTEVURSAvaW5wdXRzIiwiUE9TVCAvb3V0cHV0cyIsIkdFVCAvb3V0cHV0cyIsIlBVVCAvb3V0cHV0cyIsIkRFTEVURSAvb3V0cHV0cyIsIlBPU1QgL3RyYW5zZm9ybWF0aW9ucyIsIkdFVCAvdHJhbnNmb3JtYXRpb25zIiwiUFVUIC90cmFuc2Zvcm1hdGlvbnMiLCJERUxFVEUgL3RyYW5zZm9ybWF0aW9ucyIsIlBPU1QgL2NhdGFsb2ciLCJHRVQgL2NhdGFsb2ciLCJQVVQgL2NhdGFsb2ciLCJERUxFVEUgL2NhdGFsb2ciLCJQT1NUIC9hdXRoIiwiR0VUIC9tZXRhYmFzZSIsIkdFVCAvc25vd2ZsYWtlIl0sImN1c3RvbWVyIjoiZGFkb3NmZXJhIn0sImlhdCI6MTY1MzU2NTcxNiwiZXhwIjoxNjUzNjUyMTE2fQ.tEzg3_iB-XWGfp5ey6DUNLMkgvHxXFloFN-uShbXLy8';
- mockRequest.headers['Authorization'] = 'asd';
+ // mockRequest.headers['Dadosfera-User'] =
+ // 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiZTljYjI1ZGEtMTQyOC00NDJjLTg5NjItYTdkNmQxNjhkODUyIiwibmFtZSI6InJvZHJpZ28uemFtYm9uaSIsInVzZXJuYW1lIjoicm9kcmlnby56YW1ib25pQGRhZG9zZmVyYS5haSIsInJ1bGVJZCI6IjIxNzdmZjg4LThmY2ItNDRlNS1hYzYxLWNjYmU2Y2M3MGU4ZCIsImN1c3RvbWVySWQiOiIxMTI5ODBhMy0wYTEyLTQxYzktYmZmZC03OTFjZjdjYTg3YTIiLCJtZmFTdGF0dXMiOiJwZW5kaW5nIiwiY3JlYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwidXBkYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwicGVybWlzc2lvbnMiOlsiUE9TVCAvcGlwZWxpbmVzIiwiR0VUIC9waXBlbGluZXMiLCJQVVQgL3BpcGVsaW5lcyIsIkRFTEVURSAvcGlwZWxpbmVzIiwiUE9TVCAvaW5wdXRzIiwiR0VUIC9pbnB1dHMiLCJQVVQgL2lucHV0cyIsIkRFTEVURSAvaW5wdXRzIiwiUE9TVCAvb3V0cHV0cyIsIkdFVCAvb3V0cHV0cyIsIlBVVCAvb3V0cHV0cyIsIkRFTEVURSAvb3V0cHV0cyIsIlBPU1QgL3RyYW5zZm9ybWF0aW9ucyIsIkdFVCAvdHJhbnNmb3JtYXRpb25zIiwiUFVUIC90cmFuc2Zvcm1hdGlvbnMiLCJERUxFVEUgL3RyYW5zZm9ybWF0aW9ucyIsIlBPU1QgL2NhdGFsb2ciLCJHRVQgL2NhdGFsb2ciLCJQVVQgL2NhdGFsb2ciLCJERUxFVEUgL2NhdGFsb2ciLCJQT1NUIC9hdXRoIiwiR0VUIC9tZXRhYmFzZSIsIkdFVCAvc25vd2ZsYWtlIl0sImN1c3RvbWVyIjoiZGFkb3NmZXJhIn0sImlhdCI6MTY1MzY1NjE2NywiZXhwIjoxNjUzNzQyNTY3fQ.eeNEEUk_95KOxM-objS7gXz-SCVkNFYpEP688MfLkdI';
+ // mockRequest.headers['Authorization'] =
+ // 'eyJraWQiOiJ1KzFXOXBpK2NscDhMYVBoWlZydjRkWE1xUmtUUkQwMllXaGJtME52c1V3PSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxYjkyZmFkMC1iNWVlLTQwMzAtOGRmYy1hZWM0MGQzYzdkYmUiLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtZWFzdC0xLmFtYXpvbmF3cy5jb21cL3VzLWVhc3QtMV9OVXY3WTJTeGoiLCJjbGllbnRfaWQiOiI0N3RrY3Jxc2NuajY3bWhnYmg3dXQ1YnJzNCIsIm9yaWdpbl9qdGkiOiJhZWJjNjA5NC1hYTJmLTRiZmUtOWExZi01ZWVhYTVmYzAwNDAiLCJldmVudF9pZCI6IjBhY2NjMzJiLTllNzktNGY2NS1iMDFiLWZhZGJlYzFhZWFiNiIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoiYXdzLmNvZ25pdG8uc2lnbmluLnVzZXIuYWRtaW4iLCJhdXRoX3RpbWUiOjE2NTM2NTYxNjcsImV4cCI6MTY1MzY1Nzk2NywiaWF0IjoxNjUzNjU2MTY3LCJqdGkiOiIyYTgzNDhmOC0xNDhlLTQ3NjctODcxYi00M2UyOGRjNjc2NTkiLCJ1c2VybmFtZSI6InJvZHJpZ28uemFtYm9uaUBkYWRvc2ZlcmEuYWkifQ.UgIgeGEH2olNgqPly8cymNgWIZJz5n9N4yeKgTusfGsu5h-TWP_jVhPoCvFoixO2XKzFjSCvKwlKQYZyB74jLQLs-j5C5KGBdOea1HX7pUnEfEVtBINd1kcHib5YpGYq3MHG1uVx8vNJS3XviwgYg4rgNWA4du-QbhMicdRyHolYM-dWxuxtkwTRWMe1Vw6KlTctFsvUWx1GMgjp37tsLONcp3B8OsYXfiR764K_pBNs5gMhJ39gJ7NHHLWkJrtrUTpIoHWaZS_HEgvVyQiJENQvK_bPDMPm_lyF1dW-JBgot4TpAxMmvV1XGabkzycIcAOwUaPsKBlMphgunz1Ffw';
+ // mockRequest.method = 'GET';
+ // mockRequest.route = {
+ // path: '/inputs/',
+ // stack: [
+ // {
+ // method: 'get',
+ // },
+ // ],
+ // methods: {
+ // get: true,
+ // },
+ // };
+ // const authMiddleware = new LoggerMiddleware();
- const authMiddleware = new LoggerMiddleware();
- await authMiddleware.use(
- mockRequest as Request,
- mockResponse as Response,
- nextFunction,
- );
+ // await authMiddleware.useTest(
+ // mockRequest as Request,
+ // mockResponse as Response,
+ // nextFunction,
+ // );
+ // expect(nextFunction).toHaveBeenCalled();
+ // });
- expect(1).toBe(2);
- });
+ // it('Should not be able to pass auth', async () => {
+ // const awsRegion = process.env.AWS_REGION;
+ // const awsPoolId = process.env.AWS_IDENTITY_POOL_ID;
+ // const cognitoRes = {
+ // keys: [
+ // {
+ // alg: 'RS256',
+ // e: 'AQAB',
+ // kid: 'z3VA3+i9JZY3JFDJTNWOap8RY+B7C6mFedaqCuvLvqA=',
+ // kty: 'RSA',
+ // n: 'vIGCQDkPA_eQUoaGDUsCyK_Whr76mNW0kZ1uac6ZnyY6hsjUIjvwehqv-ux3cQo4rQZQVFcoh8n9cK5jguz4GVdD972vIxoEdyv32nBFVr5e1PBunKJ2Y32GTR_Hl0XiE0hRe1v6cWuTqiC4qm1NY7tXYL3mI9L6s9ztNbhmG_V44y26PdhL4vRVrJaHOAmCs-77U-QYAC7Llkpmjh-8tG1zt9_FJ237cpBUVOuhD-7Nm32_eB9wddBGfBw0F10ko_KJoU-7683_Kv8k9coJzFUSONId-bfnLOzs8j1L6ZAHipXCR7rpmuRYzXztjp4Wmm2zPUToWLdMEy0Hq1OWmw',
+ // use: 'sig',
+ // },
+ // {
+ // alg: 'RS256',
+ // e: 'AQAB',
+ // kid: 'u+1W9pi+clp8LaPhZVrv4dXMqRkTRD02YWhbm0NvsUw=',
+ // kty: 'RSA',
+ // n: 'noGq1cRMAKJPWahqfC_zWasYovSUycaS1basMfEoh3ePLc9zRgmyfiVKYzLRosHMe1uk0Y5ekCBKnWA8Yl7I84Yt7IIIaE44oJjSEGBKT3m8i8YaXzawaNs63KPkRh8553o3KzL75bQWcI_ABKqkf-uAKSCl_XotBGkzLUl4hIOYtAtRGEfKaNMPqyTCT5Zn71pMd0isppaUiTW2T5QLsZV1IBp46aSrl_D5Q_FTsJT7feobQVoHp2zfIorCpkfTXBTBMQTEBFSDyPbc6cULl48VKxp0B0GEwR_kYCEHEVzf41LQcUWZUE0OdBychijkSc9MZJnBWUYQZyedJILWnQ',
+ // use: 'sig',
+ // },
+ // ],
+ // };
+
+ // nock(
+ // `https://cognito-idp.${awsRegion}.amazonaws.com/${awsPoolId}/.well-known/jwks.json`,
+ // )
+ // .persist()
+ // .get('')
+ // .reply(200, cognitoRes);
+
+ // mockRequest.headers['Dadosfera-User'] =
+ // 'asdeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoiZTljYjI1ZGEtMTQyOC00NDJjLTg5NjItYTdkNmQxNjhkODUyIiwibmFtZSI6InJvZHJpZ28uemFtYm9uaSIsInVzZXJuYW1lIjoicm9kcmlnby56YW1ib25pQGRhZG9zZmVyYS5haSIsInJ1bGVJZCI6IjIxNzdmZjg4LThmY2ItNDRlNS1hYzYxLWNjYmU2Y2M3MGU4ZCIsImN1c3RvbWVySWQiOiIxMTI5ODBhMy0wYTEyLTQxYzktYmZmZC03OTFjZjdjYTg3YTIiLCJtZmFTdGF0dXMiOiJwZW5kaW5nIiwiY3JlYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwidXBkYXRlZEF0IjoiMjAyMi0wNS0xM1QxNTowOTowOS4xMzhaIiwicGVybWlzc2lvbnMiOlsiUE9TVCAvcGlwZWxpbmVzIiwiR0VUIC9waXBlbGluZXMiLCJQVVQgL3BpcGVsaW5lcyIsIkRFTEVURSAvcGlwZWxpbmVzIiwiUE9TVCAvaW5wdXRzIiwiR0VUIC9pbnB1dHMiLCJQVVQgL2lucHV0cyIsIkRFTEVURSAvaW5wdXRzIiwiUE9TVCAvb3V0cHV0cyIsIkdFVCAvb3V0cHV0cyIsIlBVVCAvb3V0cHV0cyIsIkRFTEVURSAvb3V0cHV0cyIsIlBPU1QgL3RyYW5zZm9ybWF0aW9ucyIsIkdFVCAvdHJhbnNmb3JtYXRpb25zIiwiUFVUIC90cmFuc2Zvcm1hdGlvbnMiLCJERUxFVEUgL3RyYW5zZm9ybWF0aW9ucyIsIlBPU1QgL2NhdGFsb2ciLCJHRVQgL2NhdGFsb2ciLCJQVVQgL2NhdGFsb2ciLCJERUxFVEUgL2NhdGFsb2ciLCJQT1NUIC9hdXRoIiwiR0VUIC9tZXRhYmFzZSIsIkdFVCAvc25vd2ZsYWtlIl0sImN1c3RvbWVyIjoiZGFkb3NmZXJhIn0sImlhdCI6MTY1MzY1NjE2NywiZXhwIjoxNjUzNzQyNTY3fQ.eeNEEUk_95KOxM-objS7gXz-SCVkNFYpEP688MfLkdI';
+ // mockRequest.headers['Authorization'] =
+ // 'asdeyJraWQiOiJ1KzFXOXBpK2NscDhMYVBoWlZydjRkWE1xUmtUUkQwMllXaGJtME52c1V3PSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxYjkyZmFkMC1iNWVlLTQwMzAtOGRmYy1hZWM0MGQzYzdkYmUiLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtZWFzdC0xLmFtYXpvbmF3cy5jb21cL3VzLWVhc3QtMV9OVXY3WTJTeGoiLCJjbGllbnRfaWQiOiI0N3RrY3Jxc2NuajY3bWhnYmg3dXQ1YnJzNCIsIm9yaWdpbl9qdGkiOiJhZWJjNjA5NC1hYTJmLTRiZmUtOWExZi01ZWVhYTVmYzAwNDAiLCJldmVudF9pZCI6IjBhY2NjMzJiLTllNzktNGY2NS1iMDFiLWZhZGJlYzFhZWFiNiIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoiYXdzLmNvZ25pdG8uc2lnbmluLnVzZXIuYWRtaW4iLCJhdXRoX3RpbWUiOjE2NTM2NTYxNjcsImV4cCI6MTY1MzY1Nzk2NywiaWF0IjoxNjUzNjU2MTY3LCJqdGkiOiIyYTgzNDhmOC0xNDhlLTQ3NjctODcxYi00M2UyOGRjNjc2NTkiLCJ1c2VybmFtZSI6InJvZHJpZ28uemFtYm9uaUBkYWRvc2ZlcmEuYWkifQ.UgIgeGEH2olNgqPly8cymNgWIZJz5n9N4yeKgTusfGsu5h-TWP_jVhPoCvFoixO2XKzFjSCvKwlKQYZyB74jLQLs-j5C5KGBdOea1HX7pUnEfEVtBINd1kcHib5YpGYq3MHG1uVx8vNJS3XviwgYg4rgNWA4du-QbhMicdRyHolYM-dWxuxtkwTRWMe1Vw6KlTctFsvUWx1GMgjp37tsLONcp3B8OsYXfiR764K_pBNs5gMhJ39gJ7NHHLWkJrtrUTpIoHWaZS_HEgvVyQiJENQvK_bPDMPm_lyF1dW-JBgot4TpAxMmvV1XGabkzycIcAOwUaPsKBlMphgunz1Ffw';
+ // mockRequest.method = 'GET';
+ // mockRequest.route = {
+ // path: '/inputs/',
+ // stack: [
+ // {
+ // method: 'get',
+ // },
+ // ],
+ // methods: {
+ // get: true,
+ // },
+ // };
+ // const authMiddleware = new LoggerMiddleware();
+
+ // // const t = await authMiddleware.useTest(
+ // // mockRequest as Request,
+ // // mockResponse as Response,
+ // // nextFunction,
+ // // );
+ // // expect(nextFunction).toHaveBeenCalled();
+
+ // expect(async () => {
+ // const t = await authMiddleware.useTest(
+ // mockRequest as Request,
+ // mockResponse as Response,
+ // nextFunction,
+ // );
+ // console.log(t);
+ // }).toThrow('Unauthorized');
+
+ // expect(1).toBe(2);
+ // // expect(t).toThrow(UnauthorizedException);
+ // });
});