public MockBuilder(IReservedTerms mockSettings, DxSettings testSettings, IEnumerable<object> constructorArgs = null) { ConstructorArgs = constructorArgs ?? Enumerable.Empty<object>(); MockSettings = new ReservedTermsContainer(mockSettings); TestSettings = testSettings; }
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; }