Ejemplo n.º 1
0
        public void CriarSolicitacaoDeFornecedorComFluxo()
        {
            var         webForLink          = new Aplicacao("WebForLink", "Cadastro De Fornecedores");
            var         samarco             = new ClienteAncora("Samarco");
            var         nelson              = new Usuario("nelson", webForLink, samarco);
            TipoEmpresa pessoaJuridica      = new EmpressaPessoaJuridica();
            Empresa     sorteq              = new Fornecedor("Sorteq", "12345678900", pessoaJuridica);
            Solicitacao solicitacaoCadastro = new SolicitacaoCadastro(nelson, sorteq);

            Assert.IsNull(solicitacaoCadastro.Fluxo);

            var cadastro = new Fluxo(new FluxoCriacao(), samarco, pessoaJuridica);
            var a        = new Etapa("A");

            cadastro.AdicionarPassos(a, new Passo("A.1"), new Passo("A.2"));
            cadastro.AdicionarPassos(new Etapa("B"), new Passo("B.1"));
            cadastro.AdicionarPassos(new Etapa("C"), new Passo("C.1"), new Passo("C.2"), new Passo("C.3"));

            solicitacaoCadastro.SetFluxo(cadastro);

            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, a);
            cadastro.AprovarPasso(new Passo("A.2"));

            //var cadastroDeFornecedor = new Fluxo(cadastroFornecedor, _samarco, _pessoaJuridica);
            //var cadastroFornecedor = new TipoFluxo("Cadastro de Fornecedor");
            //solicitacaoCadastro.Tipo.SetFluxo(cadastroDeFornecedor);
            //cadastroDeFornecedor.AdicionarEtapas(new Etapa("Solicitacao"), new Etapa("MDA"), new Etapa("Conclusão"));
            //Assert.AreEqual(cadastroDeFornecedor.EtapaAtual.Nome, "Solicitacao");
            //Assert.AreEqual(solicitacaoCadastro.Tipo.Fluxo.EtapaAtual.Nome, "Solicitacao");
        }
Ejemplo n.º 2
0
        public void CriarSolicitacaoDeFornecedorComFluxo()
        {
            TipoEmpresa pessoaJuridica      = new EmpresaPessoaJuridica();
            Empresa     sorteq              = new Fornecedor("Sorteq", "12345678900", pessoaJuridica);
            Solicitacao solicitacaoCadastro = new SolicitacaoCadastro(_nelson, sorteq);

            Assert.IsNull(solicitacaoCadastro.Fluxo);

            var cadastro = new Fluxo(new FluxoCriacao(), _samarco, pessoaJuridica);
            var a        = new Etapa("A");
            var b        = new Etapa("B");
            var c        = new Etapa("C");

            cadastro.AdicionarPassos(a, new Passo("A.1"), new Passo("A.2"));
            cadastro.AdicionarPassos(b, new Passo("B.1"));
            cadastro.AdicionarPassos(c, new Passo("C.1"), new Passo("C.2"), new Passo("C.3"));

            solicitacaoCadastro.SetFluxo(cadastro);

            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, a);
            cadastro.AprovarPasso(new Passo("A.2"));
            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, a);
            cadastro.AprovarPasso(new Passo("A.1"));
            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, b);
            //---
            cadastro.AprovarPasso(new Passo("B.1"));
            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, c);
            //---
            cadastro.AprovarPasso(new Passo("C.3"));
            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, c);
            cadastro.AprovarPasso(new Passo("C.1"));
            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, c);
            cadastro.ReprovarPasso(new Passo("C.1"));
            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, c);
            cadastro.AprovarPasso(new Passo("C.1"));
            Assert.AreEqual(solicitacaoCadastro.EtapaAtual, c);
            cadastro.AprovarPasso(new Passo("C.2"));
            Assert.IsNull(solicitacaoCadastro.EtapaAtual);


            //var cadastroDeFornecedor = new Fluxo(cadastroFornecedor, _samarco, _pessoaJuridica);
            //var cadastroFornecedor = new TipoFluxo("Cadastro de Fornecedor");
            //solicitacaoCadastro.Tipo.SetFluxo(cadastroDeFornecedor);
            //cadastroDeFornecedor.AdicionarEtapas(new Etapa("Solicitacao"), new Etapa("MDA"), new Etapa("Conclusão"));
            //Assert.AreEqual(cadastroDeFornecedor.EtapaAtual.Nome, "Solicitacao");
            //Assert.AreEqual(solicitacaoCadastro.Tipo.Fluxo.EtapaAtual.Nome, "Solicitacao");
        }