Movendo mocks para o beforeEach

This commit is contained in:
Leandro Costa 2023-01-27 10:04:58 -03:00
parent 7427ec2f40
commit 808dcc5bdc

View file

@ -18,11 +18,13 @@ const defaultGrantValue='client_credentials';
const defaultGrantType=`{"grant_type":"${defaultGrantValue}"}`; const defaultGrantType=`{"grant_type":"${defaultGrantValue}"}`;
describe("Get Access Token", ()=>{ describe("Get Access Token", ()=>{
it("Shoud Get with Standard Config", async ()=>{ beforeEach(() => {
const cli = getOauthClient();
mockedAxios.request.mockReset(); mockedAxios.request.mockReset();
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken }); mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
});
it("Shoud Get with Standard Config", async ()=>{
const cli = getOauthClient();
await accessTokenValidator(cli); await accessTokenValidator(cli);
validateDefaultGetAccessToken(); validateDefaultGetAccessToken();
}); });
@ -32,9 +34,6 @@ describe("Get Access Token", ()=>{
...baseClientParams, ...baseClientParams,
authHeaderName: 'CustomAuthorizationHeader', authHeaderName: 'CustomAuthorizationHeader',
}); });
mockedAxios.request.mockReset();
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
await accessTokenValidator(cli); await accessTokenValidator(cli);
expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({ expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({
url: authUrl, url: authUrl,
@ -52,9 +51,6 @@ describe("Get Access Token", ()=>{
...baseClientParams, ...baseClientParams,
grantType: 'PermissaoCustom', grantType: 'PermissaoCustom',
}); });
mockedAxios.request.mockReset();
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
await accessTokenValidator(cli); await accessTokenValidator(cli);
expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({ expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({
url: authUrl, url: authUrl,
@ -72,9 +68,6 @@ describe("Get Access Token", ()=>{
...baseClientParams, ...baseClientParams,
authScope: 'EscopoCustom', authScope: 'EscopoCustom',
}); });
mockedAxios.request.mockReset();
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
await accessTokenValidator(cli); await accessTokenValidator(cli);
expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({ expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({
url: authUrl, url: authUrl,
@ -92,9 +85,6 @@ describe("Get Access Token", ()=>{
...baseClientParams, ...baseClientParams,
sendAuthCredentialsOnRequestBody: true, sendAuthCredentialsOnRequestBody: true,
}); });
mockedAxios.request.mockReset();
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
await accessTokenValidator(cli); await accessTokenValidator(cli);
expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({ expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({
url: authUrl, url: authUrl,
@ -109,13 +99,14 @@ describe("Get Access Token", ()=>{
}); });
describe("Request", ()=>{ describe("Request", ()=>{
it("Get without Params", async ()=>{ beforeEach(() => {
const cli = getOauthClient();
mockedAxios.request.mockReset(); mockedAxios.request.mockReset();
// Mockando a requizição para obter o token.
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken }); mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
mockedAxios.request.mockResolvedValueOnce({ data: {"status": "ok"} }); mockedAxios.request.mockResolvedValueOnce({ data: {"status": "ok"} });
});
it("Get without Params", async ()=>{
const cli = getOauthClient();
const resp = await cli.get({ path: '/my-test-url' }); const resp = await cli.get({ path: '/my-test-url' });
validateDefaultGetAccessToken(); validateDefaultGetAccessToken();
expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({ expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({
@ -132,11 +123,6 @@ describe("Request", ()=>{
it("Get with Params", async ()=>{ it("Get with Params", async ()=>{
const cli = getOauthClient(); const cli = getOauthClient();
mockedAxios.request.mockReset();
// Mockando a requizição para obter o token.
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
mockedAxios.request.mockResolvedValueOnce({ data: {"status": "ok"} });
const resp = await cli.get({ path: '/my-test-url', params: { id: 1 } }); const resp = await cli.get({ path: '/my-test-url', params: { id: 1 } });
validateDefaultGetAccessToken(); validateDefaultGetAccessToken();
expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({ expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({
@ -154,11 +140,6 @@ describe("Request", ()=>{
it("Post", async ()=>{ it("Post", async ()=>{
const cli = getOauthClient(); const cli = getOauthClient();
mockedAxios.request.mockReset();
// Mockando a requizição para obter o token.
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
mockedAxios.request.mockResolvedValueOnce({ data: {"status": "ok"} });
const resp = await cli.post({ path: '/my-test-url-post', data: { id: 1, user: 'test' } }); const resp = await cli.post({ path: '/my-test-url-post', data: { id: 1, user: 'test' } });
validateDefaultGetAccessToken(); validateDefaultGetAccessToken();
expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({ expect(mockedAxios.request).toBeCalledWith(expect.objectContaining({
@ -175,11 +156,6 @@ describe("Request", ()=>{
it("Post with different contentType", async ()=>{ it("Post with different contentType", async ()=>{
const cli = getOauthClient(); const cli = getOauthClient();
mockedAxios.request.mockReset();
// Mockando a requizição para obter o token.
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
mockedAxios.request.mockResolvedValueOnce({ data: {"status": "ok"} });
const resp = await cli.post({ const resp = await cli.post({
path: '/my-test-url-post', path: '/my-test-url-post',
data: { id: 1, user: 'test' }, data: { id: 1, user: 'test' },
@ -203,11 +179,6 @@ describe("Request", ()=>{
...baseClientParams, ...baseClientParams,
tokenHeaderName: "x-token", tokenHeaderName: "x-token",
}); });
mockedAxios.request.mockReset();
// Mockando a requizição para obter o token.
mockedAxios.request.mockResolvedValueOnce({ data: mockedAccessToken });
mockedAxios.request.mockResolvedValueOnce({ data: {"status": "ok"} });
const resp = await cli.post({ const resp = await cli.post({
path: '/my-test-url-post', path: '/my-test-url-post',
data: { id: 1, user: 'test' }, data: { id: 1, user: 'test' },