mirror of
https://github.com/zoriya/octokit.net.git
synced 2025-12-05 23:06:10 +00:00
* Fix xUnit Warnings * Fix * Fix formatting in AsyncPaginationExtensionGenerator.cs --------- Co-authored-by: Keegan Campbell <me@kfcampbell.com>
106 lines
4.0 KiB
C#
106 lines
4.0 KiB
C#
using System;
|
|
using System.Reactive.Linq;
|
|
using System.Threading.Tasks;
|
|
using Octokit;
|
|
using Octokit.Reactive;
|
|
using Octokit.Tests.Integration;
|
|
using Xunit;
|
|
|
|
public class ObservableRespositoryDeployKeysClientTests : IDisposable
|
|
{
|
|
const string _key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDB8IE5+RppLpeW+6lqo0fpfvMunKg6W4bhYCfVJIOYbpKoHP95nTUMZPBT++9NLeB4/YsuNTCrrpnpjc4f2IVpGvloRiVXjAzoJk9QIL6uzn1zRFdvaxSJ3Urhe9LcLHcIgccgZgSdWGzaZI3xtMvGC4diwWNsPjvVc/RyDM/MPqAim0X5XVOQwEFsSsUSraezJ+VgYMYzLYBcKWW0B86HVVhL4ZtmcY/RN2544bljnzw2M3aQvXNPTvkuiUoqLOI+5/qzZ8PfkruO55YtweEd0lkY6oZvrBPMD6dLODEqMHb4tD6htx60wSipNqjPwpOMpzp0Bk3G909unVXi6Fw5";
|
|
const string _keyTitle = "octokit@github";
|
|
readonly ObservableRepositoryDeployKeysClient _client;
|
|
readonly Repository _repository;
|
|
readonly string _owner;
|
|
|
|
public ObservableRespositoryDeployKeysClientTests()
|
|
{
|
|
var github = Helper.GetAuthenticatedClient();
|
|
|
|
_client = new ObservableRepositoryDeployKeysClient(github);
|
|
var repoName = Helper.MakeNameWithTimestamp("public-repo");
|
|
var result = github.Repository.Create(new NewRepository(repoName) { AutoInit = true }).Result;
|
|
_repository = result;
|
|
_owner = _repository.Owner.Login;
|
|
}
|
|
|
|
[IntegrationTest(Skip = "see https://github.com/octokit/octokit.net/issues/533 for investigating this failing test")]
|
|
public async Task CanCreateADeployKey()
|
|
{
|
|
var deployKey = new NewDeployKey
|
|
{
|
|
Key = _key,
|
|
Title = _keyTitle
|
|
};
|
|
|
|
var observable = _client.Create(_owner, _repository.Name, deployKey);
|
|
var createdDeployKey = await observable;
|
|
|
|
Assert.NotNull(createdDeployKey);
|
|
Assert.Equal(_key, createdDeployKey.Key);
|
|
Assert.Equal(_keyTitle, createdDeployKey.Title);
|
|
}
|
|
|
|
[IntegrationTest(Skip = "See https://github.com/octokit/octokit.net/issues/1003 for investigating this failing test")]
|
|
public async Task CanRetrieveAllDeployKeys()
|
|
{
|
|
var deployKeys = await _client.GetAll(_owner, _repository.Name).ToList();
|
|
Assert.Empty(deployKeys);
|
|
|
|
var deployKey = new NewDeployKey
|
|
{
|
|
Key = _key,
|
|
Title = _keyTitle
|
|
};
|
|
await _client.Create(_owner, _repository.Name, deployKey);
|
|
|
|
deployKeys = await _client.GetAll(_owner, _repository.Name).ToList();
|
|
Assert.Single(deployKeys);
|
|
Assert.Equal(_key, deployKeys[0].Key);
|
|
Assert.Equal(_keyTitle, deployKeys[0].Title);
|
|
}
|
|
|
|
[IntegrationTest(Skip = "see https://github.com/octokit/octokit.net/issues/533 for investigating this failing test")]
|
|
public async Task CanRetrieveADeployKey()
|
|
{
|
|
var newDeployKey = new NewDeployKey
|
|
{
|
|
Key = _key,
|
|
Title = _keyTitle
|
|
};
|
|
|
|
var createdDeployKey = await _client.Create(_owner, _repository.Name, newDeployKey);
|
|
|
|
var deployKey = await _client.Get(_owner, _repository.Name, createdDeployKey.Id);
|
|
Assert.NotNull(deployKey);
|
|
Assert.Equal(createdDeployKey.Id, deployKey.Id);
|
|
Assert.Equal(_key, deployKey.Key);
|
|
Assert.Equal(_keyTitle, deployKey.Title);
|
|
}
|
|
|
|
[IntegrationTest(Skip = "see https://github.com/octokit/octokit.net/issues/533 for investigating this failing test")]
|
|
public async Task CanRemoveADeployKey()
|
|
{
|
|
var newDeployKey = new NewDeployKey
|
|
{
|
|
Key = _key,
|
|
Title = _keyTitle
|
|
};
|
|
await _client.Create(_owner, _repository.Name, newDeployKey);
|
|
|
|
var deployKeys = await _client.GetAll(_owner, _repository.Name).ToList();
|
|
Assert.Single(deployKeys);
|
|
Assert.Equal(_key, deployKeys[0].Key);
|
|
Assert.Equal(_keyTitle, deployKeys[0].Title);
|
|
|
|
await _client.Delete(_owner, _repository.Name, deployKeys[0].Id);
|
|
deployKeys = await _client.GetAll(_owner, _repository.Name).ToList();
|
|
Assert.Empty(deployKeys);
|
|
}
|
|
|
|
public void Dispose()
|
|
{
|
|
Helper.DeleteRepo(Helper.GetAuthenticatedClient().Connection, _repository);
|
|
}
|
|
} |