public void CallsIntoClient() { var gitHubClient = Substitute.For<IGitHubClient>(); var releasesClient = new ObservableReleasesClient(gitHubClient); var data = new ReleaseUpdate("fake-tag"); releasesClient.Create("fake", "repo", data); gitHubClient.Release.Received(1).Create("fake", "repo", data); }
public void EnsuresArgumentsNotNull() { var releasesClient = new ObservableReleasesClient(Substitute.For<IGitHubClient>()); var data = new NewRelease("fake-tag"); Assert.Throws<ArgumentNullException>(() => new NewRelease(null)); Assert.Throws<ArgumentNullException>(() => releasesClient.Create(null, "name", data)); Assert.Throws<ArgumentNullException>(() => releasesClient.Create("owner", null, data)); Assert.Throws<ArgumentNullException>(() => releasesClient.Create("owner", "name", null)); }
public void RequestsTheCorrectUrlWithRepositoryId() { var gitHubClient = Substitute.For<IGitHubClient>(); var releasesClient = new ObservableReleasesClient(gitHubClient); var data = new NewRelease("fake-tag"); releasesClient.Create(1, data); gitHubClient.Repository.Release.Received(1).Create(1, data); }