コード例 #1
0
        public async Task WhenUnableToCheckpointWithStorageExceptionThenLogs()
        {
            // Arrange
            var context = MockPartitionContext.Create("0", () =>
            {
                throw new StorageException();
            });

            var processor =
                new ColdStorageProcessor(
                    n => _writerMock.Object,
                    Mock.Of <IColdStorageInstrumentationPublisher>(),
                    CancellationToken.None,
                    CircuitBreakerWarningLevel,
                    CircuitBreakerStallLevel,
                    CircuitBreakerStallInterval,
                    TimeSpan.FromSeconds(200),
                    "Test",
                    maxBlockSize: MaxBlockSize);

            _writerMock
            .Setup(w => w.WriteAsync(It.IsAny <IReadOnlyCollection <BlockData> >(), It.IsAny <CancellationToken>()))
            .Returns(() => TaskHelpers.CreateCompletedTask(true));

            await processor.OpenAsync(context);

            // Act
            await processor.ProcessEventsAsync(context, new[]
            {
                CreateEventData((byte)'a', 100),
                CreateEventData((byte)'b', 200),
                CreateEventData((byte)'c', 300),
                CreateEventData((byte)'d', 400),
            });
        }
コード例 #2
0
 public GivenAColdStorageProcessor()
 {
     _writerMock = new Mock<IBlobWriter>();
     _processor =
         new ColdStorageProcessor(
             n => _writerMock.Object,
             CircuitBreakerWarningLevel,
             CircuitBreakerStallLevel,
             CircuitBreakerStallInterval,
             TimeSpan.FromSeconds(200),
             "Test",
             maxBlockSize: MaxBlockSize);
 }
コード例 #3
0
 public GivenAColdStorageProcessor()
 {
     _writerMock = new Mock <IBlobWriter>();
     _processor  =
         new ColdStorageProcessor(
             n => _writerMock.Object,
             CircuitBreakerWarningLevel,
             CircuitBreakerStallLevel,
             CircuitBreakerStallInterval,
             TimeSpan.FromSeconds(200),
             "Test",
             maxBlockSize: MaxBlockSize);
 }
コード例 #4
0
        public GivenAColdStorageProcessor()
        {
            _loggerMock = new Mock <ILogger>();

            LoggerFactory.Register(Mock.Of <ILogFactory>(f => f.Create(It.IsAny <string>()) == _loggerMock.Object));

            _writerMock = new Mock <IBlobWriter>();
            _processor  =
                new ColdStorageProcessor(
                    n => _writerMock.Object,
                    Mock.Of <IColdStorageInstrumentationPublisher>(),
                    CancellationToken.None,
                    CircuitBreakerWarningLevel,
                    CircuitBreakerStallLevel,
                    CircuitBreakerStallInterval,
                    TimeSpan.FromSeconds(200),
                    "Test",
                    maxBlockSize: MaxBlockSize);
        }
コード例 #5
0
        public GivenAColdStorageProcessor()
        {
            _loggerMock = new Mock<ILogger>();

            LoggerFactory.Register(Mock.Of<ILogFactory>(f => f.Create(It.IsAny<string>()) == _loggerMock.Object));

            _writerMock = new Mock<IBlobWriter>();
            _processor =
                new ColdStorageProcessor(
                    n => _writerMock.Object,
                    Mock.Of<IColdStorageInstrumentationPublisher>(),
                    CancellationToken.None,
                    CircuitBreakerWarningLevel,
                    CircuitBreakerStallLevel,
                    CircuitBreakerStallInterval,
                    TimeSpan.FromSeconds(200),
                    "Test",
                    maxBlockSize: MaxBlockSize);
        }
コード例 #6
0
        public async Task WhenUnableToCheckpointWithStorageExceptionThenLogs()
        {
            // Arrange
            var context = MockPartitionContext.Create("0", () =>
                {
                    throw new StorageException();
                });
            
            var processor =
               new ColdStorageProcessor(
                   n => _writerMock.Object,
                   CircuitBreakerWarningLevel,
                   CircuitBreakerStallLevel,
                   CircuitBreakerStallInterval,
                   TimeSpan.FromSeconds(200),
                   "Test",
                   maxBlockSize: MaxBlockSize);

            _writerMock
                .Setup(w => w.WriteAsync(It.IsAny<IReadOnlyCollection<BlockData>>(), It.IsAny<CancellationToken>()))
                .Returns(() => TaskHelpers.CreateCompletedTask(true));
                
            await processor.OpenAsync(context);

            // Act
            await processor.ProcessEventsAsync(context, new[] 
                {
                    CreateEventData((byte)'a', 100),
                    CreateEventData((byte)'b', 200),
                    CreateEventData((byte)'c', 300),
                    CreateEventData((byte)'d', 400),
                });
        }