public async Task ShouldReturnMarkedBranchForPullRequestFromFork()
        {
            var repo   = Substitute.For <IRepository>();
            var config = Substitute.For <Configuration>();

            var configEntry1 = Substitute.For <ConfigurationEntry <string> >();

            configEntry1.Key.Returns("branch.pr/1-foo.ghfvs-pr");
            configEntry1.Value.Returns("1");
            var configEntry2 = Substitute.For <ConfigurationEntry <string> >();

            configEntry2.Key.Returns("branch.pr/2-bar.ghfvs-pr");
            configEntry2.Value.Returns("2");

            config.GetEnumerator().Returns(new List <ConfigurationEntry <string> >
            {
                configEntry1,
                configEntry2,
            }.GetEnumerator());

            repo.Config.Returns(config);

            var service = new PullRequestService(
                MockGitClient(),
                MockGitService(repo),
                Substitute.For <IOperatingSystem>(),
                Substitute.For <IUsageTracker>());

            var localRepo = Substitute.For <ILocalRepositoryModel>();

            var result = await service.GetLocalBranches(localRepo, CreatePullRequest(true));

            Assert.Equal("pr/1-foo", result.Name);
        }
Example #2
0
        public async Task ShouldReturnPullRequestBranchForPullRequestFromSameRepository()
        {
            var service = new PullRequestService(
                Substitute.For <IGitClient>(),
                MockGitService(),
                Substitute.For <IOperatingSystem>(),
                Substitute.For <IUsageTracker>());

            var localRepo = Substitute.For <ILocalRepositoryModel>();

            localRepo.CloneUrl.Returns(new UriString("https://github.com/foo/bar"));

            var result = await service.GetLocalBranches(localRepo, CreatePullRequest());

            Assert.Equal("source", result.Name);
        }