-
Notifications
You must be signed in to change notification settings - Fork 0
/
authorization.spec.js
34 lines (27 loc) · 1.42 KB
/
authorization.spec.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
const LambdaTester = require('lambda-tester')
const { handler } = require('../../src/index')
// Esse teste permite validar que o método 'tokenIsValid' está corretamente integrado
// com o código, bem como demonstra que a aplicação sabe lidar com a ausência do token.
// Mais importante que validar que o método 'tokenIsValid' funciona (via teste unitário no arquivo 'tests/functions/tokenIsValid.spec.js'),
// é entender se ele está bem integrado com a aplicação e que ela vai saber utilizar esse método
// e lidar com qualquer tipo de dado enviado.
// Não seria possível fazer essa mesma automação sem o pacote lambda-tester, necessitando de teste manual.
describe('Authorization', () => {
it('Should return unauthorized access when token is invalid', async function () {
const unauthorizedToken = { token: '123qasfnghwuiiu' }
await LambdaTester(handler)
.event({ queryStringParameters: unauthorizedToken })
.expectResult(result => {
expect(result.statusCode).toBe(401)
expect(result.body).toBe(JSON.stringify({ message: 'Acesso não autorizado.' }))
})
})
it('Should return unauthorized access when token isn\'t present', async function () {
await LambdaTester(handler)
.event({})
.expectResult(result => {
expect(result.statusCode).toBe(401)
expect(result.body).toBe(JSON.stringify({ message: 'Acesso não autorizado.' }))
})
})
})