public void QuandoConsultarFornecedoresNaoVinculadosAoProdutoNenhumDosFornecedoresRetornadosEstaVinculadoAoProduto() { RemoveQueries.RemoverProdutosCadastrados(); RemoveQueries.RemoverFornecedoresCadastrados(); Session.BeginTransaction(); var produto = DefaultObjects.ObtemProdutoPadrao(); //CRIA 4 FORNECEDORES var fornecedor01 = DefaultObjects.ObtemFornecedorPadrao(); var fornecedor02 = DefaultObjects.ObtemFornecedorPadrao(); var fornecedor03 = DefaultObjects.ObtemFornecedorPadrao(); var fornecedor04 = DefaultObjects.ObtemFornecedorPadrao(); //VINCULA FORNECEDORES 1 E 2 AO PRODUTO. OS FORNECEDORES 3 E 4 NÃO SERÃO VINCULADOS produto.AdicionarFornecedores(new List <Fornecedor> { fornecedor01, fornecedor02 }); Session.Save(produto); Session.Save(fornecedor03); Session.Save(fornecedor04); Session.Transaction.Commit(); UnitOfWorkNh.Session.Clear(); var fornecedores = ObjectFactory.GetInstance <IFornecedores>(); fornecedores.FornecedoresNaoVinculadosAoProduto(produto.Codigo); Assert.AreEqual(2, fornecedores.Count()); IList <Fornecedor> fornecedoresNaoVinculados = fornecedores.List(); Assert.AreEqual(1, fornecedoresNaoVinculados.Count(x => x.Codigo == fornecedor03.Codigo)); Assert.AreEqual(1, fornecedoresNaoVinculados.Count(x => x.Codigo == fornecedor04.Codigo)); }
public void QuandoFiltraSomenteFornecedoresQueNaoSaoDeTransporteTodosFornecedoresListadosNaoSaoDeTransporte() { RemoveQueries.RemoverFornecedoresCadastrados(); Fornecedor naoTransportadora = DefaultObjects.ObtemFornecedorPadrao(); Fornecedor transportadora = DefaultObjects.ObtemTransportadoraPadrao(); DefaultPersistedObjects.PersistirFornecedor(naoTransportadora); DefaultPersistedObjects.PersistirFornecedor(transportadora); UnitOfWorkNh.Session.Clear(); var fornecedores = ObjectFactory.GetInstance <IFornecedores>(); IList <Fornecedor> naoTransportadoras = fornecedores.RemoveTransportadoras().List(); Assert.AreEqual(1, naoTransportadoras.Count); Assert.IsFalse(naoTransportadoras.First().Transportadora); }
public void QuandoConsultarFornecedoresNaoVinculadosRetornaListaDeFornecedores() { RemoveQueries.RemoverFornecedoresCadastrados(); Produto produto = DefaultObjects.ObtemProdutoPadrao(); Fornecedor fornecedor01 = DefaultObjects.ObtemFornecedorPadrao(); Fornecedor fornecedor02 = DefaultObjects.ObtemFornecedorPadrao(); produto.AdicionarFornecedores(new List <Fornecedor> { fornecedor01, fornecedor02 }); Fornecedor fornecedor03 = DefaultObjects.ObtemFornecedorPadrao(); Fornecedor fornecedor04 = DefaultObjects.ObtemFornecedorPadrao(); DefaultPersistedObjects.PersistirProduto(produto); DefaultPersistedObjects.PersistirFornecedor(fornecedor03); DefaultPersistedObjects.PersistirFornecedor(fornecedor04); UnitOfWorkNh.Session.Clear(); var consultaFornecedores = ObjectFactory.GetInstance <IConsultaFornecedor>(); var paginacaoVm = new PaginacaoVm() { Page = 1, PageSize = 10, Take = 10 }; var filtro = new FornecedorDoProdutoFiltro() { CodigoDosProdutos = new[] { produto.Codigo } }; var kendoGridVm = consultaFornecedores.FornecedoresNaoVinculadosAoProduto(paginacaoVm, filtro); Assert.AreEqual(2, kendoGridVm.QuantidadeDeRegistros); var viewModels = kendoGridVm.Registros.Cast <FornecedorCadastroVm>().ToList(); Assert.AreEqual(1, viewModels.Count(x => x.Codigo == fornecedor03.Codigo)); Assert.AreEqual(1, viewModels.Count(x => x.Codigo == fornecedor04.Codigo)); }
public void QuandoConsultaFornecedoresNaoVinculadosAUmaListaDeProdutosNenhumDosFornecedoresRetornadosEstaVinculadoAAlgumProdutoDaLista() { RemoveQueries.RemoverProdutosCadastrados(); RemoveQueries.RemoverFornecedoresCadastrados(); //cenário: //três fornecedores e três produtos: Os fornecedores 1 e 2 estão ligados aos produtos 1 e 2. Já o fornecedor 3 está ligado ao produto 3 . //vou passsar na lista de produtos, apenas os produtos 1 e 2. Deve retornar na lista de fornecedores apenas o fornecedor 3, que embora //esteja ligado ao produto 3, não está ligado a nenhum dos produtos da lista (1, 2). Produto produto1 = DefaultObjects.ObtemProdutoPadrao(); Produto produto2 = DefaultObjects.ObtemProdutoPadrao(); Produto produto3 = DefaultObjects.ObtemProdutoPadrao(); Fornecedor fornecedor1 = DefaultObjects.ObtemFornecedorPadrao(); Fornecedor fornecedor2 = DefaultObjects.ObtemFornecedorPadrao(); Fornecedor fornecedor3 = DefaultObjects.ObtemFornecedorPadrao(); produto1.AdicionarFornecedores(new List <Fornecedor> { fornecedor1 }); produto2.AdicionarFornecedores(new List <Fornecedor> { fornecedor2 }); produto3.AdicionarFornecedores(new List <Fornecedor> { fornecedor3 }); DefaultPersistedObjects.PersistirProduto(produto1); DefaultPersistedObjects.PersistirProduto(produto2); DefaultPersistedObjects.PersistirProduto(produto3); var fornecedores = ObjectFactory.GetInstance <IFornecedores>(); IList <Fornecedor> fornecedoresNaoVinculados = fornecedores.FornecedoresNaoVinculadosAosProdutos(new[] { produto1.Codigo, produto2.Codigo }).List(); Assert.AreEqual(1, fornecedoresNaoVinculados.Count); Assert.IsTrue(fornecedoresNaoVinculados.Any(x => x.Codigo == fornecedor3.Codigo)); }