public async Task CreateAsync_ItemIsAdded() { // Arrange var show = new Show() { Id = 101, Name = "abc" }; // Act using (var context = new DatabaseContext(options)) { var showRepository = new ShowRepository(context); await showRepository.CreateAsync(show); await showRepository.SaveAsync(); } // Assert using (var context = new DatabaseContext(options)) { Assert.That(await context.Shows.CountAsync(), Is.EqualTo(4)); Assert.That((await context.Shows.SingleAsync(q => q.Id == 101)).Name, Is.EqualTo("abc")); } }
public MediaCenterContext() : base("MC_SQL") { MovieRepository = new MovieRepository(this); ShowRepository = new ShowRepository(this); EpisodeRepository = new EpisodeRepository(this); UserRepository = new UserRepository(this); }
public HallHandler(IMapper mapper, HallRepository repository, SeatRepository seatRepository, ShowRepository showRepository) { _mapper = mapper; _repository = repository; _seatRepository = seatRepository; _showRepository = showRepository; }
private Person CreateSamplePerson() { var newPerson = new Person { Salutation = "", FirstName = "Jane", MiddleName = "Anne", LastName = "TestLastName", Suffix = "", DateOfBirth = new DateTime(1943, 2, 5), HairColorId = 1, EyeColorId = 1 }; var creditTypeRepo = new CreditTypeRepository(); var creditTypes = creditTypeRepo.Fetch(null).ToList(); var showRepo = new ShowRepository(); var shows = showRepo.Fetch(null).ToList(); Credit crd1 = new Credit { ShowId = shows[0].Id, CreditTypeId = creditTypes[0].Id, Character = "Henry" }; newPerson.Credits.Add(crd1); return(newPerson); }
private String AddShow(Show show) { RepoShow = new ShowRepository(); RepoShow.AddNew(show); RepoShow.DBSave(); return("movie id : " + show.MovieId + " , - Cinema id : " + show.CinemaId); }
/// <summary> /// initialize dbcontext, usermanager and repositories /// </summary> public ShowController() { ApplicationDbContext context = new ApplicationDbContext(); UserManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(context)); showRep = new ShowRepository(context); userShowRep = new UserShowRepository(context); }
public ServerImpl(EmployeeRepository uRepo, ShowRepository sRepo, ArtistRepository aRepo, BuyerRepository bRepo, TicketRepository tRepo) { userRepository = uRepo; showRepository = sRepo; artistRepository = aRepo; buyerRepository = bRepo; ticketRepository = tRepo; loggedClients = new Dictionary <String, IAppObserver>(); }
public bool Logic() { var logs = new List <Log>(); try { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Starting Checker logic", null)); var showRepo = new ShowRepository(ConnectionString); var episodeRepo = new EpisodeRepository(ConnectionString); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, "Getting enabled shows in database", null)); var showsInDatabase = showRepo.Select().Where(x => x.Enabled == true && x.Download == true).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {showsInDatabase.Count} shows in database", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, "Getting episodes in database", null)); var episodesInDatabase = episodeRepo.Select(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {episodesInDatabase.Count} episodes in database", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Looping through shows", null)); foreach (var show in showsInDatabase) { // Get total episodes and status logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, "Getting show data from source", null)); var status = GetStatus(show.Source, show.Url); // Check if current amount of episodes == total episodes and status is downloaded logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, "Getting episodes downloaded", null)); var episodesByShow = episodesInDatabase.Where(x => x.ShowId == show.Id && x.Status == EpisodeStatus.DOWNLOADED).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {episodesByShow} episodes downloaded", null)); // if yes then disable drama -> Enabled = false logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Checking if it has to be disabled", null)); if (episodesByShow.Count == status.Item1 && status.Item2) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Disabling show {show.Title}", null)); show.Enabled = false; showRepo.Update(show); } else { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"{show.Title} is still in progres", null)); } } } catch (Exception e) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.ERROR, e.Message, e.StackTrace)); } logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Finished Checker logic", null)); LogRepository.Create(logs); return(true); }
public void Initialize() { _showRepo = new ShowRepository(); _ratingRepo = new MpaaRatingRepository(); _creditTypeRepo = new CreditTypeRepository(); _personRepo = new PersonRepository(); _ratings = _ratingRepo.Fetch().ToList(); _creditTypes = _creditTypeRepo.Fetch().ToList(); _shows = _showRepo.Fetch().ToList(); }
public static CachedShowApplication CreateCachedShowApplication(MazeDbContext mazeDbContext) { var configuration = TestUtility.GetIConfigurationRoot(TestContext.CurrentContext.TestDirectory); var mazeCachedServiceConfig = configuration.GetSection("MazeCacheConfig"); var mazeCachedServiceConfigOption = Options.Create <MazeCacheConfig>(mazeCachedServiceConfig.Get <MazeCacheConfig>()); var decorated = CreateShowApplication(); var showRepository = new ShowRepository(mazeDbContext); return(new CachedShowApplication(showRepository, mazeCachedServiceConfigOption, decorated)); }
public void Initialize() { _showRepo = new ShowRepository(); _genreRepo = new GenreRepository(); _creditTypeRepo = new CreditTypeRepository(); _personRepo = new PersonRepository(); _genres = _genreRepo.Fetch().ToList(); _creditTypes = _creditTypeRepo.Fetch().ToList(); _people = _personRepo.Fetch().ToList(); }
public ShowControllerTests() { var ctx = TestDbUtilities <ShowContext> .BuildInMemoryContext(); var repo = new ShowRepository(ctx); var configuration = new MapperConfiguration(cfg => cfg.AddProfile <ShowMaps>()); var mapper = new Mapper(configuration); _controller = new ShowsController(repo, mapper); }
public void CreateAsync_ShowIsNull() { // Given Show show = null; using (var context = new DatabaseContext(options)) { var showRepository = new ShowRepository(context); Assert.ThrowsAsync <ArgumentNullException>(async() => await showRepository.CreateAsync(show)); } }
public void TestManagerShows() { var show = new Show() { Id = MockIds.GetNextId(), Name = "Barac live set" }; var managerUserController = new ManagerUserController(MockFactory.RandomManager()); managerUserController.AddShow(show); Assert.AreEqual(show.Name, ShowRepository.GetTodaysShow().Name); }
public void Cleanup() { var _showRepo = new ShowRepository(); var list = _showRepo.Fetch(null).ToList(); var toDelete = list.Where(o => o.Title == "TestTitle" || o.Title == "XYZ"); foreach (var item in toDelete) { item.IsMarkedForDeletion = true; _showRepo.Persist(item); } }
public bool Logic() { var logs = new List <Log>(); try { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Starting Downloader logic", null)); var showRepo = new ShowRepository(ConnectionString); var episodeRepo = new EpisodeRepository(ConnectionString); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Getting shows from database", null)); var showsInDatabase = showRepo.Select().Where(x => x.Download == true && x.Enabled == true).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {showsInDatabase.Count} shows in database", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Getting episodes from database", null)); var episodesInDatabase = episodeRepo.Select(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {episodesInDatabase.Count} in database", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Looping through shows that are enabled to download", null)); foreach (var show in showsInDatabase) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Checking episodes scraped", null)); var episodesByShow = episodesInDatabase.Where(x => x.ShowId == show.Id && x.Status == EpisodeStatus.SCRAPED).OrderBy(y => y.Filename).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {episodesByShow.Count} to download", null)); foreach (var episode in episodesByShow) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Downloading {episode.Filename}", null)); var path = System.IO.Path.Combine(Path, show.Title); episode.Status = DownloadHelpers.DownloadFile(episode.Url, path, episode.Filename) ? EpisodeStatus.DOWNLOADED : EpisodeStatus.FAILED; var downloadMessage = episode.Status == EpisodeStatus.DOWNLOADED ? "successfully" : "failed"; logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Downladed {downloadMessage}", null)); episodeRepo.Update(episode); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Updated show", null)); } } } catch (Exception e) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, e.Message, e.StackTrace)); } logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Finished Downloader logic", null)); LogRepository.Create(logs); return(true); }
public void ShowRepository_InsertUpdateDelete_Works() { // Arrange var repo = new ShowRepository(); var testItem = new Show { Title = "TestTitle", LengthInMinutes = 100, MpaaRatingId = 3, TheatricalReleaseDate = new DateTime(2000,1,31), DvdReleaseDate = new DateTime(2000, 4, 1) }; // Act - Insert var insertedItem = repo.Persist(testItem); var newId = insertedItem.ShowId; // Assert for Insert Assert.IsTrue(newId > 0); var existingItem = repo.Fetch(newId).Single(); Assert.IsTrue(existingItem.Title== "TestTitle"); Assert.IsTrue(existingItem.LengthInMinutes == 100); Assert.IsTrue(existingItem.TheatricalReleaseDate == new DateTime(2000,1,31)); Assert.IsTrue(existingItem.DvdReleaseDate == new DateTime(2000, 4, 1)); // Act - Update existingItem.Title = "TestTitle1"; existingItem.LengthInMinutes = 101; existingItem.MpaaRatingId = 4; existingItem.TheatricalReleaseDate = new DateTime(2001, 1, 31); existingItem.DvdReleaseDate = new DateTime(2001, 4, 1); repo.Persist(existingItem); // Assert for Update var updatedItem = repo.Fetch(newId).Single(); Assert.IsTrue(updatedItem.Title== "TestTitle1"); Assert.IsTrue(updatedItem.LengthInMinutes == 101); Assert.IsTrue(updatedItem.TheatricalReleaseDate == new DateTime(2001,1,31)); Assert.IsTrue(updatedItem.DvdReleaseDate == new DateTime(2001, 4, 1)); // Act - Delete updatedItem.IsMarkedForDeletion = true; var deletedItem = repo.Persist(updatedItem); // Assert for Delete Assert.IsNull(deletedItem); var emptyResult = repo.Fetch(newId); Assert.IsFalse(emptyResult.Any()); }
public void ShowRepository_FetchAll_ReturnsData() { // Arrange var repo = new ShowRepository(); // Act var results = repo.Fetch(); // Assert Assert.IsTrue(results != null); Assert.IsTrue(results.Any()); Assert.IsTrue(results.Count() == 2); Assert.IsTrue(results.ToList()[1].Title == "Philomena"); }
public bool Logic() { var logs = new List <Log>(); try { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Starting Metadata logic", null)); var showRepo = new ShowRepository(ConnectionString); var metadataRepo = new MetadataRepository(ConnectionString); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, "Getting shows in database", null)); var showsInDatabase = showRepo.Select(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {showsInDatabase.Count} shows", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, "Getting metadatas in database", null)); var metadataInDatabase = metadataRepo.Select(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {metadataInDatabase.Count} shows", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Getting shows that does not have metadata", null)); //2433 var showsWithoutMetadata = (from shows in showsInDatabase join metadata in metadataInDatabase on shows.Id equals metadata.ShowId into md from metadata in md.DefaultIfEmpty() select new { shows }).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Found {showsWithoutMetadata.Count} shows without metadata", null)); foreach (var show in showsWithoutMetadata) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Looking for {show.shows.Title} metadata", null)); var metadata = GetMetadata(show.shows.Source, show.shows.Url); var newMetadata = new Data.Model.Metadata(show.shows.Id, metadata.ImageUrl, metadata.Plot, metadata.Cast, metadata.Language); metadataRepo.Create(newMetadata); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Metadata added successfully", null)); } } catch (Exception e) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, e.Message, e.StackTrace)); } logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Finished Metadata logic", null)); LogRepository.Create(logs); return(true); }
public void Initialize() { var options = new DbContextOptionsBuilder <ShowContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; this.context = new ShowContext(options); this.showRepoLogger = new DebugLogger <ShowRepository>(); var showRepo = new ShowRepository(this.showRepoLogger, this.context); var svclogger = new DebugLogger <ShowService>(); this.showService = new ShowService(showRepo, svclogger, new MockMessageHub()); }
public void ShowRepository_Delete_Deletes() { // Arrange var repo = new ShowRepository(); var existingItem = repo.Fetch(1).Single(); // Act existingItem.IsMarkedForDeletion = true; var deletedItem = repo.Persist(existingItem); // Assert for Delete Assert.IsNull(deletedItem); var emptyResult = repo.Fetch(3); Assert.IsFalse(emptyResult.Any()); }
public void Initialize() { // var connstr = ConfigurationManager.ConnectionStrings["ShowConnection"].ConnectionString; var connstr = @"Server=.\sqlexpress;Database=tvmaze;Trusted_Connection=True;Connection Timeout=30;Application Name=TvMazeScraperTest"; var options = new DbContextOptionsBuilder <ShowContext>() .UseSqlServer(connstr) .Options; var context = new ShowContext(options); var repologger = new DebugLogger <ShowRepository>(); var showRepo = new ShowRepository(repologger, context); this.showServiceLogger = new DebugLogger <ShowService>(); this.showService = new ShowService(showRepo, this.showServiceLogger, new MockMessageHub()); }
public ActionResult Create(string title) { /* The title parameter allows user to pass us the value in the URL. * As a potential convenience, as it will pre-fill the form. * Because we fill out the model with that date, * then pass the model to the view, and that will pre-fill the form. */ ShowModel show = new ShowModel { Id = ShowRepository.GenerateId(), Title = title }; return(View(show)); }
public void ShowRepository_FetchOne_ReturnsData() { // Arrange var repo = new ShowRepository(); // Act var results = repo.Fetch(1); // Assert Assert.IsTrue(results != null); Assert.IsTrue(results.Any()); Assert.IsTrue(results.Count() == 1); Assert.IsTrue(results.Single().ShowId == 1); Assert.IsTrue(results.Single().Credits.Count() == 6); Assert.IsTrue(results.Single().ShowGenres.Count() == 1); }
public static void Main(string[] args) { Console.WriteLine("hi"); ArtistRepository artistRepository = new ArtistRepository(); EmployeeRepository employeeRepository = new EmployeeRepository(); BuyerRepository buyerRepository = new BuyerRepository(); ShowRepository showRepository = new ShowRepository(); TicketRepository ticketRepository = new TicketRepository(); IServices serviceImpl = new ServerImpl(employeeRepository, showRepository, artistRepository, buyerRepository, ticketRepository); AbstractServer server = new SerialServer("127.0.0.1", 55555, serviceImpl); server.Start(); Console.WriteLine("Server started ..."); //Console.WriteLine("Press <enter> to exit..."); Console.ReadLine(); }
public bool Logic() { var logs = new List <Log>(); try { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Starting Scraper logic", null)); var showRepo = new ShowRepository(ConnectionString); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, "Getting shows in database", null)); var showsInDatabase = showRepo.Select(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {showsInDatabase.Count} shows", null)); var allShows = new List <Show>(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Getting shows from sources", null)); GetAllShows(Source.MYASIANTV)?.ForEach(x => allShows.Add(new Show(x))); GetAllShows(Source.ESTRENOSDORAMAS)?.ForEach(x => allShows.Add(new Show(x))); GetAllShows(Source.KSHOW)?.ForEach(x => allShows.Add(new Show(x))); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {allShows.Count} counts from sources", null)); var finalList = allShows.Where(x => !showsInDatabase.Exists(y => x.Url == y.Url)).ToList(); var distinctAux = finalList .GroupBy(x => x.Url) .Select(x => x.First()).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"{distinctAux.Count} shows will be added", null)); showRepo.Create(finalList); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Shows added successfully", null)); } catch (Exception e) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, e.Message, e.StackTrace)); } logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Finished Scraper logic", null)); LogRepository.Create(logs); return(true); }
public UnitOfWork(CinemaContext context, FilmRepository film, FilmStoryRepository filmStory, HallRepository hall, PlaceRepository place, RowRepository row, ShowRepository show, UserRepository user) { _context = context; Films = film; FilmStory = filmStory; Halls = hall; Places = place; Rows = row; Shows = show; Users = user; }
public void PersonRepository_CreditDirty_SetsGraphDirty() { // Arrange var repo = new PersonRepository(); var all = repo.Fetch(null).ToList(); var personId = all[0].PersonId; var fullName = all[0].FullName; var item = repo.Fetch(personId).Single(); // Add one Credit to change a leaf // of the object graph var creditTypeRepository = new CreditTypeRepository(); var ct = creditTypeRepository.Fetch().First(); var showRepository = new ShowRepository(); var s = showRepository.Fetch().First(); var c = new Credit() { CreditTypeId = ct.CreditTypeId, ShowId = s.ShowId }; item.Credits.Add(c); Assert.IsNotNull(item); Assert.IsTrue(item.PersonId == personId); Assert.IsTrue(item.FullName == fullName); Assert.IsFalse(item.IsMarkedForDeletion); // The IsDirty flag should be false Assert.IsFalse(item.IsDirty); // The HasChanges property should // be true, indicating the change to ShowGenres Assert.IsTrue(item.IsGraphDirty); }
public void ShowRepository_Insert_Inserts() { // Arrange var repo = new ShowRepository(); var testItem = new Show { Title = "TestTitle", LengthInMinutes = 100, MpaaRatingId = 3, TheatricalReleaseDate = new DateTime(2000,1,31), DvdReleaseDate = new DateTime(2000, 4, 1) }; // For ShowGenre, both ShowId and ShowGenreId should // be assigned by repository testItem.ShowGenres.Add(new ShowGenre { GenreId = 2 }); // For Credit, both CreditId and ShowId should be // assigned by repository testItem.Credits.Add(new Credit { PersonId = 1, CreditTypeId = 1, Character = "Pooh" }); // Act var insertedItem = repo.Persist(testItem); var newId = insertedItem.ShowId; // Assert Assert.IsTrue(newId > 0); var existingItem = repo.Fetch(newId).Single(); Assert.IsTrue(existingItem.Title== "TestTitle"); Assert.IsTrue(existingItem.LengthInMinutes == 100); Assert.IsTrue(existingItem.TheatricalReleaseDate == new DateTime(2000,1,31)); Assert.IsTrue(existingItem.DvdReleaseDate == new DateTime(2000, 4, 1)); Assert.IsTrue(existingItem.MpaaRatingId == 3); Assert.IsTrue(existingItem.Credits.Single().CreditId > 0); Assert.IsTrue(existingItem.Credits.Single().ShowId == newId); Assert.IsTrue(existingItem.Credits.Single().Character == "Pooh"); }
public void ShowRepository_Update_Updates() { /// todo: Add child updates // Arrange var repo = new ShowRepository(); var existingItem = repo.Fetch(1).Single(); // Act - Update existingItem.Title = "TestTitle"; existingItem.LengthInMinutes = 100; existingItem.MpaaRatingId = 3; existingItem.TheatricalReleaseDate = new DateTime(2000, 1, 31); existingItem.DvdReleaseDate = new DateTime(2000, 4, 1); repo.Persist(existingItem); // Assert for Update var updatedItem = repo.Fetch(1).Single(); Assert.IsTrue(updatedItem.Title== "TestTitle"); Assert.IsTrue(updatedItem.LengthInMinutes == 100); Assert.IsTrue(updatedItem.TheatricalReleaseDate == new DateTime(2000,1,31)); Assert.IsTrue(updatedItem.DvdReleaseDate == new DateTime(2000, 4, 1)); }
public ShowService(ShowRepository showRepository) { this.showRepository = showRepository; }
public LiveController() { _showRepository = new ShowRepository(); _eventRepository = new EventRepository(); }
private Person CreateSamplePerson() { var newPerson = new Person { Salutation = "", FirstName = "Jane", MiddleName = "Anne", LastName = "TestLastName", Suffix = "", StageName = "", Weight = 120.5, DateOfBirth = new DateTime(1943, 2, 5), HairColorId = 1, EyeColorId = 1 }; var creditTypeRepo = new CreditTypeRepository(); var creditTypes = creditTypeRepo.Fetch(null).ToList(); var showRepo = new ShowRepository(); var shows = showRepo.Fetch(null).ToList(); Credit crd1 = new Credit { ShowId = shows[0].ShowId, CreditTypeId = creditTypes[0].CreditTypeId, Character = "Henry" }; newPerson.Credits.Add(crd1); return newPerson; }
public bool Logic() { var logs = new List <Log>(); try { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Starting Enqueuer logic", null)); var showRepo = new ShowRepository(ConnectionString); var episodeRepo = new EpisodeRepository(ConnectionString); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Getting shows from database", null)); var showsInDatabase = showRepo.Select().Where(x => x.Download ?? true).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {showsInDatabase.Count} shows in database", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Looping through shows", null)); foreach (var show in showsInDatabase) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Checking {show.Title}", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Getting episodes in database of show: {show.Title}", null)); var episodesInDatabase = episodeRepo.Select().Where(x => x.ShowId == show.Id).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {episodesInDatabase.Count} episodes in database of show: {show.Title}", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Getting episodes of show: {show.Title} that status is not downloaded", null)); var episodesByShow = episodesInDatabase.Where(x => x.Status == EpisodeStatus.UNKNOWN || x.Status == EpisodeStatus.FAILED && x.Status != EpisodeStatus.DOWNLOADED).ToList(); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {episodesByShow} episodes in database of show: {show.Title}", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Getting episodes of show: {show.Title} in sources", null)); var newepisodes = GetEpisodesBySource(episodesByShow, show); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Found {newepisodes.Count} episodes of show: {show.Title} in sources", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Looping through {show.Title} episodes", null)); foreach (var item in newepisodes) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, $"Checking {item.Filename}", null)); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Checking if episode exists", null)); var ep = episodesByShow.SingleOrDefault(x => x.Filename == item.Filename); logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Checking if episode exists as scraped or downloaded", null)); var existsAsScraperOrDownloaded = episodesInDatabase.SingleOrDefault(x => x.Filename == item.Filename && (x.Status == EpisodeStatus.SCRAPED || x.Status == EpisodeStatus.DOWNLOADED)); if (existsAsScraperOrDownloaded != null) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Episode already downloaded", null)); continue; } if (ep != null) { if (item.Status != ep.Status && ep.Status != EpisodeStatus.DOWNLOADED) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Episode type updated to download", null)); episodeRepo.Update(item); showRepo.Update(show); } } else { logs.Add(new Log(Core.Enums.LogHelpers.LogType.DEBUG, $"Episode added to download queue", null)); episodeRepo.Create(item); showRepo.Update(show); } } } } catch (Exception e) { logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, e.Message, e.StackTrace)); } logs.Add(new Log(Core.Enums.LogHelpers.LogType.INFO, "Finished Enqueuer logic", null)); LogRepository.Create(logs); return(true); }
protected override void SetupRepository() { _context = CreateDbContext(); _showRepository = new ShowRepository(_context); }
public ShowService() { _showRepository = new ShowRepository(); _ticketRepository = new TicketRepository(); _exporterFactory = new ExporterFactory(); }
/// <summary> /// initialize constructor /// </summary> public BrowseController() { ApplicationDbContext context = new ApplicationDbContext(); showRep = new ShowRepository(context); }
public RepoTest() { _repo = new ShowRepository(); }