private PullRequestsDetailViewModel CreateSutWithData(
            long id,
            GitPullRequest pullRequest,
            ConnectionData connectionData
            )
        {
            IEnumerable <GitCommit> commits = new List <GitCommit>()
            {
                new GitCommit()
            };
            IEnumerable <GitComment> comments = new List <GitComment>()
            {
                new GitComment()
            };
            IEnumerable <FileDiff> filesDiff = new List <FileDiff>()
            {
                new FileDiff()
            };

            _userInfoService.Stub(x => x.ConnectionData).Return(connectionData);
            _userInfoService.Stub(x => x.CurrentTheme).Return(Theme.Light);
            _gitClientService.Expect(x => x.GetPullRequest(id)).Return(pullRequest.FromTaskAsync());
            _gitClientService.Expect(x => x.GetPullRequestComments(id)).Return(comments.FromTaskAsync());
            _gitClientService.Expect(x => x.GetPullRequestCommits(id)).Return(commits.FromTaskAsync());
            _gitClientService.Expect(x => x.GetPullRequestDiff(id)).Return(filesDiff.FromTaskAsync());

            _pullRequestDiffViewModel.Expect(x => x.AddFileDiffs(filesDiff));
            _pullRequestDiffViewModel.Expect(x => x.UpdateComments(id)).Return(comments.FromTaskAsync());

            return(CreateSut());
        }
Esempio n. 2
0
        private PullRequestsDetailViewModel CreateSutWithData(
            long id,
            GitPullRequest pullRequest,
            ConnectionData connectionData
            )
        {
            IEnumerable <GitCommit> commits = new List <GitCommit>()
            {
                new GitCommit()
            };
            IEnumerable <GitComment> comments = new List <GitComment>()
            {
                new GitComment()
            };
            IEnumerable <ICommentTree> commentTree = new List <ICommentTree>()
            {
                new CommentTree()
            };
            IEnumerable <ITreeFile> filesTree = new List <ITreeFile>()
            {
                new TreeDirectory("root")
            };
            IEnumerable <FileDiff> filesDiff = new List <FileDiff>()
            {
                new FileDiff()
            };

            _userInfoService.Stub(x => x.ConnectionData).Return(connectionData);
            _userInfoService.Stub(x => x.CurrentTheme).Return(Theme.Light);
            _gitClientService.Expect(x => x.GetPullRequest(id)).Return(pullRequest.FromTaskAsync());
            _gitClientService.Expect(x => x.GetPullRequestComments(id)).Return(comments.FromTaskAsync());
            _gitClientService.Expect(x => x.GetPullRequestCommits(id)).Return(commits.FromTaskAsync());
            _gitClientService.Expect(x => x.GetPullRequestDiff(id)).Return(filesDiff.FromTaskAsync());

            _treeStructureGenerator.Expect(x => x.CreateFileTree(filesDiff)).Return(filesTree);
            _treeStructureGenerator.Expect(x => x.CreateCommentTree(Arg <IEnumerable <GitComment> > .Is.Anything, Arg <Theme> .Is.Anything, Arg <char> .Is.Anything))
            .Return(commentTree);

            return(CreateSut());
        }
        public void Initialize_TeamsLoadedCorrectly_ShouldAssignTeamNamesAndCurrentUserToViewModel()
        {
            IEnumerable <GitTeam> teams = new List <GitTeam>()
            {
                new GitTeam()
                {
                    Name = "TeamName"
                }
            };
            var connectionData = new ConnectionData()
            {
                UserName = "******", IsLoggedIn = true
            };

            _gitClientService.Expect(x => x.GetTeams()).Return(teams.FromTaskAsync());
            _userInfoService.Stub(x => x.ConnectionData).Return(connectionData);

            _sut.Initialize();

            CollectionAssert.AreEqual(new[] { "UserName", "TeamName" }, _sut.Owners);
            Assert.AreEqual("UserName", _sut.SelectedOwner);
        }