mirror of
https://github.com/azaion/annotations.git
synced 2026-04-22 14:56:30 +00:00
rework to Azaion.Suite
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
using System.Diagnostics;
|
||||
using Azaion.Annotator.Extensions;
|
||||
using FluentAssertions;
|
||||
using Xunit;
|
||||
using ParallelOptions = Azaion.Annotator.Extensions.ParallelOptions;
|
||||
|
||||
namespace Azaion.Annotator.Test;
|
||||
|
||||
public class ParallelExtTest
|
||||
{
|
||||
[Fact]
|
||||
public async Task ParallelExtWorksOkTest()
|
||||
{
|
||||
var list = Enumerable.Range(0, 10).ToList();
|
||||
|
||||
var sw = Stopwatch.StartNew();
|
||||
await ParallelExt.ForEachAsync(list, async (i, cancellationToken) =>
|
||||
{
|
||||
await Task.Delay(TimeSpan.FromSeconds(i), cancellationToken);
|
||||
}, new ParallelOptions
|
||||
{
|
||||
CpuUtilPercent = 100,
|
||||
ProgressUpdateInterval = 1
|
||||
});
|
||||
|
||||
var elapsed = sw.Elapsed;
|
||||
elapsed.Should().BeLessThan(TimeSpan.FromSeconds(11));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task ParallelLibWorksOkTest()
|
||||
{
|
||||
var list = Enumerable.Range(0, 10).ToList();
|
||||
|
||||
var sw = Stopwatch.StartNew();
|
||||
await Parallel.ForEachAsync(list, new System.Threading.Tasks.ParallelOptions
|
||||
{
|
||||
MaxDegreeOfParallelism = Environment.ProcessorCount,
|
||||
}, async (i, cancellationToken) =>
|
||||
{
|
||||
await Task.Delay(TimeSpan.FromSeconds(i), cancellationToken);
|
||||
});
|
||||
var elapsed = sw.Elapsed;
|
||||
elapsed.Should().BeLessThan(TimeSpan.FromSeconds(11));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user