quando uso faço teste para enviar titulo ou preço vazio o postMan fica enviando a requisição e não termina. Só acontece isso se faço uso do throw new Error()
const tabelaProduto = require('./TabelaProduto.js');
class Produto {
constructor({id, titulo, preco, estoque, fornecedor}) {
this.id = id,
this.titulo = titulo,
this.preco = preco,
this.estoque = estoque,
this.fornecedor = fornecedor
}
async criar() {
this.validar();
const resultado = await tabelaProduto.inserir({
titulo: this.titulo,
preco: this.preco,
estoque: this.estoque,
fornecedor: this.fornecedor
});
this.id = resultado.id;
}
validar() {
if(typeof this.titulo !== 'string' || this.titulo.length === 0) {
throw new Error('Campo titulo inválido');
}
if(typeof this.preco !== 'number' || this.preco <= 0) {
throw new Error('Campo preco inválido');
}
}
async excluir() {
console.log('deletando produto');
const resultado = await tabelaProduto.excluir(this.id, this.fornecedor);
return resultado;
}
}
module.exports = Produto