internal static IDevCommandsConfig AddDatabaseManager(this IDevCommandsConfig config) { config.Add("dbChanges", () => DatabaseChangeWatcher.DispatchChanges()); async Task <bool> startDatabase(bool shouldRedirect = false) { var redirect = Context.Current.Request().ToAbsoluteUri().AsUri().RemoveQueryString("Web.Test.Command").ToString(); WebTestConfig.SetRunner(); await TempDatabase.Restart(); if (shouldRedirect) { Debug.WriteLine("All done. Redirecting to: " + redirect); Context.Current.Response().Redirect(redirect); } return(shouldRedirect); } foreach (var command in new[] { "start", "run", "ran", "cancel" }) { config.Add(command, () => startDatabase()); } config.Add("restart", () => startDatabase(shouldRedirect: true), "Restart DB"); return(config); }
public override async Task <string> Run() => DatabaseChangeWatcher.DispatchChanges();