mirror of
https://github.com/zoriya/octokit.net.git
synced 2025-12-05 23:06:10 +00:00
Implement dependency review and dependency submission Co-authored-by: André Pereira <Andre.LuisPereira@Student.HTW-Berlin.de>
73 lines
2.9 KiB
C#
73 lines
2.9 KiB
C#
using NSubstitute;
|
|
using Octokit.Reactive;
|
|
using System;
|
|
using System.Threading.Tasks;
|
|
using Xunit;
|
|
|
|
namespace Octokit.Tests.Reactive
|
|
{
|
|
public class ObservableDependencyReviewClientTests
|
|
{
|
|
public class TheGetAllMethod
|
|
{
|
|
[Fact]
|
|
public async Task RequestsCorrectUrl()
|
|
{
|
|
var gitHubClient = Substitute.For<IGitHubClient>();
|
|
var client = new ObservableDependencyReviewClient(gitHubClient);
|
|
|
|
client.GetAll("fake", "repo", "base", "head");
|
|
|
|
gitHubClient.Received().DependencyGraph.DependencyReview.GetAll("fake", "repo", "base", "head");
|
|
}
|
|
|
|
[Fact]
|
|
public void RequestsCorrectUrlWithRepositoryId()
|
|
{
|
|
var gitHubClient = Substitute.For<IGitHubClient>();
|
|
var client = new ObservableDependencyReviewClient(gitHubClient);
|
|
|
|
client.GetAll(1, "base", "head");
|
|
|
|
gitHubClient.Received().DependencyGraph.DependencyReview.GetAll(1, "base", "head");
|
|
}
|
|
|
|
[Fact]
|
|
public void EnsuresNonNullArguments()
|
|
{
|
|
var client = new ObservableDependencyReviewClient(Substitute.For<IGitHubClient>());
|
|
|
|
Assert.Throws<ArgumentNullException>(() => client.GetAll(null, "name", "base", "head"));
|
|
Assert.Throws<ArgumentNullException>(() => client.GetAll("owner", null, "base", "head"));
|
|
Assert.Throws<ArgumentNullException>(() => client.GetAll("owner", "name", null, "head"));
|
|
Assert.Throws<ArgumentNullException>(() => client.GetAll("owner", "name", "base", null));
|
|
|
|
Assert.Throws<ArgumentNullException>(() => client.GetAll(1, null, "head"));
|
|
Assert.Throws<ArgumentNullException>(() => client.GetAll(1, "base", null));
|
|
}
|
|
|
|
[Fact]
|
|
public void EnsuresNonEmptyArguments()
|
|
{
|
|
var client = new ObservableDependencyReviewClient(Substitute.For<IGitHubClient>());
|
|
|
|
Assert.Throws<ArgumentException>(() => client.GetAll("", "name", "base", "head"));
|
|
Assert.Throws<ArgumentException>(() => client.GetAll("owner", "", "base", "head"));
|
|
Assert.Throws<ArgumentException>(() => client.GetAll("owner", "name", "", "head"));
|
|
Assert.Throws<ArgumentException>(() => client.GetAll("owner", "name", "base", ""));
|
|
|
|
Assert.Throws<ArgumentException>(() => client.GetAll(1, "", "head"));
|
|
Assert.Throws<ArgumentException>(() => client.GetAll(1, "base", ""));
|
|
}
|
|
}
|
|
public class TheCtor
|
|
{
|
|
[Fact]
|
|
public void EnsuresNonNullArguments()
|
|
{
|
|
Assert.Throws<ArgumentNullException>(() => new ObservableDependencyReviewClient(null));
|
|
}
|
|
}
|
|
}
|
|
}
|