Exemplo n.º 1
0
 public async Task <List <ProjectInfo> > Execute(GetProjects query)
 {
     return((await _api.GetProjects())
            .OrderBy(x => x.Namespace, StringComparer.InvariantCultureIgnoreCase)
            .ThenBy(x => x.Name, StringComparer.InvariantCultureIgnoreCase)
            .ToList());
 }
Exemplo n.º 2
0
        private async void TestGetProjects_Click(object sender, EventArgs e)
        {
            Models.Projects.Project projects = null;
            try
            {
                projects = await GetProjects?.Invoke();

                StringBuilder sb = new StringBuilder();
                sb.AppendLine("Authenticated projects:\n");

                foreach (var project in projects.value)
                {
                    sb.AppendLine(project.name);
                }

                MessageBox.Show(sb.ToString());
            }
            catch
            {
                MessageBox.Show($"Unable to connect to Azure DevOps - check the event viewer", "Connection error", MessageBoxButtons.OK, MessageBoxIcon.Error);

                SetUISuccessOrFailure(false);
            }

            if (projects != null && projects.value.Count > 0)
            {
                SetUISuccessOrFailure(true);
            }
        }
        public void ShouldBeExceptionWhenRetrieveProjects()
        {
            var logger = (ListLogger)LogFactory.CreateLogger(LoggerTypes.List);

            var projectRepository = ProjectsRepositoryConfig
                                    .Instance()
                                    .NotSaveWithException()
                                    .Build();

            var azureRepository = AzureDevopsRepositoryConfig
                                  .Instance()
                                  .GetData(new Response <Project>
            {
                value = new List <Project> {
                    new Project {
                        Id             = Guid.NewGuid(),
                        Name           = "Project Name",
                        LastUpdateTime = DateTime.UtcNow,
                        Description    = "Project Test"
                    }
                }
            })
                                  .Build();

            GetProjects.Container = ContainerBuilder
                                    .Instance()
                                    .SetProjectsRepository(projectRepository)
                                    .SetAzureDevopsRepository(azureRepository)
                                    .Build();

            GetProjects.Run(null, logger).GetAwaiter().GetResult();

            Assert.Contains("Ocorreu erro na execucao", logger.Logs);
        }
