Пример #1
0
 /// <summary>
 /// Создать баланс работы пчёл-маток, работающих в 40 раз быстрее.
 /// </summary>
 /// <param name="baseBalance">Исходный баланс.</param>
 public FastQueenBalance(
     IQueenBeeBalance baseBalance)
 {
     this.baseBalance      = baseBalance;
     this.TimeToProduceBee = TimeSpan.FromMilliseconds(
         this.baseBalance.TimeToProduceBee.TotalMilliseconds / 5);
 }
Пример #2
0
        /// <summary>
        /// Инициализировать временные интервалы различных операций.
        /// </summary>
        /// <param name="balance">Баланс пасеки.</param>
        private void InitializeOperationTimes(IApiaryBalance balance)
        {
            this.timeToWork       = (int)balance.WorkerBalance.TimeToHarvestHoney.TotalMilliseconds;
            this.timeToRest       = (int)balance.WorkerBalance.TimeToRestInBeehive.TotalMilliseconds;
            this.timeToCheck      = (int)balance.GuardBalance.TimeToCheckOneBee.TotalMilliseconds;
            this.timeToProduceBee = (int)balance.QueenBalance.TimeToProduceBee.TotalMilliseconds;

            this.queenBalance = balance.QueenBalance;
        }
        /// <summary>
        /// Общая настройка тестов пчелы-матки.
        /// </summary>
        public QueenBeeTests()
        {
            FastApiaryBalance balanceFast = new FastApiaryBalance(new DefaultApiaryBalance());

            this.queenBalance = balanceFast.QueenBalance;

            ServiceLocator.Instance.RegisterService <IApiaryBalance>(balanceFast);
            ServiceLocator.Instance.RegisterService <IRandomizer>(new Randomizer());
            ServiceLocator.Instance.RegisterService <IBeeFactory>(new DefaultBeeFactory());
        }
 /// <summary>
 /// Создать баланс работы пчёл-маток, не производящих маток.
 /// </summary>
 /// <param name="baseBalance">Исходный баланс.</param>
 public QueenBalanceDontProducingQueens(
     IQueenBeeBalance baseBalance)
 {
     this.baseBalance = baseBalance;
 }