public void QuandoCompararQuantidadeAdquiridaComErroRetornaMensagemDeErro() { var processoDeCotacaoServiceMock = new Mock <IProcessoDeCotacaoDeMaterialService>(MockBehavior.Strict); processoDeCotacaoServiceMock.Setup(x => x.VerificarQuantidadeAdquirida(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <decimal>())) .Throws(new ExcecaoDeTeste("Erro ao comparar quantidade adquirida.")); var processoDeCotacaoController = new ProcessoDeCotacaoServiceController(processoDeCotacaoServiceMock.Object); JsonResult retorno = processoDeCotacaoController.VerificarQuantidadeAdquirida(10, 1, 1000); dynamic data = retorno.Data; PropertyDescriptorCollection props = TypeDescriptor.GetProperties(retorno.Data); Assert.IsFalse(props.Find("Sucesso", true).GetValue(data)); Assert.AreEqual("Erro ao comparar quantidade adquirida.", props.Find("Mensagem", true).GetValue(data)); }
public void QuandoCompararQuantidadeAdquiridaComSucessoRetornaResultadoDaComparacao() { var processoDeCotacaoServiceMock = new Mock <IProcessoDeCotacaoDeMaterialService>(MockBehavior.Strict); processoDeCotacaoServiceMock.Setup(x => x.VerificarQuantidadeAdquirida(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <decimal>())) .Returns(new VerificacaoDeQuantidadeAdquiridaVm { QuantidadeSolicitadaNoProcessoDeCotacao = 1000, SuperouQuantidadeSolicitada = false }); var processoDeCotacaoController = new ProcessoDeCotacaoServiceController(processoDeCotacaoServiceMock.Object); JsonResult retorno = processoDeCotacaoController.VerificarQuantidadeAdquirida(10, 1, 1000); dynamic data = retorno.Data; PropertyDescriptorCollection props = TypeDescriptor.GetProperties(retorno.Data); Assert.IsTrue(props.Find("Sucesso", true).GetValue(data)); VerificacaoDeQuantidadeAdquiridaVm verificacaoVm = props.Find("Verificacao", true).GetValue(data); Assert.IsNotNull(verificacaoVm); Assert.AreEqual(1000, verificacaoVm.QuantidadeSolicitadaNoProcessoDeCotacao); Assert.IsFalse(verificacaoVm.SuperouQuantidadeSolicitada); }