Exemplo n.º 1
0
        public void Should_set_next_attempt_based_on_num_calls(int calls, int minutes, RuleResult result, RuleJobResult jobResult)
        {
            var actionData = new RuleJobData();
            var actionName = "MyAction";

            var @event = CreateEvent(calls, actionName, actionData);

            var requestElapsed = TimeSpan.FromMinutes(1);
            var requestDump    = "Dump";

            SetupSender(@event, requestDump, result, requestElapsed);
            SetupPendingEvents(@event);

            var sut = new RuleDequeuer(
                ruleService,
                ruleEventRepository,
                log,
                clock);

            sut.Next();
            sut.Dispose();

            Instant?nextCall = null;

            if (minutes > 0)
            {
                nextCall = now.Plus(Duration.FromMinutes(minutes));
            }

            VerifyRepositories(@event, requestDump, result, jobResult, requestElapsed, nextCall);
        }
Exemplo n.º 2
0
        public RuleDequeuerTests()
        {
            A.CallTo(() => clock.GetCurrentInstant()).Returns(now);

            sut = new RuleDequeuer(
                ruleService,
                ruleEventRepository,
                log,
                clock);
        }