コード例 #1
0
 public YoutubeDLService(ILoggerFactory logFactory, IConfiguration configuration)
 {
     log         = logFactory.CreateLogger <YoutubeDLService>();
     ytdlManager = new YoutubeDLManager(logFactory)
     {
         StorePath = configuration["DataDirectory"],
         LatestUrl = configuration["YoutubeDLLatestUrl"],
         Debug     = configuration.GetValue <bool>("Debug"),
         DebugPath = Path.Combine(configuration["DataDirectory"], "Logs", "ytdl"),
     };
 }
コード例 #2
0
        public async Task MultipleVersionsTest()
        {
            TestUtils.DeployEmbeddedResource("youtube-dl-2000", TestContext.TestRunDirectory);
            TestUtils.DeployEmbeddedResource("youtube-dl-2001", TestContext.TestRunDirectory);
            TestUtils.DeployEmbeddedResource("youtube-dl-2002", TestContext.TestRunDirectory);

            var manager = new YoutubeDLManager(loggerFactory)
            {
                StorePath = TestContext.TestRunDirectory
            };

            await manager.Initialize();

            Assert.AreEqual(3, manager.Versions.Count);

            Assert.AreEqual(true, await manager.DownloadLatestVersion());
            Assert.AreEqual(4, manager.Versions.Count);

            await manager.CleanupOldVersions();

            Assert.AreEqual(1, manager.Versions.Count);
            Assert.IsTrue(manager.Versions.First().Key.Major > 2002);
        }
コード例 #3
0
        public async Task DownloadTest()
        {
            var manager = new YoutubeDLManager(loggerFactory)
            {
                StorePath = TestContext.TestDir
            };

            await manager.Initialize();

            Assert.AreEqual(0, manager.Versions.Count);

            // Download latest version, we don't have any version
            Assert.AreEqual(true, await manager.DownloadLatestVersion());
            Assert.AreEqual(1, manager.Versions.Count);

            // We already have the latest version, this should not do anything
            Assert.AreEqual(false, await manager.DownloadLatestVersion());
            Assert.AreEqual(1, manager.Versions.Count);

            await manager.CleanupOldVersions();

            Assert.AreEqual(1, manager.Versions.Count);
        }