internal void AddSinkManager(SinkManager manager) { lock (_managers) { _managers.Add(manager); foreach (var tagger in _taggers.Values) { manager.AddFactory(tagger.Factory); } } }
public void CallsToSink_AddFactory_CriticalException_NotSuppressed() { // Arrange var mockRegister = new Mock <ISinkManagerRegister>(); var mockSink = new Mock <ITableDataSink>(); var sinkManager = new SinkManager(mockRegister.Object, mockSink.Object); mockSink.Setup(x => x.AddFactory(It.IsAny <ITableEntriesSnapshotFactory>(), false)) .Throws(new StackOverflowException("add factory custom error")); // Act & assert Action act = () => sinkManager.AddFactory(CreateSnapshotFactory()); act.Should().ThrowExactly <StackOverflowException>().And.Message.Should().Be("add factory custom error"); }
public void CallsToSink_AddFactory_NonCriticalException_Suppressed() { // Arrange var mockRegister = new Mock <ISinkManagerRegister>(); var mockSink = new Mock <ITableDataSink>(); var sinkManager = new SinkManager(mockRegister.Object, mockSink.Object); mockSink.Setup(x => x.AddFactory(It.IsAny <ITableEntriesSnapshotFactory>(), false)) .Throws(new InvalidCastException("add factory custom error")); // Act sinkManager.AddFactory(CreateSnapshotFactory()); // Assert mockSink.Verify(x => x.AddFactory(It.IsAny <ITableEntriesSnapshotFactory>(), false), Times.Once); }