public Task TestCancellationExceptionThrown()
        {
            var cancellationTokenSource = new CancellationTokenSource();

            cancellationTokenSource.Cancel();
            return(Assert.ThrowsAsync <OperationCanceledException>(() =>
                                                                   UpdateDownloader.DownloadAsync(cancellationTokenSource.Token)));
        }
        public async Task Test()
        {
            await UpdateDownloader.DownloadAsync(CancellationToken.None);

            Assert.Single(Downloads);
            Assert.Contains(Hash.Parse("ac6cb635c58754672d0e576442db9ecadd8043829916ca85330cf00bd7359df9"), Downloads);

            Assert.Equal(2, TempFiles.Count);

            Assert.True(TempFiles.TryGetValue("7324c19ad06ea51117d7ffdd01f7d030ac03651f6ea57472de1765b3dfa3a9e0",
                                              out var tempFile));
            Assert.Equal("NORA2", Encoding.ASCII.GetString(tempFile.DataStream.ToArray()));

            Assert.True(TempFiles.TryGetValue("ac6cb635c58754672d0e576442db9ecadd8043829916ca85330cf00bd7359df9",
                                              out tempFile));
            Assert.Equal("NORA3", Encoding.ASCII.GetString(tempFile.DataStream.ToArray()));
        }
 public Task Test()
 {
     return(Assert.ThrowsAsync <InvalidOperationException>(() =>
                                                           UpdateDownloader.DownloadAsync(CancellationToken.None)));
 }