public async Task TestGetLatestRepoReleaseIsNotNull() { var api = new GitHubApiServer(new HttpClient()); var latest = await api.GetLatestRepoRelease("sobu86", "TempRepoForGitHubApiTest"); // No releases are planned for sobu86.github.io Assert.IsNotNull(latest); }
public async Task TestReleaseAsset() { var api = new GitHubApiServer(new HttpClient()); var latest = await api.GetLatestRepoRelease("sobu86", "TempRepoForGitHubApiTest"); // No releases are planned for sobu86.github.io Assert.IsNotNull(latest.Assets[0].BrowserDownloadUrl); Console.WriteLine($"Asset URL - {latest.Assets[0].BrowserDownloadUrl}"); }
public async Task TestGetRepoReleaseListNotNullForValidRepo() { var api = new GitHubApiServer(new HttpClient()); var releases = await api.GetRepoReleaseList("sobu86", "GitHubApiUtils"); Assert.IsNotNull(releases); Console.WriteLine($"GitHubApiUtils Release Count - {releases.Count}"); releases.ForEach(r => Console.WriteLine($"Release published at - {r.PublishedAt}")); }
public async Task TestGetLatestRepoReleaseFields() { var api = new GitHubApiServer(new HttpClient()); var latest = await api.GetLatestRepoRelease("sobu86", "TempRepoForGitHubApiTest"); // No releases are planned for sobu86.github.io Assert.IsNotNull(latest); Assert.IsTrue(latest.Id != 0); Assert.IsNotNull(latest.TagName); Assert.IsNotNull(latest.PublishedAt); }
public async Task TestGetRepoReleaseListContainsElements() { var api = new GitHubApiServer(new HttpClient()); var releases = await api.GetRepoReleaseList("sobu86", "TempRepoForGitHubApiTest"); Assert.IsNotNull(releases); Assert.IsTrue(releases.Count > 0); Console.WriteLine($"GitHubApiUtils Release Count - {releases.Count}"); releases.ForEach(r => Console.WriteLine($"Release published at - {r.PublishedAt}")); }
public async Task TestGetLatestRepoReleaseIsActuallyLatestInList() { var api = new GitHubApiServer(new HttpClient()); var latest = await api.GetLatestRepoRelease("sobu86", "TempRepoForGitHubApiTest"); var releases = await api.GetRepoReleaseList("sobu86", "TempRepoForGitHubApiTest"); DateTime latestInList = DateTime.MinValue; releases.ForEach(r => latestInList = (r.PublishedAt > latestInList) ? r.PublishedAt : latestInList); Assert.AreEqual(latestInList, latest.PublishedAt); Console.WriteLine($"latest release @ {latest.PublishedAt}"); }
public async Task TestInvalidRepoNameLatestReleaseThrowsException() { var api = new GitHubApiServer(new HttpClient()); bool exception = false; try { await api.GetLatestRepoRelease("sobu86", "invalid_repo"); } catch (Exception) { exception = true; } Assert.IsTrue(exception); }