public void RemoveAt() { var list = new LightweightList <int>(); for (int i = 0; i < 10; i++) { list.Add(i); } list.RemoveAt(9); var span = list.AsSpan(); var arr = list.GetInternalArray(); Assert.Equal(16, list.Capacity); Assert.Equal(16, list.GetInternalArray().Length); Assert.Equal(9, list.Count); Assert.Equal(9, span.Length); for (int i = 0; i < 9; i++) { Assert.Equal(i, list[i]); Assert.Equal(i, span[i]); Assert.Equal(i, arr[i]); } list.RemoveAt(0); span = list.AsSpan(); Assert.Equal(8, list.Count); Assert.Equal(8, span.Length); for (int i = 0, j = 1; i < 8; i++, j++) { Assert.Equal(j, list[i]); Assert.Equal(j, span[i]); Assert.Equal(j, arr[i]); } }