Пример #1
0
 private void AfterDeserialized(StreamingContext streamingContext)
 {
     State.Game   = this;
     _delayer     = (IDelayer)streamingContext.Context;
     _storyTeller = (IRandomStoryTeller)streamingContext.Context;
     _statShower  = (IStatShower)streamingContext.Context;
 }
Пример #2
0
 public MessagePump(WorkerInvoker workerInvoker, QueueReader queueReader, IDelayer delayer, ILogger <MessagePump> logger)
 {
     _workerInvoker = workerInvoker;
     _queueReader   = queueReader;
     _delayer       = delayer;
     _logger        = logger;
 }
Пример #3
0
 public Game(string name, IGameStateBannerProvider gameStateBannerProvider, int id, IDelayer delayer, IRandomStoryTeller storyTeller, long chatId, IStatShower statShower)
 {
     _storyTeller            = storyTeller;
     _delayer                = delayer;
     _name                   = name;
     GameStateBannerProvider = gameStateBannerProvider;
     _id         = id;
     _chatId     = chatId;
     _statShower = statShower;
 }
Пример #4
0
        public async Task <IActionResult> GenDelayJob([FromServices] IDelayer <TestJob> delayer)
        {
            var jobid = Guid.NewGuid().ToString();

            var delaySeconds = new Random().Next(1, 10);
            await delayer.PutDealyJob(
                new TestJob(TimeSpan.FromSeconds(delaySeconds), "abcde====" + jobid, jobid));

            return(Content($"{jobid},{delaySeconds}s后执行,time:{DateTime.Now:yyyy-MM-dd HH:mm:ss}"));
        }
Пример #5
0
        protected DataStreamingService(IGrpcWrapper <TRequestBatch, TResponse> grpcWrapper, IDelayer delayer, IConfigurationService configSvc, IAgentHealthReporter agentHealthReporter, IAgentTimerService agentTimerService)
        {
            _grpcWrapper       = grpcWrapper;
            _delayer           = delayer;
            _configSvc         = configSvc;
            _agentTimerService = agentTimerService;

            _cancellationTokenSource = new CancellationTokenSource();
            _agentHealthReporter     = agentHealthReporter;

            //This will ensure that anything that depends on the token will not run until
            //we are ready (ie. we have called Start which will generate a new token).
            _cancellationTokenSource.Cancel();
        }
Пример #6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="DispatcherHub" /> class.
        /// </summary>
        /// <param name="threadContext">The thread context.</param>
        /// <param name="listeners">The listeners.</param>
        /// <param name="eventDelayer">The event delayer.</param>
        /// <param name="work">The work.</param>
        public DispatcherHub(
            IThreadContext threadContext,
            IEnumerable <IListener> listeners,
            IDelayer <EventDispatcherData> eventDelayer,
            IUnitOfWork work)
        {
            Check.NotNull(() => work);
            this.syncListeners = Check.NotNull(() => listeners);

            // breaking the circular reference here.
            work.DispatcherHub = this;
            this.eventDelayer  = Check.NotNull(() => eventDelayer);
            this.threadContext = Check.NotNull(() => threadContext);
        }
        public DeliciousQueryProviderTest()
        {
            delayer = mocks.StrictMock<IDelayer>();
            translatorFactory = mocks.StrictMock<IQueryTranslatorFactory>();
            translator = mocks.StrictMock<IQueryTranslator>();
            requestFactory = mocks.StrictMock<IHttpWebRequestFactory>();
            request = mocks.StrictMock<HttpWebRequest>();
            response = mocks.StrictMock<HttpWebResponse>();

            stream.Write(documentBytes, 0, documentBytes.Length);
            stream.Seek(0, SeekOrigin.Begin);

            provider = new DeliciousQueryProvider(requestFactory, delayer, translatorFactory);
        }
