mirror of
https://github.com/zoriya/octokit.net.git
synced 2026-05-23 06:48:51 +00:00
046c5a36cc
Mark client.User.Keys as [Obsolete]
80 lines
2.7 KiB
C#
80 lines
2.7 KiB
C#
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using Xunit;
|
|
using Octokit.Tests.Integration.Helpers;
|
|
|
|
namespace Octokit.Tests.Integration.Clients
|
|
{
|
|
public class UserKeysClientTests
|
|
{
|
|
[IntegrationTest]
|
|
public async Task CanGetAllForCurrentUser()
|
|
{
|
|
var github = Helper.GetAuthenticatedClient();
|
|
|
|
using (var context = await github.CreatePublicKeyContext())
|
|
{
|
|
var keys = await github.User.GitSshKey.GetAllForCurrent();
|
|
Assert.NotEmpty(keys);
|
|
|
|
var first = keys[0];
|
|
Assert.NotNull(first.Id);
|
|
Assert.NotNull(first.Key);
|
|
Assert.NotNull(first.Title);
|
|
Assert.NotNull(first.Url);
|
|
}
|
|
}
|
|
|
|
[IntegrationTest]
|
|
public async Task CanGetAllForGivenUser()
|
|
{
|
|
var github = Helper.GetAuthenticatedClient();
|
|
|
|
var keys = await github.User.GitSshKey.GetAll("shiftkey");
|
|
Assert.NotEmpty(keys);
|
|
|
|
var first = keys[0];
|
|
Assert.NotNull(first.Id);
|
|
Assert.NotNull(first.Key);
|
|
Assert.Null(first.Title);
|
|
Assert.Null(first.Url);
|
|
}
|
|
|
|
[IntegrationTest]
|
|
public async Task CanGetKeyById()
|
|
{
|
|
var github = Helper.GetAuthenticatedClient();
|
|
|
|
using (var context = await github.CreatePublicKeyContext())
|
|
{
|
|
var key = await github.User.GitSshKey.Get(context.KeyId);
|
|
|
|
Assert.Equal(key.Title, context.KeyTitle);
|
|
Assert.Equal(key.Key, context.KeyData);
|
|
}
|
|
}
|
|
|
|
[IntegrationTest]
|
|
public async Task CanCreateAndDeleteKey()
|
|
{
|
|
// Create a key
|
|
string keyTitle = "title";
|
|
string keyData = "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAjo4DqFKg8dOxiz/yjypmN1A4itU5QOStyYrfOFuTinesU/2zm9hqxJ5BctIhgtSHJ5foxkhsiBji0qrUg73Q25BThgNg8YFE8njr4EwjmqSqW13akx/zLV0GFFU0SdJ2F6rBldhi93lMnl0ex9swBqa3eLTY8C+HQGBI6MQUMw+BKp0oFkz87Kv+Pfp6lt/Uo32ejSxML1PT5hTH5n+fyl0ied+sRmPGZWmWoHB5Bc9mox7lB6I6A/ZgjtBqbEEn4HQ2/6vp4ojKfSgA4Mm7XMu0bZzX0itKjH1QWD9Lr5apV1cmZsj49Xf8SHucTtH+bq98hb8OOXEGFzplwsX2MQ==";
|
|
var github = Helper.GetAuthenticatedClient();
|
|
|
|
var key = await github.User.GitSshKey.Create(new NewPublicKey(keyTitle, keyData));
|
|
|
|
Assert.NotNull(key);
|
|
Assert.Equal(key.Title, "title");
|
|
Assert.Equal(key.Key, keyData);
|
|
|
|
// Delete key
|
|
await github.User.GitSshKey.Delete(key.Id);
|
|
|
|
// Verify key no longer exists
|
|
var keys = await github.User.GitSshKey.GetAllForCurrent();
|
|
Assert.False(keys.Any(k => k.Title == keyTitle && k.Key == keyData));
|
|
}
|
|
}
|
|
}
|