public void GivenFunction_ParallelForEachAsync_ReturnsCompletedTask() { //two identical lists var originalNums = new List <int>() { 1, 2, 3, 4, 5 }; var nums = new List <int>() { 1, 2, 3, 4, 5 }; //function modifies original list by adding one AddressableAssetUtility.ParallelForEachAsync(nums, 5, (num) => { originalNums[num - 1] += 1; return(Task.FromResult(originalNums[num - 1])); }).GetAwaiter().GetResult(); //validate that the modified number matches for (var i = 0; i < originalNums.Count; i++) { Assert.AreEqual(nums[i] + 1, originalNums[i]); } }