/// <summary> /// Downloads the specified test file and verifies its contents. /// </summary> private async Task TestFileDownload(TestData.TestFile testFile) { var target = Path.GetTempFileName(); try { Debug.WriteLine("Temporary local file: " + target); using (var feedback = new DebugFeedbackChannel("Test")) { using (var initializing = feedback.BeginSubOperation("InitializeData")) await TestData.Current.BringToInitialState(initializing); var client = new MegaClient(TestData.Current.Email1, TestData.Current.Password1); var filesystem = await client.GetFilesystemSnapshotAsync(feedback); var file = testFile.TryFind(filesystem); if (file == null) Assert.Fail("Could not find expected file to download: " + testFile.Name); await file.DownloadContentsAsync(target, feedback); using (var expectedContents = testFile.Open()) using (var contents = File.OpenRead(target)) TestHelper.AssertStreamsAreEqual(expectedContents, contents); } } finally { File.Delete(target); } }