Package br.com.objectos.way.debs.emissao

Source Code of br.com.objectos.way.debs.emissao.TesteDeCaracteristica$ToDoubleVal

/*
* TesteDeCaracteristica.java criado em 24/04/2013
*
* Propriedade de Objectos Fábrica de Software LTDA.
* Reprodução parcial ou total proibida.
*/
package br.com.objectos.way.debs.emissao;

import static br.com.objectos.way.debs.emissao.Caracteristica.keys;
import static com.google.common.collect.Lists.transform;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.equalTo;

import java.io.File;
import java.util.List;

import org.joda.time.LocalDate;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

import br.com.objectos.way.io.LineKey;
import br.com.objectos.way.io.Record;
import br.com.objectos.way.io.RecordKey;
import br.com.objectos.way.io.ToEnumStringVal;
import br.com.objectos.way.io.ToIntegerVal;
import br.com.objectos.way.io.ToLocalDateVal;
import br.com.objectos.way.io.ToLongVal;
import br.com.objectos.way.io.ToStringVal;

import com.google.common.base.Function;

/**
* @author marcio.endo@objectos.com.br (Marcio Endo)
*/
@Test
public class TesteDeCaracteristica {

  private Caracteristica snd;
  private List<Record> regs;

  private final int i0 = 2 - 2;
  private final int i1 = 24 - 2;
  private final int i2 = 209 - 2;

  @BeforeClass
  public void prepararRegistros() {
    File file = CaracteristicasFalso.CARACTERISTICAS_20130424;
    snd = Caracteristica.of(file);
    regs = snd.getRegistros();
  }

  public void data() {
    assertThat(snd.getData(), equalTo(new LocalDate(2013, 4, 24)));
  }

  public void codigo() {
    LineKey<String> key = keys().codigo();
    List<String> res = transform(regs, new ToStringVal(key));

    assertThat(res.get(i0), equalTo("ABC11"));
    assertThat(res.get(i1), equalTo("ABMX11"));
    assertThat(res.get(i2), equalTo("BFBL14"));
  }

  public void empresa() {
    LineKey<String> key = keys().empresa();
    List<String> res = transform(regs, new ToStringVal(key));

    assertThat(res.get(i0), equalTo("PARTICIPACOES ABC S/A"));
    assertThat(res.get(i1), equalTo("ABIMEX IMPORTACAO E EXPORTACAO S/A"));
    assertThat(res.get(i2), equalTo("BFB LEASING S/A ARRENDAMENTO MERCANTIL"));
  }

  public void serie() {
    LineKey<String> key = keys().serie();
    List<String> res = transform(regs, new ToStringVal(key));

    assertThat(res.get(i0), equalTo("001"));
    assertThat(res.get(i1), equalTo("UNI"));
    assertThat(res.get(i2), equalTo("001"));
  }

  public void emissao() {
    LineKey<Integer> key = keys().emissao();
    List<Integer> res = transform(regs, new ToIntegerVal(key));

    assertThat(res.get(i0), equalTo(1));
    assertThat(res.get(i1), equalTo(1));
    assertThat(res.get(i2), equalTo(4));
  }

  public void situacao() {
    LineKey<CaracteristicaSituacao> key = keys().situacao();
    List<String> res = transform(regs, new ToEnumStringVal(key));

    assertThat(res.get(i0), equalTo("EXCLUIDO"));
    assertThat(res.get(i1), equalTo("REGISTRADO"));
    assertThat(res.get(i2), equalTo("EXCLUIDO"));
  }

  public void codigo_isin() {
    LineKey<String> key = keys().codigoIsin();
    List<String> res = transform(regs, new ToStringVal(key));

    assertThat(res.get(i0), equalTo("BRPTABDBS011"));
    assertThat(res.get(i1), equalTo("BRABMXDBS002"));
    assertThat(res.get(i2), equalTo(null));
  }

  public void data_emissao() {
    LineKey<LocalDate> key = keys().dataEmissao();
    List<LocalDate> res = transform(regs, new ToLocalDateVal(key));

    assertThat(res.get(i0), equalTo(new LocalDate(1995, 5, 23)));
    assertThat(res.get(i1), equalTo(new LocalDate(2012, 4, 10)));
    assertThat(res.get(i2), equalTo(new LocalDate(1992, 7, 1)));
  }

