public void Item_GetIndexOutOfRange_ThrowsIndexOutOfRangeException(int index) { var wrappedItems = new TestWrappedClass[10]; for (var i = 0; i < 10; ++i) { wrappedItems[i] = new TestWrappedClass(); } var array = new WrappedReadOnlyList <TestClass, TestWrappedClass>( wrappedItems, (_, testWrappedClass) => new TestClass(testWrappedClass)); Assert.Throws <IndexOutOfRangeException>(() => array[index]); }
public void Count_Get() { var wrappedItems = new TestWrappedClass[10]; for (var i = 0; i < 10; ++i) { wrappedItems[i] = new TestWrappedClass(); } var array = new WrappedReadOnlyList <TestClass, TestWrappedClass>( wrappedItems, (_, testWrappedClass) => new TestClass(testWrappedClass)); Assert.Equal(10, array.Count); }
public void Item_Get() { var wrappedItems = new TestWrappedClass[10]; for (var i = 0; i < 10; ++i) { wrappedItems[i] = new TestWrappedClass(); } var array = new WrappedReadOnlyList <TestClass, TestWrappedClass>( wrappedItems, (_, testWrappedClass) => new TestClass(testWrappedClass)); var item = array[1]; Assert.Same(wrappedItems[1], item.Wrapped); }
public void GetEnumerator() { var wrappedItems = new TestWrappedClass[10]; for (var i = 0; i < 10; ++i) { wrappedItems[i] = new TestWrappedClass(); } var items = new WrappedReadOnlyList <TestClass, TestWrappedClass>( wrappedItems, (_, testWrappedClass) => new TestClass(testWrappedClass)).ToList(); for (var i = 0; i < 10; ++i) { Assert.Same(wrappedItems[i], items[i].Wrapped); } }
public void Item_GetMultipleTimes_ReturnsSameInstance() { var wrappedItems = new TestWrappedClass[10]; for (var i = 0; i < 10; ++i) { wrappedItems[i] = new TestWrappedClass(); } var array = new WrappedReadOnlyList <TestClass, TestWrappedClass>( wrappedItems, (_, testWrappedClass) => new TestClass(testWrappedClass)); var item = array[1]; var item2 = array[1]; Assert.Same(item, item2); }