public function testDeveGerarNFComValorDeImpostoDescontado() { $gerador = new GeradorDeNotaFiscal(); $pedido = new Pedido("Andre", 1000, 1); $nf = $gerador->gera($pedido); $this->assertEquals(1000 * 0.9399999999999999, $nf->getValor(), null, 1.0E-5); }
/** * @covers CDC\Loja\FluxoDeCaixa\GeradorDeNotaFiscal::gera() */ public function testDeveConsultarATabelaParaCalcularValor() { // mockando uma tabela, que ainda nem existe $tabela = Mockery::mock("CDC\\Loja\\Tributos\\TabelaInterface"); // definindo o futuro comportamento "paraValor", // que deve retornar 0.2 caso valor seja 1000.0 $tabela->shouldReceive("paraValor")->with(1000.0)->andReturn(0.2); $gerador = new GeradorDeNotaFiscal(array(), new RelogioDoSistema(), $tabela); $pedido = new Pedido("Andre", 1000.0, 1); $nf = $gerador->gera($pedido); //garantindo que a tabela foi consultada $this->assertEquals(1000 * 0.8, $nf->getValor(), null, 1.0E-5); }