internal async Task DownloadLatestAndroidVersionWithProgressAndRetriesTest(OperatingSystemArchitecture arch) { var operatingSystemArchProvider = Substitute.For <IOperatingSystemArchitectureProvider>(); operatingSystemArchProvider.GetArchitecture().Returns(x => arch); var ffmpegExecutablesPath = FFmpeg.ExecutablesPath; try { FFbinariesVersionInfo currentVersion = JsonConvert.DeserializeObject <FFbinariesVersionInfo>(File.ReadAllText(Resources.FFbinariesInfo)); FFmpeg.SetExecutablesPath("assemblies"); if (Directory.Exists("assemblies")) { Directory.Delete("assemblies", true); } AndroidFFmpegDownloader downloader = new AndroidFFmpegDownloader(operatingSystemArchProvider); IProgress <ProgressInfo> progress = new Progress <ProgressInfo>(); await downloader.GetLatestVersion(FFmpeg.ExecutablesPath, progress, 3); Assert.True(File.Exists(downloader.ComputeFileDestinationPath("ffmpeg", arch, FFmpeg.ExecutablesPath))); Assert.True(File.Exists(downloader.ComputeFileDestinationPath("ffprobe", arch, FFmpeg.ExecutablesPath))); } finally { FFmpeg.SetExecutablesPath(ffmpegExecutablesPath); } }
internal async Task DownloadLatestAndroidVersionTest(OperatingSystemArchitecture arch) { var operatingSystemArchProvider = Substitute.For <IOperatingSystemArchitectureProvider>(); operatingSystemArchProvider.GetArchitecture().Returns(x => arch); var ffmpegExecutablesPath = FFmpeg.ExecutablesPath; try { FFbinariesVersionInfo currentVersion = JsonConvert.DeserializeObject <FFbinariesVersionInfo>(File.ReadAllText(Resources.FFbinariesInfo)); FFmpeg.SetExecutablesPath(_storageFixture.GetTempDirectory()); AndroidFFmpegDownloader downloader = new AndroidFFmpegDownloader(operatingSystemArchProvider); await downloader.GetLatestVersion(FFmpeg.ExecutablesPath); Assert.True(File.Exists(downloader.ComputeFileDestinationPath("ffmpeg", arch, FFmpeg.ExecutablesPath))); Assert.True(File.Exists(downloader.ComputeFileDestinationPath("ffprobe", arch, FFmpeg.ExecutablesPath))); } finally { FFmpeg.SetExecutablesPath(ffmpegExecutablesPath); } }