public void Fault_RaisedOnIdleTimeout() { var connection = new Mock <IConnection>(); using (var faultedEvent = new ManualResetEventSlim(initialState: false)) using (var plugin = new Plugin( filePath: @"C:\a\b\c.d", connection: connection.Object, process: Mock.Of <IPluginProcess>(), isOwnProcess: false, idleTimeout: Timeout.InfiniteTimeSpan)) { FaultedPluginEventArgs args = null; plugin.Faulted += (object sender, FaultedPluginEventArgs e) => { args = e; faultedEvent.Set(); }; var protocolErrorArgs = new ProtocolErrorEventArgs(new ProtocolException("test")); connection.Raise(x => x.Faulted += null, protocolErrorArgs); faultedEvent.Wait(); Assert.NotNull(args); Assert.Same(plugin, args.Plugin); Assert.Same(protocolErrorArgs.Exception, args.Exception); } }
public void Constructor_InitializesProperties() { var plugin = Mock.Of <IPlugin>(); var exception = new Exception(); var args = new FaultedPluginEventArgs(plugin, exception); Assert.Same(plugin, args.Plugin); Assert.Same(exception, args.Exception); }