public void PostsToCorrectUrl()
            {
                var gitHubClient = Substitute.For <IGitHubClient>();
                var client       = new ObservablePullRequestReviewCommentsClient(gitHubClient);

                var comment = new PullRequestReviewCommentCreate("Comment content", "qe3dsdsf6", "file.css", 7);

                client.Create("fakeOwner", "fakeRepoName", 13, comment);

                gitHubClient.PullRequest.Comment.Received().Create("fakeOwner", "fakeRepoName", 13, comment);
            }
            public async Task EnsuresArgumentsNotNull()
            {
                var gitHubClient = Substitute.For <IGitHubClient>();
                var client       = new ObservablePullRequestReviewCommentsClient(gitHubClient);

                string body     = "Comment content";
                string commitId = "qe3dsdsf6";
                string path     = "file.css";
                int    position = 7;

                var comment = new PullRequestReviewCommentCreate(body, commitId, path, position);

                await AssertEx.Throws <ArgumentNullException>(async() => await client.Create(null, "name", 1, comment));

                await AssertEx.Throws <ArgumentException>(async() => await client.Create("", "name", 1, comment));

                await AssertEx.Throws <ArgumentNullException>(async() => await client.Create("owner", null, 1, comment));

                await AssertEx.Throws <ArgumentException>(async() => await client.Create("owner", "", 1, comment));

                await AssertEx.Throws <ArgumentNullException>(async() => await client.Create("owner", "name", 1, null));
            }