internal static IReadOnlyList <PullRequestViewModel> ConvertToViewModel(this IReadOnlyList <PullRequest> pullRequests) { if (pullRequests == null) { return(null); } var pullRequestViewModels = new PullRequestViewModel[pullRequests.Count]; for (var i = 0; i < pullRequests.Count; i++) { pullRequestViewModels[i] = new PullRequestViewModel { AuthorName = pullRequests[i].AuthorName, CreatedDate = pullRequests[i].CreatedDate, Description = pullRequests[i].Description, HtmlUrl = pullRequests[i].HtmlUrl, LastUpdateDate = pullRequests[i].LastUpdateDate, Number = pullRequests[i].Number, Title = pullRequests[i].Title }; } return(pullRequestViewModels); }
/// <summary> /// Gets all pull request view models to display. /// </summary> /// <returns>Returns the pull request view models.</returns> public IEnumerable <PullRequestViewModel> GetPullRequestViewModels() { var pullRequests = this.QueryPullRequests(); var list = new List <PullRequestViewModel>(); foreach (var pullRequest in pullRequests) { var pr = new PullRequestViewModel { Created = pullRequest.CreationDate.ToLocalTime(), CreatedBy = pullRequest.CreatedBy.DisplayName, CreatedByProfilePicture = pullRequest.CreatedBy.GetProfilePath(), DestinationBranch = pullRequest.TargetRefName, PullRequestId = pullRequest.PullRequestId, MergeStatus = pullRequest.MergeStatus.ToString(), Repository = pullRequest.Repository.Name, SourceBranch = pullRequest.SourceRefName, Title = pullRequest.Title, BuildSucceeded = pullRequest.MergeStatus == PullRequestAsyncStatus.Succeeded, }; list.Add(pr); } return(list); }
public void TestCreated_ReturnsModelCreated() { var expectedCreatedDateTime = DateTime.UtcNow.AddDays(-30); var pullRequest = Substitute.For <IPullRequest>(); pullRequest.Created.Returns(expectedCreatedDateTime); var systemUnderTest = new PullRequestViewModel(pullRequest); Assert.That(systemUnderTest.Created, Is.EqualTo(expectedCreatedDateTime)); }
public void TestAuthorDisplayName_ReturnsModelAuthorDisplayName() { const string testAuthorDisplayName = "Test author display name"; var pullRequest = Substitute.For <IPullRequest>(); pullRequest.AuthorDisplayName.Returns(testAuthorDisplayName); var systemUnderTest = new PullRequestViewModel(pullRequest); Assert.That(systemUnderTest.Author, Is.EqualTo(testAuthorDisplayName)); }
public void TestTitle_ReturnsModelTitle() { const string testTitle = "Test pull request title"; var pullRequest = Substitute.For <IPullRequest>(); pullRequest.Title.Returns(testTitle); var systemUnderTest = new PullRequestViewModel(pullRequest); Assert.That(systemUnderTest.Title, Is.EqualTo(testTitle)); }
public void TestWebViewUri_ReturnsModelWebViewUri() { var pullRequest = Substitute.For <IPullRequest>(); var webViewUri = new Uri("https://made.up.domain"); pullRequest.WebViewUri.Returns(webViewUri); var systemUnderTest = new PullRequestViewModel(pullRequest); Assert.That(systemUnderTest.WebViewUri, Is.EqualTo(webViewUri)); }
private bool IsCompletedIn(PullRequestViewModel pullRequest, DateTime start, DateTime end) { if (!pullRequest.Completed.HasValue) { return(false); } var completed = pullRequest.Completed.Value; return(completed >= start && completed <= end); }
public void TestRepository_ReturnsModelRepositoryName() { const string testRepositoryName = "Test repository name"; var pullRequest = Substitute.For <IPullRequest>(); var repo = Substitute.For <ITfGitRepository>(); repo.Name.Returns(testRepositoryName); pullRequest.Repository.Returns(repo); var systemUnderTest = new PullRequestViewModel(pullRequest); Assert.That(systemUnderTest.Repository, Is.EqualTo(testRepositoryName)); }
public PullRequestView(string Owner, string Repo) { InitializeComponent(); pullVm = new PullRequestViewModel(Owner, Repo); BindingContext = pullVm; pullVm.GetPullRequest.Execute(null); lstPullRqt.ItemsSource = pullVm.Pulls; }
public PullRequestViewController(string user, string slug, ulong id) { Title = "Pull Request #".t() + id; ViewModel = new PullRequestViewModel(user, slug, id); Root.UnevenRows = true; _header = new HeaderView(View.Bounds.Width) { ShadowImage = false }; _split1 = new SplitElement(new SplitElement.Row { Image1 = Images.Cog, Image2 = Images.Merge }) { BackgroundColor = UIColor.White }; ViewModel.Bind(x => x.PullRequest, Render); ViewModel.BindCollection(x => x.Comments, e => Render()); }
public PullRequestView() { InitializeComponent(); ViewModel = new PullRequestViewModel(); }
public void TestId_ReturnsIdOfPullRequest(IPullRequest pullRequest) { var systemUnderTest = new PullRequestViewModel(pullRequest); Assert.That(systemUnderTest.Id, Is.EqualTo(pullRequest.Id)); }
private bool IsCreatedIn(PullRequestViewModel pullRequest, DateTime start, DateTime end) { return(pullRequest.Created >= start && pullRequest.Created <= end); }
private bool IsAbandonedPullRequest(PullRequestViewModel pullRequest) { return(pullRequest.State == PullRequestState.Abandoned); }
private bool IsCompletedPullRequest(PullRequestViewModel pullRequest) { return(pullRequest.State == PullRequestState.Completed); }
private bool IsActivePullRequest(PullRequestViewModel pullRequest) { return(pullRequest.State == PullRequestState.Active); }