예제 #1
0
        public void TesteRealizaICMSQuandoEstadosDiferentesECfopDiferenteDe6009()
        {
            NotaFiscalItem notaFiscalItem = new NotaFiscalItem();
            PedidoItem     pedidoItem     = new PedidoItem();
            Pedido         pedido         = new Pedido();

            pedido.EstadoOrigem  = "SP";
            pedido.EstadoDestino = "MG";

            pedidoItem.ValorItemPedido = 1000.00;

            notaFiscalItem.Cfop = CFOP.Realiza("SP", "MG");

            ICMS.Calcula(pedidoItem, pedido, notaFiscalItem);

            Assert.Equal("10", notaFiscalItem.TipoIcms);
            Assert.Equal(0.17, notaFiscalItem.AliquotaIcms);
            Assert.Equal(1000.00, notaFiscalItem.BaseIcms);
            Assert.Equal(170, notaFiscalItem.ValorIcms);
        }
예제 #2
0
        public void DeveRetornarCincoPorCentoDadoUmOrcamentoComValorValido()
        {
            // Arrange
            var orcamento = new Orcamento((decimal)1000.0);
            var icms      = new ICMS();

            // Act
            var impostoCalculado = icms.Calcula(orcamento);

            // Assert
            var valorEsperado = (decimal)(1000.0 * 0.05 + 50.0);

            impostoCalculado.Should().Be(valorEsperado);
        }