Exemplo n.º 4
0
        public TestGetTotalDonated()
        {
            _projects = new List <Project>()
            {
                new Project
                {
                    Id   = 1,
                    Name = "Project 1"
                },
                new Project
                {
                    Id        = 2,
                    Name      = "Project 2",
                    Donations = new List <Donation>()
                    {
                        new Donation
                        {
                            Amount = 100
                        }
                    }
                }
            };

            _mockOfProjects = Substitute.For <IGatewayGetProjects>();
            _mockOfProjects.GetProjects().Returns(_projects);
            _mockOfProjects.GetProject(1).Returns(_projects.Single(p => p.Id == 1));
            _mockOfProjects.GetProject(2).Returns(_projects.Single(p => p.Id == 2));

            _mockOfGetTotalDonated = Substitute.For <IGatewayGetTotalDonated>();

            _getProjects     = new GetProjects(_mockOfProjects);
            _getTotalDonated = new GetTotalDonated(_mockOfGetTotalDonated);
        }
        public TestMakeADonation()
        {
            _projects = new List <Project>()
            {
                new Project
                {
                    Id   = 1,
                    Name = "Project 1"
                },
                new Project
                {
                    Id   = 2,
                    Name = "Project 2"
                }
            };

            _mockOfProjects = Substitute.For <IGatewayGetProjects>();
            _mockOfProjects.GetProjects().Returns(_projects);
            _mockOfProjects.GetProject(1).Returns(_projects.Single(p => p.Id == 1));

            _mockOfMakeADonation   = Substitute.For <IGatewayMakeADonation>();
            _mockOfGetTotalDonated = Substitute.For <IGatewayGetTotalDonated>();

            _getProjects     = new GetProjects(_mockOfProjects);
            _makeADonation   = new MakeADonation(_mockOfMakeADonation);
            _getTotalDonated = new GetTotalDonated(_mockOfGetTotalDonated);
        }
        public async Task <PaginatedItemsResult <GetProjectsItemResult> > Handle(GetProjects request, CancellationToken cancellationToken)
        {
            var projects = _dbContext.Projects
                           .AsNoTracking()
                           .OrderByDescending(x => x.CreatedDate);

            var result = await _paginationService.PaginateAsync <GetProjectsItemResult>(projects, request.PageIndex,
                                                                                        request.PageSize, cancellationToken);

            return(result);
        }
        public JsonResult GetProject(int length = 0, int draw = 0, int start = 0, search search = null, List <order> order = null)
        {
            int PageNumber            = start / length + 1;
            GetAllProjectsModel model = new GetAllProjectsModel()
            {
                PageNumber = PageNumber, PageSize = length
            };

            if (!string.IsNullOrEmpty(search.value))
            {
                model.projecttitle = search.value;
            }
            List <AllProjectsModel> GetProjects = new List <AllProjectsModel>();
            var serialized = new JavaScriptSerializer().Serialize(model);
            var client     = new HttpClient();
            var content    = new StringContent(serialized, System.Text.Encoding.UTF8, "application/json");

            client.BaseAddress = new Uri(HttpContext.Request.Url.AbsoluteUri);
            var result = client.PostAsync(BaseURL + "/api/Project/GetProjectsByStatus", content).Result;

            if (result.StatusCode == HttpStatusCode.OK)
            {
                var contents = result.Content.ReadAsStringAsync().Result;
                GetProjects = new JavaScriptSerializer().Deserialize <List <AllProjectsModel> >(contents);
            }

            var resultSet = new DataTableResultModel();

            resultSet.draw            = draw;
            resultSet.recordsTotal    = GetProjects.Count() > 0 ? GetProjects.First().TotalRecords : 0;
            resultSet.recordsFiltered = GetProjects.Count() > 0 ? GetProjects.First().TotalRecords : 0;


            foreach (var recordFromDb in GetProjects)
            {
                var columns = new List <string>();
                columns.Add(recordFromDb.TypeName);
                columns.Add(recordFromDb.ProjectTitle);
                columns.Add(string.IsNullOrEmpty(recordFromDb.StartDate) ? "NA" : DateTime.ParseExact(recordFromDb.StartDate, new[] { "yyyy-MM-dd", "yyyy/MM/dd" }, CultureInfo.InvariantCulture, DateTimeStyles.None).ToString("dd-MMM-yyyy"));
                columns.Add(string.IsNullOrEmpty(recordFromDb.EndDate) ? "NA" : DateTime.ParseExact(recordFromDb.EndDate, new[] { "yyyy-MM-dd", "yyyy/MM/dd" }, CultureInfo.InvariantCulture, DateTimeStyles.None).ToString("dd-MMM-yyyy"));
                columns.Add("<span class='label label-success'>" + recordFromDb.ProjectStatus + "</span>");
                columns.Add((string.IsNullOrEmpty(recordFromDb.ProjectUrl) ? "NA" : recordFromDb.ProjectUrl));
                columns.Add("<a href='/Project/ProjectAddendumDetails?ProjectId=" + recordFromDb.ProjectId + "'>Addendums Details</a>");
                columns.Add("<a title='edit' class='btn green-dark' href='/Project/AddUpdateProject?ProjectId=" + recordFromDb.ProjectId + "'><i class='fa fa-edit'></i></a>");
                columns.Add("<a href='/Project/UpdateProjectStatus?ProjectId=" + recordFromDb.ProjectId + "'>Update Status</a>");
                columns.Add("<a href='javascript:' onclick='confirm(" + recordFromDb.ProjectId + ")' title='Click here to Archive' style='font-size:20px'><i class='fa fa-archive'></i></a>");
                resultSet.data.Add(columns);
            }

            return(Json(resultSet, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 8
0
        private async void MainForm_Load(object sender, EventArgs e)
        {
            Models.Projects.Project projects = null;

            try
            {
                projects = await GetProjects?.Invoke();
            }
            catch
            {
                MessageBox.Show($"Unable to connect to the Azure DevOps API start up - check the event view", "Connection error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                SetUISuccessOrFailure(false);
            }

            if (projects != null && projects.value.Count > 0)
            {
                SetUISuccessOrFailure(true);
            }
        }
        public TestGetProjects()
        {
            _projects = new List <Project>()
            {
                new Project
                {
                    Id   = 1,
                    Name = "Project 1"
                },
                new Project
                {
                    Id   = 2,
                    Name = "Project 2"
                }
            };

            _mockOfProjects = Substitute.For <IGatewayGetProjects>();
            _mockOfProjects.GetProjects().Returns(_projects);
            _mockOfProjects.GetProject(1).Returns(_projects.Single(p => p.Id == 1));
            _mockOfProjects.GetProject(2).Returns(_projects.Single(p => p.Id == 2));

            _getProjects = new GetProjects(_mockOfProjects);
        }
Exemplo n.º 10
0
        public void ShouldBeRetrieveProjects()
        {
            var logger = (ListLogger)LogFactory.CreateLogger(LoggerTypes.List);

            var projectRepository = ProjectsRepositoryConfig
                                    .Instance()
                                    .Save()
                                    .Build();

            var azureRepository = AzureDevopsRepositoryConfig
                                  .Instance()
                                  .GetData(new Response <Project>
            {
                value = new List <Project> {
                    new Project {
                        Id             = Guid.NewGuid(),
                        Name           = "Project Name",
                        LastUpdateTime = DateTime.UtcNow,
                        Description    = "Project Test"
                    }
                }
            })
                                  .Build();

            GetProjects.Container = ContainerBuilder
                                    .Instance()
                                    .SetProjectsRepository(projectRepository)
                                    .SetAzureDevopsRepository(azureRepository)
                                    .Build();

            GetProjects.Run(null, logger).GetAwaiter().GetResult();

            var msg = logger.Logs.LastOrDefault();

            Assert.Contains("Projetos Capturados", msg);
        }
        public async Task <IActionResult> GetProjects([FromQuery] GetProjects query)
        {
            var result = await _mediator.Send(query);

            return(Ok(result));
        }
Exemplo n.º 12
0
        public async Task <Result <PaginatedItemsResult <GetProjectResult> > > HandleAsync(GetProjects queryModel)
        {
            var baseQuery = _dbContext.Set <Project>().AsNoTracking();

            var result = await _paginationService.PaginateAsync <GetProjectResult>
                         (
                baseQuery,
                queryModel.PageIndex,
                queryModel.PageSize
                         );

            return(Result.Ok(result));
        }
Exemplo n.º 13
0
 public void OnGet([FromServices] GetProjects getProducts)
 {
     Projects = getProducts.Do();
 }
        public async Task <IReadOnlyCollection <ProjectListItem> > HandleAsync(GetProjects query)
        {
            var projects = await projectSearcher.GetProjects(callContext.UserId);

            return(projects.Select(x => new ProjectListItem(x.Id, x.Name)).ToList());
        }
        public async Task <IActionResult> GetAll([FromQuery] GetProjects queryModel)
        {
            var result = await _bus.QueryAsync(queryModel);

            return(Ok(result));
        }