public void Enumerator(StringValues stringValues, string[] expected) { var e = stringValues.GetEnumerator(); for (int i = 0; i < expected.Length; i++) { Assert.True(e.MoveNext()); Assert.Equal(expected[i], e.Current); } Assert.False(e.MoveNext()); Assert.False(e.MoveNext()); Assert.False(e.MoveNext()); var e1 = ((IEnumerable <string>)stringValues).GetEnumerator(); for (int i = 0; i < expected.Length; i++) { Assert.True(e1.MoveNext()); Assert.Equal(expected[i], e1.Current); } Assert.False(e1.MoveNext()); Assert.False(e1.MoveNext()); Assert.False(e1.MoveNext()); var e2 = ((IEnumerable)stringValues).GetEnumerator(); for (int i = 0; i < expected.Length; i++) { Assert.True(e2.MoveNext()); Assert.Equal(expected[i], e2.Current); } Assert.False(e2.MoveNext()); Assert.False(e2.MoveNext()); Assert.False(e2.MoveNext()); }
public void DefaultNullOrEmpty_Enumerator(StringValues stringValues) { var e = stringValues.GetEnumerator(); Assert.Null(e.Current); Assert.False(e.MoveNext()); Assert.Null(e.Current); Assert.False(e.MoveNext()); Assert.False(e.MoveNext()); Assert.False(e.MoveNext()); var e1 = ((IEnumerable <string>)stringValues).GetEnumerator(); Assert.Null(e1.Current); Assert.False(e1.MoveNext()); Assert.Null(e1.Current); Assert.False(e1.MoveNext()); Assert.False(e1.MoveNext()); Assert.False(e1.MoveNext()); var e2 = ((IEnumerable)stringValues).GetEnumerator(); Assert.Null(e2.Current); Assert.False(e2.MoveNext()); Assert.Null(e2.Current); Assert.False(e2.MoveNext()); Assert.False(e2.MoveNext()); Assert.False(e2.MoveNext()); }