コード例 #1
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
        private void Dispose(EnumeratorSpy enumeratorSpy)
        {
            NumCallsToDispose++;
            var enumerator = GetRealEnumerator(enumeratorSpy);

            RemoveSpyToRealEnumeratorMapping(enumeratorSpy);
            enumerator.Dispose();
        }
コード例 #2
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
        public IEnumerator <T> GetEnumerator()
        {
            NumCallsToGetEnumerator++;
            var enumeratorSpy = new EnumeratorSpy(this);
            var enumerator    = _sequence.GetEnumerator();

            AddSpyToRealEnumeratorMapping(enumeratorSpy, enumerator);
            return(enumeratorSpy);
        }
コード例 #3
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
 private IEnumerator <T> GetRealEnumerator(EnumeratorSpy enumeratorSpy)
 {
     return(_enumerators[enumeratorSpy]);
 }
コード例 #4
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
 private void RemoveSpyToRealEnumeratorMapping(EnumeratorSpy enumeratorSpy)
 {
     _enumerators.Remove(enumeratorSpy);
 }
コード例 #5
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
 private void AddSpyToRealEnumeratorMapping(EnumeratorSpy enumeratorSpy, IEnumerator <T> enumerator)
 {
     _enumerators.Add(enumeratorSpy, enumerator);
 }
コード例 #6
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
 private T GetCurrent(EnumeratorSpy enumeratorSpy)
 {
     NumCallsToCurrent++;
     return(GetRealEnumerator(enumeratorSpy).Current);
 }
コード例 #7
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
 private void Reset(EnumeratorSpy enumeratorSpy)
 {
     NumCallsToReset++;
     GetRealEnumerator(enumeratorSpy).Reset();
 }
コード例 #8
0
ファイル: EnumerableSpy.cs プロジェクト: taylorjg/Flinq
 private bool MoveNext(EnumeratorSpy enumeratorSpy)
 {
     NumCallsToMoveNext++;
     return(GetRealEnumerator(enumeratorSpy).MoveNext());
 }