Skip to content

Commit

Permalink
WIP #15 correções ./tests/boleto/bancos/*test.js
Browse files Browse the repository at this point in the history
  • Loading branch information
Romulosanttos committed Jul 24, 2020
1 parent ca81462 commit c8f05ca
Show file tree
Hide file tree
Showing 5 changed files with 96 additions and 97 deletions.
26 changes: 26 additions & 0 deletions lib/pdf-gerador.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
const fs = require('fs');
const path = require('path');
const Boleto = require('./utils/functions/boletoUtils');

module.exports = class Pdf {
constructor(boleto) {
this.boletoInfo = boleto;
}

pdfFile(nameFile) {
const caminhoDoArquivo = path.join(__dirname, nameFile);
const stream = fs.createWriteStream(caminhoDoArquivo);

return new Promise((resolve) => new Boleto.Gerador(this.boletoInfo).gerarPDF({
creditos: '',
stream,
}).then(() => resolve({ boleto: this.boleto, stream, path: caminhoDoArquivo })));
}

pdfStream(stream) {
return new Promise((resolve) => new Boleto.Gerador(this.boletoInfo).gerarPDF({
creditos: '',
stream,
}).then(() => resolve({ boleto: this.boleto, stream })));
}
};
20 changes: 7 additions & 13 deletions tests/boleto/bancos/bradesco-test.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
var path = require('path'),
fs = require('fs'),
const PdfGerador = require('../../../lib/pdf-gerador');
var fs = require('fs'),
boletos = require('../../../lib/utils/functions/boletoUtils.js'),
Bradesco = require('../../../lib/boleto/bancos/bradesco.js'),
geradorDeLinhaDigitavel = require('../../../lib/boleto/gerador-de-linha-digitavel.js'),
GeradorDeBoleto = require('../../../lib/boleto/gerador-de-boleto.js'),

Datas = boletos.Datas,
Endereco = boletos.Endereco,
Expand Down Expand Up @@ -135,17 +134,12 @@ module.exports = {
},

