static async Task Main(string[] args) { Log.Logger = new LoggerConfiguration() .MinimumLevel.Debug() .WriteTo.Console() .WriteTo.File("c:\\temp\\logs\\renamerLog.txt", rollingInterval: RollingInterval.Day) .CreateLogger(); Log.Information("Started log on {a}", DateTime.Now.ToLongTimeString()); SetUpVT100(); string projectRoot = AppContext.BaseDirectory.Substring(0, AppContext.BaseDirectory.LastIndexOf(@"\bin")); // PrintDirectories(appRoot); var builder = new ConfigurationBuilder() .SetBasePath(projectRoot) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); // IConfigurationRoot configuration = builder.Build(); Configuration = builder.Build(); var serviceProvider = new ServiceCollection().AddHttpClient().BuildServiceProvider(); var httpClientFactory = serviceProvider.GetService <IHttpClientFactory>(); var options = new DbContextOptionsBuilder <EpisodeContext>() .UseSqlite(Configuration.GetConnectionString("connectionString")) .Options; var context = new EpisodeContext(options); TVDBRetrieverService retrieverService = new TVDBRetrieverService(httpClientFactory); TVShowService showService = new TVShowService(context); EpisodeService epService = new EpisodeService(context); LocalMediaService localService = new LocalMediaService(Configuration.GetSection("LocalMedia").GetValue <string>("directoryPath")); string tvdbInfoPath = GetTVDBInfoFilePath(); RenamePrompterConsole prompterConsole = new RenamePrompterConsole(); RenamerFacade facade = new RenamerFacade(retrieverService, showService, epService, localService, context, prompterConsole, tvdbInfoPath); MainMenu mainMenu = new MainMenu(facade, context, showService); await mainMenu.DisplayMenu(); // await DisplayMenuAndProcessUserInput(facade); // SetUpAutomapper(); // GetNewToken(httpClientFactory); // GetApiKey(); //ReadTVDBInfo(); // FindSampleShow(context); // PauseForInput(); // Console.WriteLine("Adding show"); //AddSampleShow(context); }
public void GetLoginUri_Passes() { var serviceProvider = new ServiceCollection().AddHttpClient().BuildServiceProvider(); var httpClientFactory = serviceProvider.GetService <IHttpClientFactory>(); TVDBRetrieverService service = new TVDBRetrieverService(httpClientFactory); string expectedUri = "https://api.thetvdb.com/login"; // Act var uri = service.GetLoginUri(); Assert.Equal(expectedUri, uri.AbsoluteUri); }