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]);
            }
        }