public ProcessoCotacaoMaterialControllerTests()
        {
            _consultaProcessoCotacaoMaterialMock = new Mock <IConsultaProcessoDeCotacaoDeMaterial>(MockBehavior.Strict);
            _consultaProcessoCotacaoMaterialMock.Setup(x => x.ConsultaProcesso(It.IsAny <int>()))
            .Returns(new ProcessoCotacaoMaterialCadastroVm());
            _consultaStatusProcessoCotacao = new Mock <IConsultaStatusProcessoCotacao>(MockBehavior.Strict);
            _consultaStatusProcessoCotacao.Setup(x => x.Listar()).Returns(new List <StatusProcessoCotacaoVm>());

            _controller = new ProcessoCotacaoMaterialController(_consultaProcessoCotacaoMaterialMock.Object, _consultaStatusProcessoCotacao.Object);
            CommonMocks.MockControllerUrl(_controller);
        }
        public void QuandoEstaConectadoComOPerfilFornecedorViewBagContemActionDeEdicaoEsperada()
        {
            ObjectFactory.Configure(x => x.For <UsuarioConectado>()
                                    .HybridHttpOrThreadLocalScoped()
                                    .Use(new UsuarioConectado("fornecedor", "Usuário Fornecedor", new List <Enumeradores.Perfil> {
                Enumeradores.Perfil.Fornecedor
            })));

            var controller = new ProcessoCotacaoMaterialController(_consultaProcessoCotacaoMaterialMock.Object, _consultaStatusProcessoCotacao.Object);

            CommonMocks.MockControllerUrl(controller);
            controller.Index();
            Assert.IsNotNull(controller.ViewData["ActionEdicao"]);
            Assert.AreEqual("/CotacaoMaterial/EditarCadastro", controller.ViewData["ActionEdicao"]);

            ObjectFactory.Configure(x => x.For <UsuarioConectado>()
                                    .HybridHttpOrThreadLocalScoped()
                                    .Use(new UsuarioConectado("teste", "Usuário de Teste", new List <Enumeradores.Perfil> {
                Enumeradores.Perfil.CompradorSuprimentos
            })));
        }