mirror of
https://github.com/zoriya/octokit.net.git
synced 2026-06-05 03:30:34 +00:00
move automation credential to test helper
This is in preparation for adding much more to this test helper.
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
using System;
|
||||
|
||||
namespace Octokit.Tests.Integration
|
||||
{
|
||||
public static class Helper
|
||||
{
|
||||
static readonly Lazy<Credentials> _credentialsThunk = new Lazy<Credentials>(() =>
|
||||
{
|
||||
var githubUsername = Environment.GetEnvironmentVariable("OCTOKIT_GITHUBUSERNAME");
|
||||
var githubPassword = Environment.GetEnvironmentVariable("OCTOKIT_GITHUBPASSWORD");
|
||||
|
||||
if (githubUsername == null || githubPassword == null)
|
||||
return null;
|
||||
|
||||
return new Credentials(githubUsername, githubPassword);
|
||||
});
|
||||
|
||||
public static Credentials Credentials { get { return _credentialsThunk.Value; }}
|
||||
|
||||
public static string MakeNameWithTimestamp(string name)
|
||||
{
|
||||
return string.Concat(name, "-", DateTime.UtcNow.ToString("yyyyMMddhhmmssfff"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,7 +8,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
protected override IEnumerable<ITestCommand> EnumerateTestCommands(IMethodInfo testMethod)
|
||||
{
|
||||
if (AutomationSettings.Current.GitHubCredentials == null)
|
||||
if (Helper.Credentials == null)
|
||||
yield return new SkipCommand(testMethod, MethodUtility.GetDisplayName(testMethod), "Automation settings not configured. Please set the OCTOKIT_GITHUBUSERNAME and OCTOKIT_GITHUBPASSWORD environment variables to a GitHub test account (i.e, DO NOT USE A \"REAL\" ACCOUNT).");
|
||||
else
|
||||
yield return new FactCommand(testMethod);
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var emojis = await github.Miscellaneous.GetEmojis();
|
||||
@@ -28,7 +28,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var result = await github.Miscellaneous.RenderRawMarkdown("This is a **test**");
|
||||
|
||||
@@ -55,12 +55,12 @@
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AutomationSettings.cs" />
|
||||
<Compile Include="IntegrationTestAttribute.cs" />
|
||||
<Compile Include="MiscellaneousClientTests.cs" />
|
||||
<Compile Include="ReleasesClientTests.cs" />
|
||||
<Compile Include="RepositoriesClientTests.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Helper.cs" />
|
||||
<Compile Include="UsersClientTests.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -13,7 +13,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var releases = await github.Release.GetAll("git-tfs", "git-tfs");
|
||||
|
||||
@@ -12,9 +12,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("public-repo");
|
||||
var repoName = Helper.MakeNameWithTimestamp("public-repo");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository { Name = repoName });
|
||||
|
||||
@@ -37,9 +37,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("private-repo");
|
||||
var repoName = Helper.MakeNameWithTimestamp("private-repo");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -57,9 +57,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-without-downloads");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-without-downloads");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -77,9 +77,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-without-issues");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-without-issues");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -97,9 +97,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-without-wiki");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-without-wiki");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -117,9 +117,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-with-description");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-with-description");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -137,9 +137,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-with-homepage");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-with-homepage");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -157,9 +157,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-with-autoinit");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-with-autoinit");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -178,9 +178,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-with-gitignore");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-with-gitignore");
|
||||
|
||||
var createdRepository = await github.Repository.Create(new NewRepository
|
||||
{
|
||||
@@ -203,9 +203,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("public-org-repo");
|
||||
var repoName = Helper.MakeNameWithTimestamp("public-org-repo");
|
||||
var orgLogin = github.Credentials.Login + "-org";
|
||||
|
||||
// TODO: Create the org as part of the test
|
||||
@@ -235,9 +235,9 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
var repoName = AutomationSettings.MakeNameWithTimestamp("repo-to-delete");
|
||||
var repoName = Helper.MakeNameWithTimestamp("repo-to-delete");
|
||||
await github.Repository.Create(new NewRepository { Name = repoName });
|
||||
|
||||
Assert.DoesNotThrow(async () => { await github.Repository.Delete(github.Credentials.Login, repoName); });
|
||||
@@ -251,7 +251,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var repository = await github.Repository.Get("haacked", "seegit");
|
||||
@@ -266,7 +266,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var repository = await github.Repository.Get("haacked", "libgit2sharp");
|
||||
@@ -283,7 +283,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var repositories = await github.Repository.GetAllForOrg("github");
|
||||
@@ -299,7 +299,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
// TODO: Change this to request github/Octokit.net once we make this OSS.
|
||||
@@ -315,7 +315,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
// TODO: Change this to request github/Octokit.net once we make this OSS.
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
// Get a user by username
|
||||
@@ -40,7 +40,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
public async Task<Credentials> GetCredentials()
|
||||
{
|
||||
return await Observable.Return(AutomationSettings.Current.GitHubCredentials);
|
||||
return await Observable.Return(Helper.Credentials);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -52,12 +52,12 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var user = await github.User.Current();
|
||||
|
||||
Assert.Equal(AutomationSettings.Current.GitHubUsername, user.Login);
|
||||
Assert.Equal(Helper.Credentials.Login, user.Login);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@ namespace Octokit.Tests.Integration
|
||||
var github = new GitHubClient("Octokit Test Runner");
|
||||
var userUpdate = new UserUpdate
|
||||
{
|
||||
Name = AutomationSettings.Current.GitHubUsername,
|
||||
Name = Helper.Credentials.Login,
|
||||
Bio = "UPDATED BIO"
|
||||
};
|
||||
|
||||
@@ -83,11 +83,11 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Octokit Test Runner")
|
||||
{
|
||||
Credentials = new Credentials(AutomationSettings.Current.GitHubUsername, "bad-password")
|
||||
Credentials = new Credentials(Helper.Credentials.Login, "bad-password")
|
||||
};
|
||||
var userUpdate = new UserUpdate
|
||||
{
|
||||
Name = AutomationSettings.Current.GitHubUsername,
|
||||
Name = Helper.Credentials.Login,
|
||||
Bio = "UPDATED BIO"
|
||||
};
|
||||
|
||||
@@ -103,7 +103,7 @@ namespace Octokit.Tests.Integration
|
||||
{
|
||||
var github = new GitHubClient("Test Runner User Agent")
|
||||
{
|
||||
Credentials = AutomationSettings.Current.GitHubCredentials
|
||||
Credentials = Helper.Credentials
|
||||
};
|
||||
|
||||
var emails = await github.User.GetEmails();
|
||||
|
||||
Reference in New Issue
Block a user