public async Task EnsuresNonNullAndNonEmptyArguments() { var connection = Substitute.For<IApiConnection>(); var client = new MigrationsClient(connection); await Assert.ThrowsAsync<ArgumentNullException>(() => client.GetAll(null)); await Assert.ThrowsAsync<ArgumentException>(() => client.GetAll("")); }
public async Task EnsuresNonNullAndNonEmptyArguments() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); await Assert.ThrowsAsync <ArgumentNullException>(() => client.Get(null, 69)); await Assert.ThrowsAsync <ArgumentException>(() => client.Get("", 69)); }
public void RequestsCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); client.UnlockRepository("fake", 69, "repo"); connection.Received().Delete( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations/69/repos/repo/lock"), Arg.Any <object>(), AcceptHeaders.MigrationsApiPreview); }
public void RequestsCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); client.UnlockRepository("fake", 69, "repo"); connection.Received().Delete( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations/69/repos/repo/lock"), Arg.Any <object>(), "application/vnd.github.wyandotte-preview+json"); }
public void RequestsCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); client.Get("fake", 69); connection.Received().Get <Migration>( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations/69"), null, "application/vnd.github.wyandotte-preview+json"); }
public void RequestsCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new MigrationsClient(connection); client.GetAll("fake"); connection.Received().Get<List<Migration>>( Arg.Is<Uri>(u => u.ToString() == "orgs/fake/migrations"), null, AcceptHeaders.MigrationsApiPreview); }
public void RequestsCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); client.GetAll("fake"); connection.Received().Get <List <Migration> >( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations"), null, AcceptHeaders.MigrationsApiPreview); }
public void RequestsCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new MigrationsClient(connection); var migrationRequest = new StartMigrationRequest(new List<string> { "fake/repo" }); client.Start("fake", migrationRequest); connection.Received().Post<Migration>( Arg.Is<Uri>(u => u.ToString() == "orgs/fake/migrations"), Arg.Any<StartMigrationRequest>(), AcceptHeaders.MigrationsApiPreview); }
public async Task EnsuresNonNullAndNonEmptyArguments() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); await Assert.ThrowsAsync <ArgumentNullException>(() => client.UnlockRepository(null, 69, "repo")); await Assert.ThrowsAsync <ArgumentException>(() => client.UnlockRepository("", 69, "repo")); await Assert.ThrowsAsync <ArgumentNullException>(() => client.UnlockRepository("fake", 69, null)); await Assert.ThrowsAsync <ArgumentException>(() => client.UnlockRepository("fake", 69, "")); }
public void RequestsCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); var migrationRequest = new StartMigrationRequest(new List <string> { "fake/repo" }); client.Start("fake", migrationRequest); connection.Received().Post <Migration>( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations"), Arg.Any <StartMigrationRequest>(), AcceptHeaders.MigrationsApiPreview); }
public void RequestsCorrectUrl() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); var migrationRequest = new StartMigrationRequest(new List <string> { "fake/repo" }); client.Start("fake", migrationRequest); connection.Received().Post <Migration>( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations"), Arg.Any <StartMigrationRequest>(), "application/vnd.github.wyandotte-preview+json"); }
public async Task EnsuresNonNullAndNonEmptyArguments() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); var migrationRequest = new StartMigrationRequest(new List <string> { "fake/repo" }); await Assert.ThrowsAsync <ArgumentNullException>( () => client.Start(null, migrationRequest)); await Assert.ThrowsAsync <ArgumentException>( () => client.Start("", migrationRequest)); await Assert.ThrowsAsync <ArgumentNullException>( () => client.Start("fake", null)); }
public void PassesRequestBody() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); var migrationRequest = new StartMigrationRequest(new List <string> { "fake/repo" }); client.Start("fake", migrationRequest); connection.Received().Post <Migration>( Arg.Any <Uri>(), Arg.Is <StartMigrationRequest>(m => m.Repositories.Equals(migrationRequest.Repositories) && m.LockRepositories == migrationRequest.LockRepositories && m.ExcludeAttachments == migrationRequest.ExcludeAttachments), "application/vnd.github.wyandotte-preview+json"); }
public void RequestsCorrectUrlApiOptions() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); var options = new ApiOptions { PageCount = 1, PageSize = 1 }; client.GetAll("fake", options); connection.Received().GetAll <Migration>( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations"), null, "application/vnd.github.wyandotte-preview+json", options); }
public void RequestsCorrectUrlApiOptions() { var connection = Substitute.For <IApiConnection>(); var client = new MigrationsClient(connection); var options = new ApiOptions { PageCount = 1, PageSize = 1 }; client.GetAll("fake", options); connection.Received().GetAll <Migration>( Arg.Is <Uri>(u => u.ToString() == "orgs/fake/migrations"), null, AcceptHeaders.MigrationsApiPreview, options); }
public void RequestsCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new MigrationsClient(connection); client.UnlockRepository("fake", 69, "repo"); connection.Received().Delete( Arg.Is<Uri>(u => u.ToString() == "orgs/fake/migrations/69/repos/repo/lock"), Arg.Any<object>(), AcceptHeaders.MigrationsApiPreview); }
public async Task EnsuresNonNullAndNonEmptyArguments() { var connection = Substitute.For<IApiConnection>(); var client = new MigrationsClient(connection); await Assert.ThrowsAsync<ArgumentNullException>(() => client.UnlockRepository(null, 69, "repo")); await Assert.ThrowsAsync<ArgumentException>(() => client.UnlockRepository("", 69, "repo")); await Assert.ThrowsAsync<ArgumentNullException>(() => client.UnlockRepository("fake", 69, null)); await Assert.ThrowsAsync<ArgumentException>(() => client.UnlockRepository("fake", 69, "")); }
public async Task EnsuresNonNullAndNonEmptyArguments() { var connection = Substitute.For<IApiConnection>(); var client = new MigrationsClient(connection); var migrationRequest = new StartMigrationRequest(new List<string> { "fake/repo" }); await Assert.ThrowsAsync<ArgumentNullException>( () => client.Start(null, migrationRequest)); await Assert.ThrowsAsync<ArgumentException>( () => client.Start("", migrationRequest)); await Assert.ThrowsAsync<ArgumentNullException>( () => client.Start("fake", null)); }
/// <summary> /// Instantiate a new GitHub Migration API client and its sub-APIs. /// </summary> /// <param name="apiConnection">An API connection.</param> public MigrationClient(IApiConnection apiConnection) : base(apiConnection) { Migrations = new MigrationsClient(apiConnection); }
public void PassesRequestBody() { var connection = Substitute.For<IApiConnection>(); var client = new MigrationsClient(connection); var migrationRequest = new StartMigrationRequest(new List<string> { "fake/repo" }); client.Start("fake", migrationRequest); connection.Received().Post<Migration>( Arg.Any<Uri>(), Arg.Is<StartMigrationRequest>(m => m.Repositories.Equals(migrationRequest.Repositories) && m.LockRepositories == migrationRequest.LockRepositories && m.ExcludeAttachments == migrationRequest.ExcludeAttachments), AcceptHeaders.MigrationsApiPreview); }
/// <summary> /// Instantiate a new GitHub Migration API client and its sub-APIs. /// </summary> /// <param name="apiConnection">An API connection.</param> public MigrationClient(IApiConnection apiConnection) : base(apiConnection) { Migrations = new MigrationsClient(apiConnection); }