public void QuandoCotacaoNaoForSelecionadaEnviaEmailDeeCotacaoNaoSelecionada()
        {
            ProcessoDeCotacaoDeFrete processoDeCotacao = DefaultObjects.ObtemProcessoDeCotacaoDeFreteComCotacaoNaoSelecionada();

            _geradorDeEmail.GerarEmail(processoDeCotacao);
            _emailServiceMock.Verify(x => x.Enviar(It.IsAny <string>(), It.IsAny <MensagemDeEmail>()), Times.Once());
            _geradorDeMensagemDeEmailMock.Verify(x => x.FornecedoresNaoSelecionadosNoProcessoDeCotacao(It.IsAny <Cotacao>()), Times.Once());
        }
        public void ConsigoConsultarCotacaoResumidaDosFornecedoresDeUmProcessoDeCotacaoDeFrete()
        {
            ProcessoDeCotacaoDeFrete processo = DefaultObjects.ObtemProcessoDeCotacaoDeFreteComCotacaoNaoSelecionada();

            DefaultPersistedObjects.PersistirProcessoDeCotacaoDeFrete(processo);
            FornecedorParticipante fornecedorParticipante = processo.FornecedoresParticipantes.Single();
            Fornecedor             fornecedor             = fornecedorParticipante.Fornecedor;
            CotacaoItem            cotacaoItem            = fornecedorParticipante.Cotacao.Itens.Single();

            var         consulta    = ObjectFactory.GetInstance <IConsultaProcessoDeCotacaoDeFrete>();
            KendoGridVm kendoGridVm = consulta.CotacoesDosFornecedoresResumido(processo.Id);

            Assert.AreEqual(1, kendoGridVm.QuantidadeDeRegistros);
            ProcessoCotacaoFornecedorVm vm = kendoGridVm.Registros.Cast <ProcessoCotacaoFornecedorVm>().Single();

            Assert.AreEqual(fornecedor.Codigo, vm.Codigo);
            Assert.AreEqual(fornecedor.Nome, vm.Nome);
            Assert.AreEqual(fornecedorParticipante.Id, vm.IdFornecedorParticipante);
            Assert.AreEqual(cotacaoItem.QuantidadeDisponivel, vm.QuantidadeDisponivel);
            Assert.AreEqual("Não", vm.Selecionado);
            Assert.AreEqual(cotacaoItem.ValorComImpostos, vm.ValorComImpostos);
            Assert.AreEqual(cotacaoItem.Preco, vm.ValorLiquido);
        }