Skip to content

Commit

Permalink
fix(errorHandler): retornar erro sobre limite de valor inteiro aceito (
Browse files Browse the repository at this point in the history
  • Loading branch information
PauloGoncalvesBH committed Apr 1, 2024
1 parent e4ee50b commit 6576b52
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 0 deletions.
1 change: 1 addition & 0 deletions src/utils/montarMensagemDeErroDeSchema.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ module.exports = error => {
'number.integer': `${propriedade} deve ser um inteiro`,
'number.min': `${propriedade} deve ser maior ou igual a 0`,
'number.positive': `${propriedade} deve ser um número positivo`,
'number.unsafe': `${propriedade} não pode ser maior que ${Number.MAX_SAFE_INTEGER}`,
'object.base': `${propriedade} deve ser um objeto`,
'object.unknown': `${propriedade} não é permitido`,
'string.base': `${propriedade} deve ser uma string`,
Expand Down
39 changes: 39 additions & 0 deletions test/integration/produtos/post.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -138,4 +138,43 @@ describe(rotaProdutos + ' POST', () => {
imagem: 'imagem deve ser uma string'
})
})

describe('Number.MAX_SAFE_INTEGER', () => {
it('Deve retornar erro 400 ao enviar número inteiro maior que Number.MAX_SAFE_INTEGER', async () => {
let produto = utils.dadosProduto()
produto = {
...produto,
preco: Number.MAX_SAFE_INTEGER + 1
}

const { body } = await request
.post('/produtos')
.send(produto)
.set('authorization', authorizationAdministrador)
.expect(400)

chai.assert.deepEqual(body, {
preco: `preco não pode ser maior que ${Number.MAX_SAFE_INTEGER}`
})
})

it('Deve cadastrar produto com sucesso ao enviar preco igual a Number.MAX_SAFE_INTEGER', async () => {
let produto = utils.dadosProduto()
produto = {
...produto,
preco: Number.MAX_SAFE_INTEGER
}

const { body } = await request
.post('/produtos')
.send(produto)
.set('authorization', authorizationAdministrador)
.expect(201)

chai.assert.deepEqual(body, {
message: 'Cadastro realizado com sucesso',
_id: body._id
})
})
})
})

0 comments on commit 6576b52

Please sign in to comment.