public void QuandoBloqueioRequisicaoDeCompraComSucessoOcorrePersistencia() { var alterador = new AlteradorDeRequisicaoDeCompra(_unitOfWorkMock.Object, _requisicoesDeCompraMock.Object, _processosDeCotacaoDeMaterialMock.Object); alterador.Bloquear(10); CommonVerifications.VerificaCommitDeTransacao(_unitOfWorkMock); }
public void NaoDevePermtirBloquearUmaRequisicaDeCompraQueJaEstejaVinculadaComUmProcessoDeCotacaoDeMateriais() { //configuro count para retornar 1. Com isso consulta que verifica o número de processo vinculados a requisicaodecompra retorna 1. _processosDeCotacaoDeMaterialMock.Setup(x => x.Count()).Returns(1); var alterador = new AlteradorDeRequisicaoDeCompra(_unitOfWorkMock.Object, _requisicoesDeCompraMock.Object, _processosDeCotacaoDeMaterialMock.Object); alterador.Bloquear(10); _processosDeCotacaoDeMaterialMock.Verify(x => x.Count(), Times.Once()); CommonVerifications.VerificaRollBackDeTransacao(_unitOfWorkMock); }
public void QuandoBloqueioRequisicaoDeCompraFicaBloqueada() { _requisicoesDeCompraMock.Setup(x => x.Save(It.IsAny <RequisicaoDeCompra>())) .Callback((RequisicaoDeCompra req) => Assert.AreEqual(Enumeradores.StatusRequisicaoCompra.Bloqueado, req.Status)); var alterador = new AlteradorDeRequisicaoDeCompra(_unitOfWorkMock.Object, _requisicoesDeCompraMock.Object, _processosDeCotacaoDeMaterialMock.Object); alterador.Bloquear(10); _requisicoesDeCompraMock.Verify(x => x.Save(It.IsAny <RequisicaoDeCompra>()), Times.Once()); }
public void QuandoOcorreAlgumErroAoBloquearRequisicaoDeCompraNaoOcorrePersistencia() { //faço disparar uma exceção no método save do repositório _requisicoesDeCompraMock.Setup(x => x.Save(It.IsAny <RequisicaoDeCompra>())) .Throws(new ExcecaoDeTeste("erro ao salvar requisição")); try { var alterador = new AlteradorDeRequisicaoDeCompra(_unitOfWorkMock.Object, _requisicoesDeCompraMock.Object, _processosDeCotacaoDeMaterialMock.Object); alterador.Bloquear(10); Assert.Fail("Deveria ter gerado exceção"); } catch (Exception) { CommonVerifications.VerificaRollBackDeTransacao(_unitOfWorkMock); } }