Package br.com.caelum.stella.boleto.bancos

Source Code of br.com.caelum.stella.boleto.bancos.BradescoTest

package br.com.caelum.stella.boleto.bancos;

import org.junit.Before;
import org.junit.Test;

import br.com.caelum.stella.boleto.Beneficiario;
import br.com.caelum.stella.boleto.Boleto;
import br.com.caelum.stella.boleto.Datas;
import br.com.caelum.stella.boleto.Pagador;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;

public class BradescoTest {

  private Boleto boleto;
  private Bradesco banco;
  private Beneficiario beneficiario;

  @Before
  public void setUp() {
    Datas datas = Datas.novasDatas().comDocumento(31, 5, 2006).comProcessamento(31, 5, 2006)
        .comVencimento(10, 6, 2006);

    this.beneficiario = Beneficiario.novoBeneficiario().comNomeBeneficiario("Leonardo Bessa")
        .comAgencia("2949").comDigitoAgencia("1")
        .comCodigoBeneficiario("6580").comNumeroConvenio("1207113")
        .comDigitoCodigoBeneficiario("3").comCarteira("6")
        .comNossoNumero("3");

    Pagador pagador = Pagador.novoPagador().comNome("Fulano");

    this.banco = new Bradesco();

    this.boleto = Boleto.novoBoleto().comDatas(datas).comBeneficiario(this.beneficiario).comPagador(pagador)
        .comValorBoleto("1.00").comNumeroDoDocumento("4323");
  }

  @Test
  public void nossoNumeroFormatadoDeveTerOnzeDigitos() {
    Beneficiario beneficiario = Beneficiario.novoBeneficiario().comNossoNumero("9000206").comDigitoNossoNumero("7");
    String numeroFormatado = this.banco.getNossoNumeroFormatado(beneficiario);
    assertEquals(11, numeroFormatado.length());
    assertEquals("00009000206", numeroFormatado);
  }

  @Test
  public void carteiraFormatadoDeveTerDoisDigitos() {
    Beneficiario beneficiario = Beneficiario.novoBeneficiario().comCarteira("1");
    String numeroFormatado = this.banco.getCarteiraFormatado(beneficiario);
    assertEquals(2, numeroFormatado.length());
    assertEquals("01", numeroFormatado);
  }

  @Test
  public void contaCorrenteFormatadaDeveTerSeteDigitos() {
    String numeroFormatado = this.banco.getCodigoBeneficiarioFormatado(this.beneficiario);
    assertEquals(7, numeroFormatado.length());
    assertEquals("0006580", numeroFormatado);
  }

  @Test
  public void testLinhaDoBancoBradesco() {
    this.banco = new Bradesco();
    this.boleto = this.boleto.comBanco(this.banco);
    GeradorDeLinhaDigitavel linhaDigitavelGenerator = new GeradorDeLinhaDigitavel();
    String codigoDeBarras = boleto.getBanco().geraCodigoDeBarrasPara(this.boleto);
    assertEquals("23792.94909  60000.000004  03000.658009  6  31680000000100",
        linhaDigitavelGenerator.geraLinhaDigitavelPara(codigoDeBarras,this.banco));
  }

  @Test
  public void testCodigoDeBarraDoBancoBradesco() {
    this.banco = new Bradesco();
    this.boleto = this.boleto.comBanco(this.banco);

    assertEquals("23796316800000001002949060000000000300065800", this.banco.geraCodigoDeBarrasPara(this.boleto));
  }

  @Test
  public void testGetImage() {
    assertNotNull(this.banco.getImage());
  }
}
TOP

Related Classes of br.com.caelum.stella.boleto.bancos.BradescoTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.