public async Task GetPullRequestCommits_ShouldCallCorrectUrlAndGetResult()
        {
            var responseJson = Utilities.LoadFile(Paths.GetStandardDataPath("GetPullRequestCommitsResponse.json"));
            var responseData = new NewtonsoftJsonSerializer().Deserialize <IteratorBasedPage <Commit> >(responseJson);

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

            var resultData = (await _sut.GetPullRequestCommits("reponame", "owner", 1)).ToList();

            Assert.AreEqual(1, result.CallCount);

            var args = result.Args[0];

            Assert.Multiple(() =>
            {
                Assert.AreEqual("repositories/owner/reponame/pullrequests/1/commits", args.arg1);
                Assert.AreEqual(50, args.arg2);
                Assert.IsNull(args.arg3);

                Assert.AreEqual(responseData.Values.Count, resultData.Count);

                var firstCommit = resultData.First();

                Assert.AreEqual("https://bitbucket.org/account/mistyku/avatar/32/", firstCommit.Author.User.Links.Avatar.Href);
                Assert.AreEqual("http://url.com/owner/reponame/commits/b6988a77079d7f96127c085b5c34077d24e4f096", firstCommit.CommitHref);
                Assert.AreEqual("b6988a77079d7f96127c085b5c34077d24e4f096", firstCommit.Hash);
                Assert.AreEqual("2017-04-07T20:10:54+00:00", firstCommit.Date);
                Assert.AreEqual("short message", firstCommit.Message);
            });
        }