Пример #1
0
 public BufferingNotificationChannel(
     IBufferGovernor bufferGovernor,
     IBufferSelector <T> bufferSelector,
     INotificationPipeline notificationPipeline,
     INotificationSerializer notificationSerializer,
     IBufferedNotificationStore bufferedNotificationStore)
 {
     this.bufferGovernor            = bufferGovernor;
     this.bufferSelector            = bufferSelector;
     this.notificationPipeline      = notificationPipeline;
     this.notificationSerializer    = notificationSerializer;
     this.bufferedNotificationStore = bufferedNotificationStore;
 }
        public BufferingNotificationChannelTests()
        {
            bufferGovernor = Substitute.For <IBufferGovernor>();
            bufferGovernor.Id.Returns(Guid.NewGuid());
            bufferSelector       = Substitute.For <IBufferSelector <Notification1> >();
            notificationPipeline = Substitute.For <INotificationPipeline>();
            notificationPipeline.Id.Returns(Guid.NewGuid());
            notificationSerializer    = Substitute.For <INotificationSerializer>();
            bufferedNotificationStore = Substitute.For <IBufferedNotificationStore>();

            FakeClock.Setup();

            sut = new BufferingNotificationChannel <Notification1>(bufferGovernor,
                                                                   bufferSelector, notificationPipeline, notificationSerializer,
                                                                   bufferedNotificationStore);
        }
Пример #3
0
        public BufferedNotificationProcessJobTests()
        {
            bufferGovernor1 = Substitute.For <IBufferGovernor>();
            bufferGovernor1.Id.Returns(Guid.NewGuid());
            inMemoryCrudRepository = new InMemoryCrudRepository();
            notificationSerializer = Substitute.For <INotificationSerializer>();
            notificationPipeline1  = Substitute.For <INotificationPipeline>();
            notificationPipeline1.Id.Returns(Guid.NewGuid());
            notificationPipeline2 = Substitute.For <INotificationPipeline>();
            notificationPipeline2.Id.Returns(Guid.NewGuid());

            notificationSerializer.FromJson(null).ReturnsForAnyArgs(ci =>
                                                                    new TestNotification()
            {
                Data     = ci.ArgAt <SerializedNotification>(0).NotificationJson,
                TypeName = ci.ArgAt <SerializedNotification>(0).NotificationClassName
            });

            sut = new BufferedNotificationProcessJob(new[] { bufferGovernor1 }, inMemoryCrudRepository,
                                                     new[] { notificationPipeline1, notificationPipeline2 }, notificationSerializer);
        }