public async Task GetPullRequestForBranches_ShouldCallCorrectUrlAndGetResult()
        {
            var pullRequestResponseJson = Utilities.LoadFile(Paths.GetStandardDataPath("GetPullRequestForBranchesWithReviewersResponse.json"));
            var pullRequestResponseData = new NewtonsoftJsonSerializer().Deserialize <PullRequest>(pullRequestResponseJson);
            var response = MockRepository.GenerateMock <IRestResponse <PullRequest> >();

            response.Stub(x => x.Data).Return(pullRequestResponseData);

            var responseJson = Utilities.LoadFile(Paths.GetStandardDataPath("GetPullRequestForBranchesResponse.json"));
            var responseData = new NewtonsoftJsonSerializer().Deserialize <IteratorBasedPage <PullRequest> >(responseJson);

            var result = _restClient
                         .Capture()
                         .Args <string, int, QueryString, IEnumerable <PullRequest> >((s, url, limit, queryString) => s.GetAllPages <PullRequest>(url, limit, queryString), responseData.Values);

            var pullRequestResult = _restClient
                                    .Capture()
                                    .Args <IRestRequest, IRestResponse <PullRequest> >(
                (s, req) => s.ExecuteTaskAsync <PullRequest>(req), response);

            var resultData = (await _sut.GetPullRequestForBranches("reponame", "owner", "hhhhhhhhhhhhhhhh", "12"));

            Assert.AreEqual(1, pullRequestResult.CallCount);

            var args = result.Args[0];

            Assert.Multiple(() =>
            {
                Assert.AreEqual("repositories/owner/reponame/pullrequests", args.arg1);
                Assert.AreEqual(20, args.arg2);
                Assert.AreEqual(@"?q=source.branch.name = ""hhhhhhhhhhhhhhhh"" AND destination.branch.name = ""12"" AND state = ""OPEN""", args.arg3.ToString());

                Assert.AreEqual("* NEWFILE created online with Bitbucket", resultData.Description);
                Assert.AreEqual("master", resultData.Title);
                Assert.AreEqual("master", resultData.Source.Branch.Name);
                Assert.AreEqual("testbranch", resultData.Destination.Branch.Name);
                Assert.AreEqual("bitbucketvsextension", resultData.Reviewers.First().UserName);
            });
        }