public async UniTask SaveAsync(string fileName, byte[] bytes) { await UniTask.Run(() => Save(fileName, bytes)); }
protected override async UniTask OnBackground() { await UniTask.Run(() => _registedPopupStack.Select(x => x.ToBackground())); await base.OnBackground(); }
private UniTask <string> LoadTextAsync(string path) { Debug.Log("Load"); return(UniTask.Run(() => System.IO.File.ReadAllText(path))); }
public async Task Sum(int start, int count) { { var xs = await UniTaskAsyncEnumerable.Range(start, count).SumAsync(); var ys = Enumerable.Range(start, count).Sum(); xs.Should().Be(ys); } { var xs = await UniTaskAsyncEnumerable.Range(start, count).SumAsync(x => x * 2); var ys = Enumerable.Range(start, count).Sum(x => x * 2); xs.Should().Be(ys); } { var xs = await UniTaskAsyncEnumerable.Range(start, count).SumAwaitAsync(x => UniTask.Run(() => x)); var ys = Enumerable.Range(start, count).Sum(x => x); xs.Should().Be(ys); } { var xs = await UniTaskAsyncEnumerable.Range(start, count).SumAwaitWithCancellationAsync((x, _) => UniTask.Run(() => x)); var ys = Enumerable.Range(start, count).Sum(x => x); xs.Should().Be(ys); } }
protected override async UniTask Popped() { await UniTask.Run(() => _registedPopupStack.Select(x => x.Pop())); await base.Popped(); }
public async Task DistinctUntilChanged(int[] array) { var ys = await array.ToAsyncEnumerable().DistinctUntilChanged().ToArrayAsync(); { (await array.ToUniTaskAsyncEnumerable().DistinctUntilChanged().ToArrayAsync()).Should().BeEquivalentTo(ys); (await array.ToUniTaskAsyncEnumerable().DistinctUntilChanged(x => x).ToArrayAsync()).Should().BeEquivalentTo(ys); (await array.ToUniTaskAsyncEnumerable().DistinctUntilChangedAwait(x => UniTask.Run(() => x)).ToArrayAsync()).Should().BeEquivalentTo(ys); (await array.ToUniTaskAsyncEnumerable().DistinctUntilChangedAwaitWithCancellation((x, _) => UniTask.Run(() => x)).ToArrayAsync()).Should().BeEquivalentTo(ys); } }
public async Task DistinctUntilChangedThrow() { foreach (var item in UniTaskTestException.Throws()) { { var xs = item.DistinctUntilChanged().ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } { var xs = item.DistinctUntilChanged(x => x).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } { var xs = item.DistinctUntilChangedAwait(x => UniTask.Run(() => x)).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } { var xs = item.DistinctUntilChangedAwaitWithCancellation((x, _) => UniTask.Run(() => x)).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } } }
/// <summary> /// 指定パスのファイルを読み込む /// </summary> private async UniTask <string> ReadFileAsync(string path) { return(await UniTask.Run <string>((p) => File.ReadAllText((string)p), path)); }
[InlineData(9, 9)] // exists + exists public async Task SelectMany(int leftCount, int rightCount) { { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectMany(x => UniTaskAsyncEnumerable.Range(99, rightCount * x)).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany(x => Enumerable.Range(99, rightCount * x)).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectMany((i, x) => UniTaskAsyncEnumerable.Range(99 * i, rightCount * x)).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany((i, x) => Enumerable.Range(99 * i, rightCount * x)).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectMany(x => UniTaskAsyncEnumerable.Range(99, rightCount * x), (x, y) => x * y).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany(x => Enumerable.Range(99, rightCount * x), (x, y) => x * y).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectMany((i, x) => UniTaskAsyncEnumerable.Range(99 * i, rightCount * x), (x, y) => x * y).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany((i, x) => Enumerable.Range(99 * i, rightCount * x), (x, y) => x * y).ToArray(); xs.Should().BeEquivalentTo(ys); } // await { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwait(x => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99, rightCount * x))).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany(x => Enumerable.Range(99, rightCount * x)).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwait((i, x) => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99 * i, rightCount * x))).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany((i, x) => Enumerable.Range(99 * i, rightCount * x)).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwait(x => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99, rightCount * x)), (x, y) => UniTask.Run(() => x * y)).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany(x => Enumerable.Range(99, rightCount * x), (x, y) => x * y).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwait((i, x) => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99 * i, rightCount * x)), (x, y) => UniTask.Run(() => x * y)).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany((i, x) => Enumerable.Range(99 * i, rightCount * x), (x, y) => x * y).ToArray(); xs.Should().BeEquivalentTo(ys); } // with cancel { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwaitWithCancellation((x, _) => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99, rightCount * x))).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany(x => Enumerable.Range(99, rightCount * x)).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwaitWithCancellation((i, x, _) => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99 * i, rightCount * x))).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany((i, x) => Enumerable.Range(99 * i, rightCount * x)).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwaitWithCancellation((x, _) => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99, rightCount * x)), (x, y, _) => UniTask.Run(() => x * y)).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany(x => Enumerable.Range(99, rightCount * x), (x, y) => x * y).ToArray(); xs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, leftCount).SelectManyAwaitWithCancellation((i, x, _) => UniTask.Run(() => UniTaskAsyncEnumerable.Range(99 * i, rightCount * x)), (x, y, _) => UniTask.Run(() => x * y)).ToArrayAsync(); var ys = Enumerable.Range(1, leftCount).SelectMany((i, x) => Enumerable.Range(99 * i, rightCount * x), (x, y) => x * y).ToArray(); xs.Should().BeEquivalentTo(ys); } }
public async Task Select(int count) { { var xs = await UniTaskAsyncEnumerable.Range(1, count).Select(x => x * x).ToArrayAsync(); var ys = Enumerable.Range(1, count).Select(x => x * x).ToArray(); xs.Should().BeEquivalentTo(ys); var zs = await UniTaskAsyncEnumerable.Range(1, count).SelectAwait((x) => UniTask.Run(() => x * x)).ToArrayAsync(); zs.Should().BeEquivalentTo(ys); } { var xs = await UniTaskAsyncEnumerable.Range(1, count).Select((x, i) => x * x * i).ToArrayAsync(); var ys = Enumerable.Range(1, count).Select((x, i) => x * x * i).ToArray(); xs.Should().BeEquivalentTo(ys); var zs = await UniTaskAsyncEnumerable.Range(1, count).SelectAwait((x, i) => UniTask.Run(() => x * x * i)).ToArrayAsync(); zs.Should().BeEquivalentTo(ys); } }
public async Task SelectManyException() { // error + exists // exists + error foreach (var item in UniTaskTestException.Throws()) { var xs = item.SelectMany(x => UniTaskAsyncEnumerable.Range(0, 1)).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } foreach (var item in UniTaskTestException.Throws()) { var xs = UniTaskAsyncEnumerable.Range(0, 1).SelectMany(x => item).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } // await foreach (var item in UniTaskTestException.Throws()) { var xs = item.SelectManyAwait(x => UniTask.Run(() => UniTaskAsyncEnumerable.Range(0, 1))).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } foreach (var item in UniTaskTestException.Throws()) { var xs = UniTaskAsyncEnumerable.Range(0, 1).SelectManyAwait(x => UniTask.Run(() => item)).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } // with c foreach (var item in UniTaskTestException.Throws()) { var xs = item.SelectManyAwaitWithCancellation((x, _) => UniTask.Run(() => UniTaskAsyncEnumerable.Range(0, 1))).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } foreach (var item in UniTaskTestException.Throws()) { var xs = UniTaskAsyncEnumerable.Range(0, 1).SelectManyAwaitWithCancellation((x, _) => UniTask.Run(() => item)).ToArrayAsync(); await Assert.ThrowsAsync <UniTaskTestException>(async() => await xs); } }
public void Send(byte[] data, int size) { var _ = UniTask.Run(() => UdpClient.Send(data, size)); }