public async Task <IActionResult> Index(ReleaseNotesViewModel model) { if (!ModelState.IsValid) { return(View("Index", model)); } string githubToken = model.PatToken; string owner = model.RepositoryOwner; string repo = model.RepositoryName; string from = model.From; string to = model.To; string breaking = model.BreakingLabel ?? "breaking"; var githubCreds = new Credentials(githubToken); var githubClient = new GitHubClient(new ProductHeaderValue("GithubReleaseNotesGenerator")) { Credentials = githubCreds }; var releaseNotes = new ReleaseNotes(githubClient, logger, breaking); model.RawNotes = await releaseNotes.GetReleaseNotesAsync(owner, repo, from, to, 10).ConfigureAwait(false); model.FormattedNotes = new HtmlString(Markdown.ToHtml(model.RawNotes)); return(View("Index", model)); }
public void TestGetReleaseNotes() { var viewModel = new ReleaseNotesViewModel(releaseNotesServiceMock.Object); var result = viewModel.ReleaseNotes.Result; while (viewModel.Working) { } releaseNotesServiceMock.Verify(r => r.GetReleaseNotesAsync()); Assert.IsInstanceOfType(viewModel.ReleaseNotes.Result, typeof(IEnumerable <ReleaseNote>)); }
public ReleaseNotesView(bool wasShown) { WasShown = wasShown; InitializeComponent(); DataContext = new ReleaseNotesViewModel(); }
public ReleaseNotesWindow(ReleaseNotesViewModel viewModel) { InitializeComponent(); DataContext = viewModel; }
public ReleaseNotesView() { InitializeComponent(); DataContext = new ReleaseNotesViewModel(); }