示例#1
0
 public MockBuilder(IReservedTerms mockSettings, DxSettings testSettings, IEnumerable<object> constructorArgs = null)
 {
     ConstructorArgs = constructorArgs ?? Enumerable.Empty<object>();
     MockSettings = new ReservedTermsContainer(mockSettings);
     TestSettings = testSettings;
 }
示例#2
0
        public MethodMockBuilder(IReservedTerms terms, MockBuilder nextPiece, IEnumerable<Type> genericArgs, IEnumerable<object> args)
        {
            if (args.Count() == 1 && args.First() is IMethodAssert)
                ArgChecker = args.First() as IMethodAssert;
            else if (args.Any(a => a is IMethodAssert))
                throw new InvalidMockException("An IMethodAssert from Dx.Args<>(...) must be the first and only argument");
            else
                ArgChecker = new EqualityMethodApplicabilityChecker(args);

            ReservedTerms = new ReservedTermsContainer(terms);

            ArgChecker.OutParamValues = OutParamValues;

            GenericArguments = Array.AsReadOnly((genericArgs ?? Enumerable.Empty<Type>()).ToArray());
            ReturnValue = nextPiece;
            NextPiece = nextPiece;
            MustBeCalled = false;
            WasCalled = false;
        }