Exemple #1
0
        /// <summary>
        /// Constructor.
        /// </summary>
        public UserQuestionDataUpdaterImplFactory(
            DatabaseContext dbContext,
            IQuestionStatusCalculator questionStatusCalculator,
            IQuestionGenerator questionGenerator,
            IGeneratedQuestionSeedGenerator seedGenerator,
            IRandomlySelectedQuestionSelector questionSelector,
            ITimeProvider timeProvider)
        {
            _generatedUserQuestionDataUpdater = new GeneratedUserQuestionDataUpdater
                                                (
                questionStatusCalculator,
                questionGenerator,
                seedGenerator,
                timeProvider
                                                );

            _randomlySelectedUserQuestionDataUpdater = new RandomlySelectedUserQuestionDataUpdater
                                                       (
                dbContext,
                questionStatusCalculator,
                questionSelector
                                                       );

            _defaultUserQuestionDataUpdater = new DefaultUserQuestionDataUpdater();
        }
 /// <summary>
 /// Constructor.
 /// </summary>
 public GeneratedUserQuestionDataUpdater(
     IQuestionStatusCalculator questionStatusCalculator,
     IQuestionGenerator questionGenerator,
     IGeneratedQuestionSeedGenerator seedGenerator,
     ITimeProvider timeProvider)
 {
     _questionStatusCalculator = questionStatusCalculator;
     _questionGenerator        = questionGenerator;
     _seedGenerator            = seedGenerator;
     _timeProvider             = timeProvider;
     _regenerateJobs           = new List <RegenerateQuestionJob>();
 }
Exemple #3
0
 /// <summary>
 /// Constructor.
 /// </summary>
 public UserQuestionDataUpdaterFactory(
     DatabaseContext dbContext,
     IQuestionStatusCalculator questionStatusCalculator,
     IQuestionGenerator questionGenerator,
     IGeneratedQuestionSeedGenerator seedGenerator,
     IRandomlySelectedQuestionSelector questionSelector,
     ITimeProvider timeProvider)
 {
     _dbContext = dbContext;
     _questionStatusCalculator = questionStatusCalculator;
     _questionGenerator        = questionGenerator;
     _seedGenerator            = seedGenerator;
     _questionSelector         = questionSelector;
     _timeProvider             = timeProvider;
 }
Exemple #4
0
        /// <summary>
        /// Creates a new GeneratedUserQuestionDataUpdater.
        /// </summary>
        private GeneratedUserQuestionDataUpdater CreateUserQuestionDataUpdater(
            IQuestionStatusCalculator questionStatusCalculator = null,
            IQuestionGenerator questionGenerator          = null,
            IGeneratedQuestionSeedGenerator seedGenerator = null)
        {
            var mockTimeProvider = new Mock <ITimeProvider>();

            mockTimeProvider
            .Setup(m => m.UtcNow)
            .Returns(GenerationTime);

            return(new GeneratedUserQuestionDataUpdater
                   (
                       questionStatusCalculator,
                       questionGenerator,
                       seedGenerator,
                       mockTimeProvider.Object
                   ));
        }