  public void data_vencimento() {
    LineKey<LocalDate> key = keys().dataVencimento();
    List<LocalDate> res = transform(regs, new ToLocalDateVal(key));

    assertThat(res.get(i0), equalTo(null));
    assertThat(res.get(i1), equalTo(new LocalDate(2018, 4, 10)));
    assertThat(res.get(i2), equalTo(new LocalDate(1995, 1, 1)));
  }

  public void motivo_saida() {
    LineKey<String> key = keys().motivoSaida();
    List<String> res = transform(regs, new ToStringVal(key));

    assertThat(res.get(i0), equalTo("VENCIMENTO ANTECIPADO"));
    assertThat(res.get(i1), equalTo("- - - - - -"));
    assertThat(res.get(i2), equalTo("VENCIMENTO"));
  }

  public void data_saida() {
    LineKey<LocalDate> key = keys().dataSaida();
    List<LocalDate> res = transform(regs, new ToLocalDateVal(key));

    assertThat(res.get(i0), equalTo(null));
    assertThat(res.get(i1), equalTo(null));
    assertThat(res.get(i2), equalTo(null));
    assertThat(res.get(i(214)), equalTo(new LocalDate(1997, 5, 2)));
  }

  public void qtd_emitida() {
    LineKey<Long> key = keys().quantidadeEmitida();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(1176l));
    assertThat(res.get(i1), equalTo(60l));
    assertThat(res.get(i2), equalTo(6000l));
  }

  public void artig14() {
    LineKey<Long> key = keys().artigo14();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
    assertThat(res.get(i(309)), equalTo(112000l));
  }

  public void artig24() {
    LineKey<Long> key = keys().artigo24();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
    assertThat(res.get(i(309)), equalTo(28000l));
  }

  public void qtd_mercado() {
    LineKey<Long> key = keys().quantidadeMercado();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(60l));
    assertThat(res.get(i2), equalTo(0l));
  }

  public void qtd_tesouraria() {
    LineKey<Long> key = keys().quantidadeTesouraria();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
    assertThat(res.get(i(210)), equalTo(1519760l));
  }

  public void qtd_resgatada() {
    LineKey<Long> key = keys().quantidadeResgatada();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
    assertThat(res.get(i(605)), equalTo(15000l));
  }

  public void qtd_cancelada() {
    LineKey<Long> key = keys().quantidadeCancelada();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
    assertThat(res.get(i(361)), equalTo(1500l));
  }

  public void qtd_convertida() {
    LineKey<Long> key = keys().quantidadeConvertida();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
    assertThat(res.get(i(453)), equalTo(167243l));
  }

  public void qtd_convertida_fora() {
    LineKey<Long> key = keys().quantidadeConvertidaFora();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
  }

  public void qtd_permutada() {
    LineKey<Long> key = keys().quantidadePermutada();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
  }

  public void qtd_permutada_fora() {
    LineKey<Long> key = keys().quantidadePermutadaFora();
    List<Long> res = transform(regs, new ToLongVal(key));

    assertThat(res.get(i0), equalTo(0l));
    assertThat(res.get(i1), equalTo(0l));
    assertThat(res.get(i2), equalTo(0l));
  }

  public void valor_nominal_emissao() {
    LineKey<Double> key = keys().valorNominalEmissao();
    List<Double> res = transform(regs, new ToDoubleVal(key));

    assertThat(res.get(i0), equalTo(11727.04));
    assertThat(res.get(i1), equalTo(1000000.0));
    assertThat(res.get(i2), equalTo(3446800.0));
  }

  public void valor_nominal_atual() {
    LineKey<Double> key = keys().valorNominalAtual();
    List<Double> res = transform(regs, new ToDoubleVal(key));

    assertThat(res.get(i0), equalTo(0.0));
    assertThat(res.get(i1), equalTo(1000000.0));
    assertThat(res.get(i2), equalTo(0.0));
  }

  public void indice() {
    LineKey<String> key = keys().indice();
    List<String> res = transform(regs, new ToStringVal(key));

    assertThat(res.get(i0), equalTo("IGP-M"));
    assertThat(res.get(i1), equalTo("DI"));
    assertThat(res.get(i2), equalTo("IGP-M"));
  }

  private int i(int row) {
    return row - 2;
  }

  private class ToDoubleVal implements Function<Record, Double> {

    private final RecordKey<Double> key;

    public ToDoubleVal(RecordKey<Double> key) {
      this.key = key;
    }

    @Override
    public Double apply(Record input) {
      return input.get(key);
    }

  }

}
TOP

Related Classes of br.com.objectos.way.debs.emissao.TesteDeCaracteristica$ToDoubleVal

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.