public static void SetUp(TestContext context) { _unitOfWork = new UnitOfWork(); _memberFactory = new MemberFactory(); _gomeeFactory = new GomeeFactory(); _targetFactory = new TargetFactory(); _targetDecorator = new TargetDecorator(_targetFactory, _unitOfWork.TargetRepository); _member = _memberFactory.CreateMember(Guid.NewGuid().ToString()); _gomee = _gomeeFactory.CreateGomee(_member); _target = _targetFactory.CreateGomeeTarget(_member, _gomee); using (var uow = new UnitOfWork()) { uow.MemberRepository.Add(_member); uow.GomeeRepository.Add(_gomee); uow.TargetRepository.Add(_target); uow.PersistAll(); _oldCount = uow.TargetRepository.Count(); } _targetDecorator.Remove(_unitOfWork.TargetRepository.Get(_target.Id)); _unitOfWork.PersistAll(); _newCount = _unitOfWork.TargetRepository.Count(); try { _loadedTarget = _unitOfWork.TargetRepository.Get(_target.Id); } catch (ArgumentException) { _loadedTarget = null; } }
public static void SetUp(TestContext context) { _unitOfWork = new UnitOfWork(); _memberFactory = new MemberFactory(); _gomeeFactory = new GomeeFactory(); _targetFactory = new TargetFactory(); _targetDecorator = new TargetDecorator(_targetFactory, _unitOfWork.TargetRepository); _member = _memberFactory.CreateMember(Guid.NewGuid().ToString()); _gomee = _gomeeFactory.CreateGomee(_member); _targets = new List<Target>(); using (var uow = new UnitOfWork()) { uow.MemberRepository.Add(_member); uow.GomeeRepository.Add(_gomee); var count = new Random().Next(2, 5); for (var i = 0; i < count; i++) { var target = _targetFactory.CreateGomeeTarget(_member, _gomee); _targets.Add(target); uow.TargetRepository.Add(target); } uow.PersistAll(); } _loadedTargets = _targetDecorator.GetFor(_unitOfWork.GomeeRepository.Get(_gomee.Id)); }
/// <summary> /// Конструктор для создания <see cref="BufferingTargetFactory{TKey,TItem}"/>. /// </summary> /// <param name="targetFactory">Фабрика, которая используется для создания целей, куда будут отправляться элементы из буфера.</param> /// <param name="exceptionHandler">Обработчик исключения, которые могут возникнуть при отпрвки элементов.</param> /// <param name="bifferConsumersCount">Кол-во потребителей буфера.</param> public BufferingTargetFactory(ITargetFactory <TKey, TItem> targetFactory, IExceptionHandler exceptionHandler, int bifferConsumersCount = 1) { Contract.Requires <ArgumentNullException>(targetFactory != null); Contract.Requires <ArgumentNullException>(exceptionHandler != null); Contract.Requires <ArgumentException>(bifferConsumersCount >= 1); _targetFactory = targetFactory; _exceptionHandler = exceptionHandler; _bifferConsumersCount = bifferConsumersCount; }
/// <summary> /// Конуструктор для создания <see cref="GroupingItemsTarget{TKey,TItem}"/>. /// </summary> /// <param name="targetGroupFactory">Фабрика создания целей, куда будут отправляться элементы с одинаковым ключом.</param> /// <param name="itemToKeyConverter">Извлекатель ключей из элементов. Ключи используются для выбора цели отправки.</param> public GroupingItemsTarget(ITargetFactory <TKey, TItem> targetGroupFactory, IConverter <TItem, TKey> itemToKeyConverter) { Contract.Requires <ArgumentNullException>(targetGroupFactory != null); Contract.Requires <ArgumentNullException>(itemToKeyConverter != null); _itemToKeyConverter = itemToKeyConverter; _targetGroupFactory = targetGroupFactory; _targets = new ConcurrentDictionary <TKey, ITarget <TItem> >(); }
/// <summary> /// Конструктор для создания <see cref="BatchingTargetFactory{TKey,TItem}"/>. /// </summary> /// <param name="targetFactory">Фабрика, которая используется для создания целей, куда будут отправляться пачки</param> /// <param name="batchSize">Размер пачки.</param> /// <param name="forceSendTimeout">Время по ситченеии которого элементы в буфере будут отправлены в цель, даже если <paramref name="batchSize"/> ещё не набран.</param> /// <param name="exceptionHandler">Обработчик искючений, которые могут возникнуть во время отправки пачки.</param> public BatchingTargetFactory(ITargetFactory <TKey, IReadOnlyCollection <TItem> > targetFactory, int batchSize, TimeSpan forceSendTimeout, IExceptionHandler exceptionHandler) { Contract.Requires <ArgumentNullException>(targetFactory != null); Contract.Requires <ArgumentException>(batchSize != 0); Contract.Requires <ArgumentException>(forceSendTimeout != TimeSpan.MinValue); Contract.Requires <ArgumentNullException>(exceptionHandler != null); _targetFactory = targetFactory; _batchSize = batchSize; _forceSendTimeout = forceSendTimeout; _exceptionHandler = exceptionHandler; }
public static void SetUp(TestContext context) { _memberFactory = new MemberFactory(); _gomeeFactory = new GomeeFactory(); _gomeeTargetFactory = new TargetFactory(); using (var uow = new UnitOfWork()) { _me = _memberFactory.CreateMember(Guid.NewGuid().ToString()); _he = _memberFactory.CreateMember(Guid.NewGuid().ToString()); uow.MemberRepository.Add(_me); uow.MemberRepository.Add(_he); _hisGomees = new List<Gomee>(); _mineGomees = new List<Gomee>(); _targets = new List<Target>(); var count = new Random().Next(2, 5); for (var i = 0; i < count; i++) { var mineGomee = _gomeeFactory.CreateGomee(_me); var mineTarget = _gomeeTargetFactory.CreateGomeeTarget(_me, mineGomee); var hisGome = _gomeeFactory.CreateGomee(_he); var hisTarget1 = _gomeeTargetFactory.CreateGomeeTarget(_me, hisGome); var hisTarget2 = _gomeeTargetFactory.CreateGomeeTarget(_me, hisGome); _mineGomees.Add(mineGomee); _hisGomees.Add(hisGome); _targets.Add(mineTarget); _targets.Add(hisTarget1); _targets.Add(hisTarget2); uow.GomeeRepository.Add(mineGomee); uow.GomeeRepository.Add(hisGome); uow.TargetRepository.Add(mineTarget); uow.TargetRepository.Add(hisTarget1); uow.TargetRepository.Add(hisTarget2); } uow.PersistAll(); } using (var uow = new UnitOfWork()) { var member = uow.MemberRepository.Get(_me.Id); _loadedGomees = uow.GomeeRepository.GetTheirsFor(member); } }
public DbContextTestFixture( IServiceCollection serviceCollection = null, IDependencyRetriever dependencyRetriever = null, IConstructorFilter constructorFilter = null, ITargetFactory <T> targetFactory = null) { var services = ServiceCollectionFactory.Create(serviceCollection ?? new ServiceCollection()) .AddDatabaseTestingUtilities <TContext>() .BuildServiceProvider(); this.DependencyRetriever = dependencyRetriever ?? services.GetService <IDependencyRetriever>(); this.ConstructorFilter = constructorFilter ?? services.GetService <IConstructorFilter>(); this.TargetFactory = targetFactory ?? new TargetFactory <T>(this.ConstructorFilter); this.Setup(); }
public static void SetUp(TestContext context) { _unitOfWork = new UnitOfWork(); _memberFactory = new MemberFactory(); _gomeeFactory = new GomeeFactory(); _targetFactory = new TargetFactory(); _targetDecorator = new TargetDecorator(_targetFactory, _unitOfWork.TargetRepository); _member = _memberFactory.CreateMember(Guid.NewGuid().ToString()); _gomee = _gomeeFactory.CreateGomee(_member); _target = _targetFactory.CreateGomeeTarget(_member, _gomee); using (var uow = new UnitOfWork()) { uow.MemberRepository.Add(_member); uow.GomeeRepository.Add(_gomee); uow.TargetRepository.Add(_target); uow.PersistAll(); } _loadedTarget = _targetDecorator.Get(_target.Id); }
public static void SetUp(TestContext context) { _unitOfWork = new UnitOfWork(); _repository = _unitOfWork.TargetRepository; _factory = new TargetFactory(); }
public FactoryTargetFilter(ITargetFactory <TTarget> targetFactory) { _targetFactory = targetFactory; }
void IBindConfigurator <TContext, TTarget> .SetTargetFactory(ITargetFactory <TTarget> targetFactory) { _filterFactory = () => new FactoryTargetFilter <TTarget>(targetFactory); }
private static Target Create(int projectID, string targetName) { TargetClass targetClass; if (!Enum.TryParse <TargetClass>(targetName, true, out targetClass)) { // handscoring targets must have GroupName thats starts with Handscoring (case-insensitive) if (targetName.StartsWith("Handscoring", StringComparison.InvariantCultureIgnoreCase)) { targetClass = TargetClass.Handscoring; } else { targetClass = TargetClass.General; } } MetaDataEntry e = ServiceLocator.Resolve <ConfigurationHolder>().GetFromMetaData(projectID, targetName, Variables.TargetType.ToString()); TargetType type; if (e == null || !Enum.TryParse <TargetType>(e.TextVal ?? "", true, out type)) { type = TargetType.Custom; } e = ServiceLocator.Resolve <ConfigurationHolder>().GetFromMetaData(projectID, targetName, Variables.XMLVersion.ToString()); XMLAdapter.AdapterType xmlVersion; if (e == null || !Enum.TryParse <XMLAdapter.AdapterType>(e.TextVal, true, out xmlVersion)) { xmlVersion = XMLAdapter.AdapterType.TDS; // default to proprietary } // if a transform is configured, load it FileTransformSpec transformSpec = null; e = ServiceLocator.Resolve <ConfigurationHolder>().GetFromMetaData(projectID, targetName, Variables.Transform.ToString()); if (e != null) { string xsltName = e.TextVal; bool validateTransform = Convert.ToBoolean(e.IntVal); // int val can be used to enforce validation. Default = 0/false. transformSpec = FileTransformSpec.Create(xsltName, validateTransform); } Target t = null; ITargetFactory f = ServiceLocator.Resolve <ITargetFactory>(); if (f == null) { throw new QAException("There is no ITargetFactory in the service repository.", QAException.ExceptionType.ConfigurationError); } t = f.Create(targetName, targetClass, type, xmlVersion, transformSpec); if (t == null) { throw new QAException(String.Format("Could not create Target: {0}", targetName), QAException.ExceptionType.ConfigurationError); } t.CreateDate = DateTime.Now; return(t); }
public DefaultTargetSelector(ITargetFactory factory, ITargetNameExtractor extractor) { _factory = factory; _extractor = extractor; }