예제 #1
0
 public static IInvocableSequenceReturn SetupInSequenceShared <T, TReturn>(this Mock <T> mock, Expression <Func <T, TReturn> > setUp, ISequence sequence, ExceptionsOrReturns <TReturn> exceptionsOrReturns, SequenceInvocationIndices sequenceInvocationIndices) where T : class
 {
     sequence = sequence ?? throw new ArgumentNullException(nameof(sequence));
     return(SetupInSequenceResult(sequence, mock, setUp, exceptionsOrReturns, sequenceInvocationIndices));
 }
예제 #2
0
 public static IInvocableSequenceReturn SetupInSequenceSingle <T, TReturn>(this Mock <T> mock, Expression <Func <T, TReturn> > setUp, ExceptionsOrReturns <TReturn> exceptionsOrReturns, int loops = 1) where T : class
 {
     ConfirmLoops(loops);
     return(SetupInSequenceResult(Sequence.Factory.CreateSingle(mock, loops), mock, setUp, exceptionsOrReturns));
 }
예제 #3
0
 public static IInvocableSequenceReturn SetupInSequenceCreateShared <T, TReturn>(this Mock <T> mock, Expression <Func <T, TReturn> > setUp, out ISequence sequence, ExceptionsOrReturns <TReturn> exceptionsOrReturns, SequenceInvocationIndices sequenceInvocationIndices, int loops = 1) where T : class
 {
     ConfirmLoops(loops);
     sequence = Sequence.Factory.CreateShared(loops);
     return(SetupInSequenceResult(sequence, mock, setUp, exceptionsOrReturns, sequenceInvocationIndices));
 }
예제 #4
0
        private static IInvocableSequenceReturn SetupInSequenceResult <T, TReturn>(ISequence sequence, Mock <T> mock, Expression <Func <T, TReturn> > setUp, ExceptionsOrReturns <TReturn> exceptionsOrReturns, SequenceInvocationIndices sequenceInvocationIndices) where T : class
        {
            ConfirmResponsesAndSequenceInvocationIndices(exceptionsOrReturns, "exceptionsOrReturns", sequenceInvocationIndices);
            var setUpResult = mock.Setup(setUp);
            var invocable   = Invocable.Factory.CreateSequenceReturn <T, TReturn>(setUpResult, mock, sequence, exceptionsOrReturns, sequenceInvocationIndices);

            sequence.RegisterInvocable(invocable);
            return(invocable);
        }