public IObservable <bool> Request(string owner, string name, CheckSuiteTriggerRequest request) { Ensure.ArgumentNotNullOrEmptyString(owner, nameof(owner)); Ensure.ArgumentNotNullOrEmptyString(name, nameof(name)); Ensure.ArgumentNotNull(request, nameof(request)); return(_client.Request(owner, name, request).ToObservable()); }
public async Task EnsuresNonEmptyArguments() { var gitHubClient = Substitute.For <IGitHubClient>(); var client = new ObservableCheckSuitesClient(gitHubClient); var request = new CheckSuiteTriggerRequest("123abc"); Assert.Throws <ArgumentException>(() => client.Request("", "repo", request)); Assert.Throws <ArgumentException>(() => client.Request("fake", "", request)); }
public async Task RequestsCorrectUrlWithRepositoryId() { var gitHubClient = Substitute.For <IGitHubClient>(); var client = new ObservableCheckSuitesClient(gitHubClient); var request = new CheckSuiteTriggerRequest("123abc"); client.Request(1, request); gitHubClient.Check.Suite.Received().Request(1, request); }
public async Task EnsuresNonEmptyArguments() { var connection = Substitute.For <IApiConnection>(); var client = new CheckSuitesClient(connection); var request = new CheckSuiteTriggerRequest("123abc"); await Assert.ThrowsAsync <ArgumentException>(() => client.Request("", "repo", request)); await Assert.ThrowsAsync <ArgumentException>(() => client.Request("fake", "", request)); }
public async Task RequestsCorrectUrlWithRepositoryId() { var connection = MockedIApiConnection.PostReturnsHttpStatus(HttpStatusCode.Created); var client = new CheckSuitesClient(connection); var request = new CheckSuiteTriggerRequest("123abc"); await client.Request(1, request); connection.Connection.Received().Post( Arg.Is <Uri>(u => u.ToString() == "repositories/1/check-suite-requests"), request, "application/vnd.github.antiope-preview+json"); }
public IObservable <bool> Request(long repositoryId, CheckSuiteTriggerRequest request) { Ensure.ArgumentNotNull(request, nameof(request)); return(_client.Request(repositoryId, request).ToObservable()); }