public static void Foreach() { var distributedArray = new BigArray <int>(); int size = 4 * MaxBlockSize; for (int i = 0; i < size; i++) { distributedArray.Add(i); } var newArray = new BigArray <int>(); foreach (var i in distributedArray) { newArray.Add(i); } Assert.IsTrue(distributedArray.Count == newArray.Count); //array must be equal newArray Assert.IsFalse(distributedArray.Where((t, i) => t != newArray[i]).Any()); }