Пример #8
0
 internal UnitTestFramework(
     ISutCreator sutCreator,
     ITellWaiter tellWaiter,
     IWaiter childWaiter,
     IWaiter exceptionWaiter,
     IDependencyResolverAdder resolverAdder,
     ITestProbeDependencyResolverAdder testProbeDependencyResolverAdder,
     ITestProbeCreator testProbeCreator,
     IResolvedTestProbeStore resolvedProbeStore,
     ITestProbeChildActorCreator testProbeChildActorCreator,
     ITestProbeChildHandlersMapper testProbeChildHandlersMapper,
     ISutSupervisorStrategyGetter sutSupervisorStrategyGetter,
     ITestProbeParentActorCreator testProbeParentActorCreator,
     IDelayer delayer,
     ImmutableDictionary <Type, Func <object, object> > parentHandlers,
     ImmutableDictionary <(Type, Type), Func <object, object> > childHandlers,
Пример #9
0
        public TestBase() : base(AkkaConfig.Config)
        {
            Func <Type> generateType = TestHelper.GetRandomTypeGenerator();

            // Create mocks
            SutCreatorMock                       = new Mock <ISutCreator>();
            TellWaiterMock                       = new Mock <ITellWaiter>();
            ChildWaiterMock                      = new Mock <IWaiter>();
            ExceptionWaiterMock                  = new Mock <IWaiter>();
            DependencyResolverAdderMock          = new Mock <IDependencyResolverAdder>();
            TestProbeDependencyResolverAdderMock = new Mock <ITestProbeDependencyResolverAdder>();
            ResolvedTestProbeStoreMock           = new Mock <IResolvedTestProbeStore>();
            TestProbeChildActorCreatorMock       = new Mock <ITestProbeChildActorCreator>();
            TestProbeCreatorMock                 = new Mock <ITestProbeCreator>();
            TestProbeHandlersMapperMock          = new Mock <ITestProbeChildHandlersMapper>();
            TestProbeChildActorMock              = new Mock <ITestProbeChildActor>();
            SutSupervisorStrategyGetterMock      = new Mock <ISutSupervisorStrategyGetter>();
            TestProbeParentActorCreatorMock      = new Mock <ITestProbeParentActorCreator>();
            TestProbeParentActorMock             = new Mock <ITestProbeParentActor>();
            DelayerMock = new Mock <IDelayer>();

            // Create objects passed into sut constructor
            SutCreator                       = SutCreatorMock.Object;
            TellWaiter                       = TellWaiterMock.Object;
            ChildWaiter                      = ChildWaiterMock.Object;
            ExceptionWaiter                  = ChildWaiterMock.Object;
            DependencyResolverAdder          = DependencyResolverAdderMock.Object;
            TestProbeDependencyResolverAdder = TestProbeDependencyResolverAdderMock.Object;
            TestProbeCreator                 = TestProbeCreatorMock.Object;
            ResolvedTestProbeStore           = ResolvedTestProbeStoreMock.Object;
            TestProbeChildActorCreator       = TestProbeChildActorCreatorMock.Object;
            TestProbeHandlersMapper          = TestProbeHandlersMapperMock.Object;
            SutSupervisorStrategyGetter      = SutSupervisorStrategyGetterMock.Object;
            TestProbeParentActorCreator      = TestProbeParentActorCreatorMock.Object;
            Delayer        = DelayerMock.Object;
            ParentHandlers = ImmutableDictionary <Type, Func <object, object> >
                             .Empty
                             .Add((generateType()), message => TestHelper.Generate <object>());

            ChildHandlers = ImmutableDictionary <(Type, Type), Func <object, object> >
                            .Empty
                            .Add((generateType(), generateType()), message => TestHelper.Generate <object>());

            Decider = exception => TestHelper.GenerateEnum <Directive>();
            Props   = Props.Create <DummyActor>();
            PropsWithSupervisorStrategy = Props
                                          .Create <DummyActor>()
                                          .WithSupervisorStrategy(new AllForOneStrategy(
                                                                      TestHelper.GenerateNumber(),
                                                                      TestHelper.GenerateNumber(),
                                                                      exception => TestHelper.Generate <Directive>()));
            ExpectedChildCount     = TestHelper.GenerateNumber();
            ExpectedExceptionCount = TestHelper.GenerateNumber();

            // Create objects passed into sut methods
            Message   = TestHelper.Generate <object>();
            ChildName = TestHelper.GenerateString();
            ChildNameWithoutSupervisor = TestHelper.GenerateString();
            Sender        = new Mock <IActorRef>().Object;
            DelayDuration = TestHelper.Generate <TimeSpan>();

            // Create objects returned by mocks
            MappedChildHandlers = ImmutableDictionary <Type, ImmutableDictionary <Type, Func <object, object> > >
                                  .Empty
                                  .Add(generateType(), ImmutableDictionary <Type, Func <object, object> >
                                       .Empty
                                       .Add(generateType(), mess => TestHelper.Generate <object>()));

            SutActor                   = ActorOfAsTestActorRef <DummyActor>();
            ResolvedType               = generateType();
            ResolvedTestProbe          = CreateTestProbe();
            ResolvedSupervisorStrategy = new AllForOneStrategy(
                TestHelper.GenerateNumber(),
                TestHelper.GenerateNumber(),
                exception => TestHelper.Generate <Directive>());
            SutSupervisorStrategy = new OneForOneStrategy(
                TestHelper.GenerateNumber(),
                TestHelper.GenerateNumber(),
                exception => TestHelper.Generate <Directive>());
            TestProbeParentActor                    = TestProbeParentActorMock.Object;
            TestProbeParentActorTestProbe           = CreateTestProbe();
            TestProbeParentActorRef                 = TestProbeParentActorTestProbe.Ref;
            TestProbeParentActorUnhandledExceptions = TestHelper.GenerateMany <Exception>(() => TestHelper.GenerateException());

            // Set up mocks
            TestProbeParentActorMock
            .SetupGet(actor => actor.Ref)
            .Returns(TestProbeParentActorRef);
            TestProbeParentActorMock
            .SetupGet(actor => actor.TestProbe)
            .Returns(TestProbeParentActorTestProbe);
            TestProbeParentActorMock
            .SetupGet(actor => actor.UnhandledExceptions)
            .Returns(TestProbeParentActorUnhandledExceptions);

            TestProbeParentActorCreatorMock
            .SetupSequence(creator => creator.Create(TestProbeCreator, ExceptionWaiter, this, Decider, ParentHandlers))
            .Returns(TestProbeParentActor)
            .Returns(Mock.Of <ITestProbeParentActor>());

            SutCreatorMock
            .Setup(creator => creator.Create <DummyActor>(
                       ChildWaiterMock.Object,
                       this,
                       Props,
                       ExpectedChildCount,
                       TestProbeParentActorRef))
            .Returns(() => SutActor);

            ResolvedTestProbeStoreMock
            .Setup(store => store.FindResolvedType(SutActor, ChildName))
            .Returns(() => ResolvedType);
            ResolvedTestProbeStoreMock
            .Setup(store => store.FindResolvedTestProbe(SutActor, ChildName))
            .Returns(() => ResolvedTestProbe);
            ResolvedTestProbeStoreMock
            .Setup(store => store.FindResolvedSupervisorStrategy(SutActor, ChildName))
            .Returns(() => ResolvedSupervisorStrategy);
            ResolvedTestProbeStoreMock
            .Setup(store => store.FindResolvedSupervisorStrategy(SutActor, ChildNameWithoutSupervisor))
            .Returns(() => null);

            TestProbeHandlersMapperMock
            .Setup(mapper => mapper.Map(ChildHandlers))
            .Returns(() => MappedChildHandlers);

            SutSupervisorStrategyGetterMock
            .Setup(getter => getter.Get(SutActor.UnderlyingActor))
            .Returns(() => SutSupervisorStrategy);
        }
 public SpanStreamingService(IGrpcWrapper <SpanBatch, RecordStatus> grpcWrapper, IDelayer delayer, IConfigurationService configSvc, IAgentHealthReporter agentHealthReporter, IAgentTimerService agentTimerService)
     : base(grpcWrapper, delayer, configSvc, agentHealthReporter, agentTimerService)
 {
 }
 public BackgroundTaskStarter(IDelayer delayer)
 {
     _delayer = delayer ?? throw new ArgumentNullException(nameof(delayer));
 }
 public ContinuousScreenshotControllerFactory(IScreenshotService screenshotService, IDelayer delayer)
 {
     _screenshotService = screenshotService;
     _delayer           = delayer;
 }
 /// <summary>
 /// Creates a new DeliciousQueryProvider.
 /// </summary>
 /// <param name="requestFactory">The factory for creating HttpWebRequest objects.</param>
 /// <param name="delayer">The IDelayer responsible for timing HTTP requests.</param>
 /// <param name="translatorFactory">The factory for creating IQueryTranslator objects.</param>
 public DeliciousQueryProvider(IHttpWebRequestFactory requestFactory, IDelayer delayer, IQueryTranslatorFactory translatorFactory)
 {
     mRequestFactory = requestFactory;
     mDelayer = delayer;
     mTranslatorFactory = translatorFactory;
 }