Example #1
0
            public async Task EnsuresNonNullArguments()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetAll(null, "name", 1));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetAll("owner", null, 1));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetAll(null, "name", 1, ApiOptions.None));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetAll("owner", null, 1, ApiOptions.None));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetAll("owner", "name", 1, null));


                await Assert.ThrowsAsync <ArgumentException>(() => client.GetAll("", "name", 1));

                await Assert.ThrowsAsync <ArgumentException>(() => client.GetAll("owner", "", 1));

                await Assert.ThrowsAsync <ArgumentException>(() => client.GetAll("", "name", 1, ApiOptions.None));

                await Assert.ThrowsAsync <ArgumentException>(() => client.GetAll("owner", "", 1, ApiOptions.None));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.GetAll(42, 1, null));
            }
Example #2
0
            public async Task RequestsCorrectUrlWithRepositoryId()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                await client.Get(42, 7);

                connection.Received().Get <RequestedReviews>(
                    Arg.Is <Uri>(u => u.ToString() == "repositories/42/pulls/7/requested_reviewers"));
            }
Example #3
0
            public async Task RequestsCorrectUrl()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                await client.Get("owner", "name", 7);

                connection.Received().Get <RequestedReviews>(
                    Arg.Is <Uri>(u => u.ToString() == "repos/owner/name/pulls/7/requested_reviewers"));
            }
Example #4
0
            public async Task RequestsCorrectUrlWithRepositoryId()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                await client.GetAll(42, 7);

                connection.Received().GetAll <User>(
                    Arg.Is <Uri>(u => u.ToString() == "repositories/42/pulls/7/requested_reviewers"),
                    null,
                    "application/vnd.github.black-cat-preview+json");
            }
Example #5
0
            public void PostsToCorrectUrlWithRepositoryId()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);
                IReadOnlyList <string> fakeReviewers = new List <string> {
                    "zxc", "asd"
                };
                var pullRequestReviewRequest = PullRequestReviewRequest.ForReviewers(fakeReviewers);

                client.Create(42, 13, pullRequestReviewRequest);

                connection.Received().Post <PullRequest>(
                    Arg.Is <Uri>(u => u.ToString() == "repositories/42/pulls/13/requested_reviewers"),
                    pullRequestReviewRequest);
            }
Example #6
0
            public async Task PostsToCorrectUrl()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                IReadOnlyList <string> fakeReviewers = new List <string> {
                    "zxc", "asd"
                };
                var pullRequestReviewRequest = PullRequestReviewRequest.ForReviewers(fakeReviewers);

                await client.Delete("owner", "name", 13, pullRequestReviewRequest);

                connection.Received().Delete(
                    Arg.Is <Uri>(u => u.ToString() == "repos/owner/name/pulls/13/requested_reviewers"),
                    pullRequestReviewRequest);
            }
Example #7
0
            public async Task PostsToCorrectUrlWithRepositoryId()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                IReadOnlyList <string> fakeReviewers = new List <string> {
                    "zxc", "asd"
                };
                var pullRequestReviewRequest = new PullRequestReviewRequest(fakeReviewers);

                await client.Delete(43, 13, pullRequestReviewRequest);

                connection.Received().Delete(
                    Arg.Is <Uri>(u => u.ToString() == "repositories/43/pulls/13/requested_reviewers"),
                    pullRequestReviewRequest,
                    "application/vnd.github.black-cat-preview+json");
            }
Example #8
0
            public void PostsToCorrectUrl()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                IReadOnlyList <string> fakeReviewers = new List <string> {
                    "zxc", "asd"
                };
                var pullRequestReviewRequest = new PullRequestReviewRequest(fakeReviewers);

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

                connection.Connection.Received().Post <PullRequest>(
                    Arg.Is <Uri>(u => u.ToString() == "repos/fakeOwner/fakeRepoName/pulls/13/requested_reviewers"),
                    pullRequestReviewRequest,
                    "application/vnd.github.black-cat-preview+json",
                    null);
            }
Example #9
0
            public async Task RequestsCorrectUrlWithApiOptions()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                var options = new ApiOptions
                {
                    StartPage = 1,
                    PageCount = 1,
                    PageSize  = 1
                };

                await client.GetAll("owner", "name", 7, options);

                connection.Received().GetAll <User>(
                    Arg.Is <Uri>(u => u.ToString() == "repos/owner/name/pulls/7/requested_reviewers"),
                    null,
                    "application/vnd.github.black-cat-preview+json",
                    options);
            }
Example #10
0
            public async Task EnsuresNonNullArguments()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new PullRequestReviewRequestsClient(connection);

                IReadOnlyList <string> fakeReviewers = new List <string> {
                    "zxc", "asd"
                };
                var pullRequestReviewRequest = PullRequestReviewRequest.ForReviewers(fakeReviewers);

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.Create(null, "fakeRepoName", 1, pullRequestReviewRequest));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.Create("fakeOwner", null, 1, pullRequestReviewRequest));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.Create("fakeOwner", "fakeRepoName", 1, null));

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.Create(1, 1, null));

                await Assert.ThrowsAsync <ArgumentException>(() => client.Create("", "fakeRepoName", 1, pullRequestReviewRequest));

                await Assert.ThrowsAsync <ArgumentException>(() => client.Create("fakeOwner", "", 1, pullRequestReviewRequest));
            }