public void EnsuresNonNullArguments() { var releasesClient = new ObservableReleasesClient(Substitute.For<IGitHubClient>()); Assert.Throws<ArgumentNullException>(() => releasesClient.Get(null, "name", 1)); Assert.Throws<ArgumentException>(() => releasesClient.Get("", "name", 1)); Assert.Throws<ArgumentNullException>(() => releasesClient.Get("owner", null, 1)); Assert.Throws<ArgumentException>(() => releasesClient.Get("owner", "", 1)); }
public void CallsIntoClient() { var gitHubClient = Substitute.For<IGitHubClient>(); var client = new ObservableReleasesClient(gitHubClient); client.Get("fake", "repo", 1); gitHubClient.Repository.Release.Received(1).Get("fake", "repo", 1); }
public void RequestsTheCorrectUrl() { var gitHubClient = Substitute.For<IGitHubClient>(); var client = new ObservableReleasesClient(gitHubClient); client.Get("fake", "repo", 1); gitHubClient.Connection.GetAsync<IReadOnlyList<Release>>( new Uri("repos/fake/repo/releases/1", UriKind.Relative), null, null); }
public void RequestsTheCorrectUrlWithRepositoryId() { var gitHubClient = Substitute.For<IGitHubClient>(); var client = new ObservableReleasesClient(gitHubClient); client.Get(1, 1); gitHubClient.Repository.Release.Received(1).Get(1, 1); }