public void DeletaProjetoComSucesso()
        {
            #region Inserindo um novo projeto
            string projectName     = "DeletaProjetoComSucesso";
            var    projetoCriadoDB = projectsDBSteps.InseriProjetoDB(projectName);
            #endregion

            #region Parameters
            //Resultado Esperado
            string statusCodeExpected        = "OK";
            string statusDescriptionExpected = "Project with id " + projetoCriadoDB.ProjectId + " deleted.";
            #endregion

            DeleteProjectRequest    deleteProjectRequest = new DeleteProjectRequest(projetoCriadoDB.ProjectId);
            IRestResponse <dynamic> response             = deleteProjectRequest.ExecuteRequest();

            var consultaProjetoDB = projectsDBSteps.ConsultaProjetoDB(projetoCriadoDB.ProjectId);

            Assert.Multiple(() =>
            {
                Assert.AreEqual(statusCodeExpected, response.StatusCode.ToString(), "O StatusCode não é o esperado.");
                Assert.AreEqual(statusDescriptionExpected, response.StatusDescription, "O StatusDescription não é o esperado.");
                Assert.IsNull(consultaProjetoDB, "Um registro foi encontrado no banco de dados.");
            });
        }
        public void CriandoProjeto()
        {
            #region Parameters
            int    projectId       = 0;
            string projectName     = "AutomacaoAPI_Mantis";
            int    projectStatusId = 10;
            string statusName      = "testing";
            string statusLabel     = "testing";
            string description     = "Criando um novo projeto.";
            int    enabled         = 1;
            string filePath        = "/tmp/";
            int    viewStateId     = 10;
            string viewStateName   = "public";
            string viewStateLabel  = "public";

            //Resultado esperado
            string statusCodeExpected = "Created";
            #endregion

            var response          = CreateProjectSteps.CriandoProjetoComSucesso(projectId, projectName, projectStatusId, statusName, statusLabel, description, enabled, filePath, viewStateId, viewStateName, viewStateLabel, statusCodeExpected);
            var consultaProjectDB = projectsDBSteps.ConsultaProjetoDB(response.ProjectId);

            Assert.Multiple(() =>
            {
                Assert.AreEqual(consultaProjectDB.ProjectName, response.ProjectName, projectName, "O nome do projeto não é o esperado.");
                Assert.AreEqual(consultaProjectDB.ProjectStatusId, response.ProjectStatusId, projectStatusId, "O status não é o esperado.");
                Assert.AreEqual(consultaProjectDB.Enabled, response.Enabled, enabled, "A ativação não é a esperada.");
                Assert.AreEqual(consultaProjectDB.ViewState, response.ViewState, viewStateId, "A visualização do estado não é a esperada.");
            });

            projectsDBSteps.DeletaProjetoDB(response.ProjectId);
        }
        public void AtualizandoProjetoDadosValidos()
        {
            #region Inserindo novo projeto
            string projectName     = "AtualizaProjetoDadosValidos";
            var    inseriProjetoDB = projectsDBSteps.InseriProjetoDB(projectName);
            #endregion

            #region Parameters
            int    projectId      = inseriProjetoDB.ProjectId;
            string projectNewName = "AtualizandoNomeProjeto";
            int    projectEnabled = 0;

            //Resultado Esperado
            string statusCodeExpected        = "OK";
            string statusDescriptionExpected = "Project with id " + projectId + " Updated";
            #endregion

            var response          = UpdateProjectSteps.AtualizandoUmProjetoComSucesso(projectId, projectNewName, projectEnabled, statusCodeExpected);
            var consultaProjectDB = projectsDBSteps.ConsultaProjetoDB(projectId);

            Assert.Multiple(() =>
            {
                Assert.AreEqual(consultaProjectDB.ProjectName, response.ProjectName, "O nome do projeto não foi atualizado com sucesso!");
                Assert.AreEqual(consultaProjectDB.Enabled, response.Enabled, "A ativação do projeto não foi atualizada com sucesso!");
            });

            projectsDBSteps.DeletaProjetoDB(projectId);
        }