'Verifica criação de pdf': function(test) {
var geradorDeBoleto = new GeradorDeBoleto(boleto);
var caminhoDoArquivo = path.join(__dirname, '/boleto-bradesco.pdf');
const writeStream = fs.createWriteStream(caminhoDoArquivo);
geradorDeBoleto.gerarPDF({
creditos: '',
writeStream,
}).then(async()=>{
test.ok(fs.existsSync(caminhoDoArquivo));
test.equal(fs.unlinkSync(caminhoDoArquivo), undefined);
new PdfGerador(boleto).pdfFile(
'../tests/boleto/bancos/boleto-bradesco.pdf'
).then(async({path})=>{
test.ok(fs.existsSync(path));
test.equal(fs.unlinkSync(path), undefined);
test.done();
});

}
};
81 changes: 35 additions & 46 deletions tests/boleto/bancos/caixa-test.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
const { StreamToPromise } = require('../../../lib/index');
var path = require('path'),
fs = require('fs'),
const PdfGerador = require('../../../lib/pdf-gerador');
var fs = require('fs'),
boletos = require('../../../lib/utils/functions/boletoUtils.js'),
Caixa = require('../../../lib/boleto/bancos/caixa.js'),
geradorDeLinhaDigitavel = require('../../../lib/boleto/gerador-de-linha-digitavel.js'),
GeradorDeBoleto = boletos.Gerador,

Datas = boletos.Datas,
Endereco = boletos.Endereco,
Expand All @@ -22,13 +20,13 @@ module.exports = {
banco = new Caixa();

// SINCO
// var datas = Datas.novasDatas();
// datas.comDocumento(22, 4, 2013);
// datas.comProcessamento(22, 4, 2013);
// datas.comVencimento(29, 4, 2013);
var datas = Datas.novasDatas();
datas.comDocumento('04-22-2013');
datas.comProcessamento('04-22-2013');
datas.comVencimento('04-29-2013');

// pagador = Pagador.novoPagador();
// pagador.comNome('Mario Amaral');
const pagador = Pagador.novoPagador();
pagador.comNome('Mario Amaral');

beneficiario = Beneficiario.novoBeneficiario();
beneficiario.comNome('Rodrigo Turini');
Expand All @@ -39,13 +37,13 @@ module.exports = {
beneficiario.comNossoNumero('990000000003994458');
beneficiario.comDigitoNossoNumero('0');

// boletoSinco = Boleto.novoBoleto();
// boletoSinco.comDatas(datas);
// boletoSinco.comBeneficiario(beneficiario);
// boletoSinco.comBanco(banco);
// boletoSinco.comPagador(pagador);
// boletoSinco.comValorBoleto(4016.10);
// boletoSinco.comNumeroDoDocumento(3084373);
boletoSinco = Boleto.novoBoleto();
boletoSinco.comDatas(datas);
boletoSinco.comBeneficiario(beneficiario);
boletoSinco.comBanco(banco);
boletoSinco.comPagador(pagador);
boletoSinco.comValorBoleto(4016.10);
boletoSinco.comNumeroDoDocumento(3084373);

// SIGCB
var datas2 = Datas.novasDatas();
Expand Down Expand Up @@ -177,20 +175,20 @@ module.exports = {
enderecoDoPagador.comUf('RJ');
pagador2.comEndereco(enderecoDoPagador);

var boletoSicgb = Boleto.novoBoleto();
boletoSicgb.comDatas(datas2);
boletoSicgb.comBeneficiario(beneficiario2);
boletoSicgb.comBanco(banco);
boletoSicgb.comPagador(pagador2);
boletoSicgb.comValorBoleto(158.76);
boletoSicgb.comNumeroDoDocumento('NF100/00000215');
boletoSicgb.comLocaisDePagamento([
boletoSinco = Boleto.novoBoleto();
boletoSinco.comDatas(datas2);
boletoSinco.comBeneficiario(beneficiario2);
boletoSinco.comBanco(banco);
boletoSinco.comPagador(pagador2);
boletoSinco.comValorBoleto(158.76);
boletoSinco.comNumeroDoDocumento('NF100/00000215');
boletoSinco.comLocaisDePagamento([
'PREFERENCIALMENTE NAS CASAS LOTÉRICAS ATÉ O VALOR LIMITE'
]);

var codigoDeBarras = banco.geraCodigoDeBarrasPara(boletoSicgb),
var codigoDeBarras = banco.geraCodigoDeBarrasPara(boletoSinco),
linhaEsperada = '10496.48999 58000.100048 00000.000711 7 81550000015876';

console.log(geradorDeLinhaDigitavel(codigoDeBarras, banco));
test.equal(linhaEsperada, geradorDeLinhaDigitavel(codigoDeBarras, banco));
test.done();
},
Expand Down Expand Up @@ -409,30 +407,21 @@ module.exports = {
},

'Verifica criação de pdf - SIGCB 1': function(test) {
var geradorDeBoleto = new GeradorDeBoleto(boletoSicgb);
var caminhoDoArquivo = path.join(__dirname, '/boleto-caixa.pdf');
const writeStream = fs.createWriteStream(caminhoDoArquivo);
geradorDeBoleto.gerarPDF({
creditos: '',
writeStream,
}).then(async()=>{
test.ok(fs.existsSync(caminhoDoArquivo));
test.equal(fs.unlinkSync(caminhoDoArquivo), undefined);
new PdfGerador(boletoSicgb).pdfFile(
'../tests/boleto/bancos/boleto-caixa1.pdf'
).then(async({path})=>{
test.ok(fs.existsSync(path));
test.equal(fs.unlinkSync(path), undefined);
test.done();
});
},

'Verifica criação de pdf - SIGCB 2': async function(test) {
var geradorDeBoleto = new GeradorDeBoleto(boletoSicgb);
var caminhoDoArquivo = path.join(__dirname, '/boleto-caixa2.pdf');
const writeStream = fs.createWriteStream(caminhoDoArquivo);

await geradorDeBoleto.gerarPDF({
creditos: '',
writeStream,
}).then(async()=>{
test.ok(fs.existsSync(caminhoDoArquivo));
test.equal(fs.unlinkSync(caminhoDoArquivo), undefined);
new PdfGerador(boletoSicgb).pdfFile(
'../tests/boleto/bancos/boleto-caixa2.pdf'
).then(async({path})=>{
test.ok(fs.existsSync(path));
test.equal(fs.unlinkSync(path), undefined);
test.done();
});
}
Expand Down
17 changes: 7 additions & 10 deletions tests/boleto/bancos/itau-test.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
const PdfGerador = require('../../../lib/pdf-gerador');
var path = require('path'),
fs = require('fs'),
boletos = require('../../../lib/utils/functions/boletoUtils.js'),
Expand Down Expand Up @@ -329,16 +330,12 @@ module.exports = {
'Agradecemos a preferência, volte sempre!'
]);

const geradorDeBoleto = new GeradorDeBoleto([boleto, boleto2]);

const caminhoDoArquivo = path.join(__dirname, '/boleto-itau.pdf');
const writeStream = fs.createWriteStream(caminhoDoArquivo);
geradorDeBoleto.gerarPDF({
creditos: '',
writeStream,
}).then(async()=>{
test.ok(fs.existsSync(caminhoDoArquivo));
test.equal(fs.unlinkSync(caminhoDoArquivo), undefined);
// const geradorDeBoleto = new GeradorDeBoleto([boleto, boleto2]);
new PdfGerador([boleto, boleto2]).pdfFile(
'../tests/boleto/bancos/boleto-itau.pdf'
).then(async({path})=>{
test.ok(fs.existsSync(path));
test.equal(fs.unlinkSync(path), undefined);
test.done();
});
}
Expand Down
49 changes: 21 additions & 28 deletions tests/boleto/bancos/sicoob-test.js
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
const PdfGerador = require('../../../lib/pdf-gerador');
var path = require('path'),
fs = require('fs'),
boleto = require('../../../lib/boletoUtils.js'),
boletos = require('../../../lib/utils/functions/boletoUtils.js'),
Sicoob = require('../../../lib/boleto/bancos/sicoob.js'),
geradorDeLinhaDigitavel = require('../../../lib/boleto/gerador-de-linha-digitavel.js'),
GeradorDeBoleto = require('../../../lib/boleto/gerador-de-boleto.js'),

Datas = boleto.Datas,
Endereco = boleto.Endereco,
Beneficiario = boleto.Beneficiario,
Pagador = boleto.Pagador,
Boleto = boleto.Boleto,
Datas = boletos.Datas,
Endereco = boletos.Endereco,
Beneficiario = boletos.Beneficiario,
Pagador = boletos.Pagador,
Boleto = boletos.Boleto,

banco,
boleto,
Expand All @@ -18,11 +19,11 @@ var path = require('path'),
module.exports = {
setUp: function(done) {
var datas = Datas.novasDatas();
datas.comDocumento(1, 2, 2016);
datas.comProcessamento(1, 2, 2016);
datas.comVencimento(10, 2, 2016);
datas.comDocumento('02-01-2016');
datas.comProcessamento('02-01-2016');
datas.comVencimento('02-10-2016');

pagador = Pagador.novoPagador();
const pagador = Pagador.novoPagador();
pagador.comNome('BASILIO ANTONIO CAMPANHOLO');
pagador.comRegistroNacional('26018683172');

Expand Down Expand Up @@ -282,9 +283,9 @@ module.exports = {
'Verifica criação de pdf': function(test) { //Mover para teste adequado

var datas2 = Datas.novasDatas();
datas2.comDocumento(19, 9, 2014);
datas2.comProcessamento(19, 9, 2014);
datas2.comVencimento(26, 9, 2014);
datas2.comDocumento('09-19-2014');
datas2.comProcessamento('09-19-2014');
datas2.comVencimento('09-26-2014');

var beneficiario2 = Beneficiario.novoBeneficiario();
beneficiario2.comNome('GREENSTONE DES. E PROC. DE DADOS MINERAIS LTDA ME');
Expand Down Expand Up @@ -315,7 +316,7 @@ module.exports = {
enderecoDoPagador.comCidade('Rio de Janeiro');
enderecoDoPagador.comUf('RJ');

pagador.comEndereco(enderecoDoPagador);
pagador2.comEndereco(enderecoDoPagador);

boleto.comLocaisDePagamento([
'Pagável em qualquer banco ou casa lotérica até o vencimento'
Expand All @@ -329,20 +330,12 @@ module.exports = {
'Agradecemos a preferência, volte sempre!'
]);

var geradorDeBoleto = new GeradorDeBoleto([boleto, boleto2]);

geradorDeBoleto.gerarPDF(function boletosGerados(err, pdf) {
test.ifError(err);

var caminhoDoArquivo = path.join(__dirname, '/boleto.pdf');
writeStream = fs.createWriteStream(caminhoDoArquivo);

pdf.pipe(writeStream);

writeStream.on('close', function() {
test.ok(fs.existsSync(caminhoDoArquivo));
test.done();
});
new PdfGerador([boleto, boleto2]).pdfFile(
'../tests/boleto/bancos/boleto-sicoob.pdf'
).then(async({path})=>{
test.ok(fs.existsSync(path));
test.equal(fs.unlinkSync(path), undefined);
test.done();
});
}
};

0 comments on commit c8f05ca

Please sign in to comment.