public async Task <ActionResult <ICollection <Font> > > GetFonts(Identifier identifier) { Episode episode = await identifier.Match( id => _libraryManager.GetOrDefault <Episode>(id), slug => _libraryManager.GetOrDefault <Episode>(slug) ); if (episode == null) { return(NotFound()); } return(Ok(await _transcoder.ListFonts(episode))); }
public async Task ListFontsTest() { Episode episode = TestSample.Get <Episode>(); _files.Setup(x => x.ListFiles(It.IsAny <string>(), System.IO.SearchOption.TopDirectoryOnly)) .ReturnsAsync(new[] { "font.ttf", "font.TTF", "toto.ttf" }); ICollection <Font> fonts = await _transcoder.ListFonts(episode); List <string> fontsFiles = fonts.Select(x => x.File).ToList(); Assert.Equal(3, fonts.Count); Assert.Contains("font.TTF", fontsFiles); Assert.Contains("font.ttf", fontsFiles); Assert.Contains("toto.ttf", fontsFiles); }