protected override string DoProcess(string[] request) { Track track = TrackParser.Parse(request); World.Robot.Movement.AddTrack(track); return("Track processed as " + track); }
public void TrackParser_Title() { var info = TrackParser.GetTrackInfo("yunis", "Limbic (Value of Stimuli)", "yunis", "Amygdala", DateTime.Now); Assert.AreEqual(new List <string> { "yunis" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Limbic (Value of Stimuli)", info.ProcessedTitle); }
public void TrackParser_Title7() { var info = TrackParser.GetTrackInfo("deadmau5", "Strobe (Club Edit)", "deadmau5", "Strobe", DateTime.Now); Assert.AreEqual(new List <string> { "deadmau5" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Strobe (Club Edit)", info.ProcessedTitle); //bug make this "Strobe" + "Club Edit" subtitle }
public void TrackParser_Title6() { var info = TrackParser.GetTrackInfo("BUDD", "Triangular (Radio Edit)", "BUDD", "Triangular", DateTime.Now); Assert.AreEqual(new List <string> { "BUDD" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Triangular (Radio Edit)", info.ProcessedTitle); //bug make this "Triangular" + "Radio Edit" subtitle }
public void TrackParser_Title5() { var info = TrackParser.GetTrackInfo("Monstergetdown", "maybe nothing (Extended Edit)", "Monstergetdown", "maybe nothing (Extended Edit)", DateTime.Now); Assert.AreEqual(new List <string> { "Monstergetdown" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("maybe nothing (Extended Edit)", info.ProcessedTitle); //bug make this "maybe nothing" + "Extended Edit" subtitle }
public void TrackParser_Title3() { var info = TrackParser.GetTrackInfo("i_o & LIGHTS", "Annihilation (Afterhours Mix)", "i_o & LIGHTS", "Annihilation (Afterhours Mix)", DateTime.Now); Assert.AreEqual(new List <string> { "i_o", "LIGHTS" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Annihilation (Afterhours Mix)", info.ProcessedTitle); //bug make this "Annihilation" + "Afterhours Mix" subtitle }
public void TrackParser_Artist2() { var info = TrackParser.GetTrackInfo("MOGUAI & Rebecca & Fiona", "Sad Boy, Happy Girl", "MOGUAI & Rebecca & Fiona", "Sad Boy, Happy Girl", DateTime.Now); Assert.AreEqual(new List <string> { "MOGUAI", "Rebecca & Fiona" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Sad Boy, Happy Girl", info.ProcessedTitle); }
public void TrackParser_Remix() { var info = TrackParser.GetTrackInfo("Mystic State", "Ever More (War Remix)", "Mystic State", "Ever More & Close Thirteen", DateTime.Now); Assert.AreEqual(new List <string> { "Mystic State" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(new List <string> { "War" }, info.Remixers); Assert.AreEqual("Ever More", info.ProcessedTitle); }
public void TrackParser_Remix4() { var info = TrackParser.GetTrackInfo("Romare", "All Night (Karma Fields Edit)", "Romare", "All Night (Karma Fields Edit)", DateTime.Now); Assert.AreEqual(new List <string> { "Romare" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(new List <string> { "Karma Fields" }, info.Remixers); Assert.AreEqual("All Night", info.ProcessedTitle); }
public void TrackParser_Title2() { var info = TrackParser.GetTrackInfo("Subp Yao", "Lost (Floating) (feat. Astronautalis)", "Subp Yao", "Infra Aqual", DateTime.Now); Assert.AreEqual(new List <string> { "Subp Yao" }, info.Artists); Assert.AreEqual(new List <string> { "Astronautalis" }, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Lost (Floating)", info.ProcessedTitle); }
public void TrackParser_Extended_Mix2() { var info = TrackParser.GetTrackInfo("EDDIE", "Somewhere in Between (feat. Colleen D'Agostino) (Extended Mix)", "EDDIE", "Somewhere in Between", DateTime.Now); Assert.AreEqual(new List <string> { "EDDIE" }, info.Artists); Assert.AreEqual(new List <string> { "Colleen D'Agostino" }, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Somewhere in Between", info.ProcessedTitle); }
public void TrackParser_Remix5() { var info = TrackParser.GetTrackInfo("Wingz", "I Got (Vorso 20:17 Remix)", "Vorso", "", DateTime.Now); Assert.AreEqual(new List <string> { "Wingz" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(new List <string> { "Vorso" }, info.Remixers); Assert.AreEqual("I Got", info.ProcessedTitle); }
public void TrackParser_Remix3() { var info = TrackParser.GetTrackInfo("deadmau5 & The Neptunes", "Pomegranate (Ninajirachi Extended Remix)", "deadmau5 & The Neptunes", "Pomegranate (Ninajirachi Extended Remix)", DateTime.Now); Assert.AreEqual(new List <string> { "deadmau5", "The Neptunes" }, info.Artists); Assert.AreEqual(emptyStringList, info.Features); Assert.AreEqual(new List <string> { "Ninajirachi" }, info.Remixers); Assert.AreEqual("Pomegranate", info.ProcessedTitle); }
public void TrackParser_Title4() { var info = TrackParser.GetTrackInfo("Ty Dolla $ign", "Ego Death (feat. Kanye West, FKA twigs, & Skrillex)", "", "", DateTime.Now); Assert.AreEqual(new List <string> { "Ty Dolla $ign" }, info.Artists); Assert.AreEqual(new List <string> { "Kanye West", "FKA twigs", "Skrillex" }, info.Features); Assert.AreEqual(emptyStringList, info.Remixers); Assert.AreEqual("Ego Death", info.ProcessedTitle); }
public async Task <string> GetChannelEpisodeFile(int collectionId, string link, long id) { var feedDirectory = Path.Combine(_podcastFolder, collectionId.ToString()); if (!Uri.TryCreate(link, UriKind.Absolute, out Uri uriResult)) { return(Path.Join(".", Path.Join(link.Split(Path.AltDirectorySeparatorChar).Skip(1).ToArray()))); } string urlFileName = uriResult.Segments.Last(); if (Directory.Exists(feedDirectory) && Directory.GetFiles(feedDirectory, $"*{id}_{urlFileName}").Any()) { return(Path.Combine(".", Directory.GetFiles(feedDirectory, $"*{id}_{urlFileName}").First())); } try { if (!Directory.Exists(feedDirectory)) { Directory.CreateDirectory(feedDirectory); } using var client = new WebClient(); string path = Path.Combine(feedDirectory, $"{id}_{urlFileName}"); await client.DownloadFileTaskAsync(link, path); var episodeInfo = TrackParser.GetTrackInfo(path, urlFileName.GetHashCode(), new Uri(Directory.GetCurrentDirectory())); Feed feed = GetFeed(collectionId); episodeInfo.Id = id; FeedItem item = feed.Items.Single(item => item.Id == id); episodeInfo.Title = item.Title; episodeInfo.CollectionId = collectionId; episodeInfo.Id = id; episodeInfo.Path = item.Uri; _episodesInfo.Add(episodeInfo); SaveEpisodeInfo(); return(path); } catch (Exception ex) { throw ex; } }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { string libraryFile = "./tracks.json"; if (!File.Exists(libraryFile)) { TrackParser parser = new TrackParser(); var fileContent = parser.GetTrackData(); File.WriteAllText(libraryFile, fileContent); } app.MapWhen(context => context.Request.Path.Value.EndsWith(".mp3") || context.Request.Path.Value.EndsWith(".ogg") || context.Request.Path.Value.EndsWith(".flac"), config => config.Run(async context => { context.Response.Redirect($"/api/Library/Download?path={context.Request.Path.Value}"); })); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseWebAssemblyDebugging(); } else { app.UseExceptionHandler("/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } app.UseHttpsRedirection(); app.UseBlazorFrameworkFiles(); app.UseStaticFiles(); app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); endpoints.MapControllers(); endpoints.MapFallbackToFile("index.html"); }); }
public void TrackParser_Remix2() { var info = TrackParser.GetTrackInfo("Zeds Dead x Loge21", "Just Wanna (sumthin sumthin Remix) [feat. Polina]", "Zeds Dead", "WE ARE DEADBEATS (Vol. 4/Deluxe)", DateTime.Now); Assert.AreEqual(new List <string> { "Zeds Dead", "Loge21" }, info.Artists); Assert.AreEqual(new List <string> { "Polina" }, info.Features); Assert.AreEqual(new List <string> { "sumthin sumthin" }, info.Remixers); Assert.AreEqual("Just Wanna", info.ProcessedTitle); }
private void Open_Result(object sender, RoutedEventArgs e) { OpenFileDialog resultFile = new OpenFileDialog { Filter = "HTML Files (*.html)|*.html" }; if (resultFile.ShowDialog() == true) { string session = "Race"; string[] filePath = resultFile.FileName.Split('\\'); ResultFileTextBox.Text = filePath[filePath.Length - 1]; track = TrackParser.Parse(resultFile.FileName); Console.WriteLine(track.length); ResultParser.Parse(ref drivers, resultFile.FileName, ref session, track.length); drivers.Sort(); track.laps = drivers[1].result.laps; PDFGeneration.RacePDFGenerator.OutputPDF(drivers, "Monster Energy NASCAR Cup Series", "Pennzoil 400", track); } }
public void ResultFileCommandAction() { if (selectedSeries != null) { Microsoft.Win32.OpenFileDialog resultFile = new Microsoft.Win32.OpenFileDialog { Filter = "HTML Files (*.html)|*.html", InitialDirectory = (System.IO.Directory.Exists((series.NR2K3Dir + "\\exports_imports"))) ? series.NR2K3Dir + "\\exports_imports" : "C:\\" }; if (resultFile.ShowDialog() == true) { track = TrackParser.Parse(series.NR2K3Dir, resultFile.FileName); resultFilePath = resultFile.FileName; ResultFile = resultFile.FileName.Split('\\').Last(); Sessions.Clear(); ResultParser.GetSessions(resultFile.FileName, Sessions); SelectedSession = (Sessions.Count > 0) ? Sessions[0] : null; } } }