public void SoulseekClientDisconnectedEventArgs_Instantiates_With_The_Given_Data_And_Exception(string message, Exception ex) { var s = new SoulseekClientDisconnectedEventArgs(message, ex); Assert.Equal(message, s.Message); Assert.Equal(ex, s.Exception); }
public void Disconnects_When_Kicked_From_Server() { var handlerMock = new Mock <IServerMessageHandler>(); using (var s = new SoulseekClient("127.0.0.1", 1, serverMessageHandler: handlerMock.Object)) { s.SetProperty("State", SoulseekClientStates.Connected | SoulseekClientStates.LoggedIn); SoulseekClientDisconnectedEventArgs e = null; s.Disconnected += (sender, args) => e = args; handlerMock.Raise(m => m.KickedFromServer += null, EventArgs.Empty); Assert.True(e.Exception is KickedFromServerException); } }
public void ChangeState_Fires_Disconnected_Event_When_Transitioning_To_Disconnected(string message, Exception exception) { using (var s = new SoulseekClient()) { SoulseekClientDisconnectedEventArgs args = null; s.Disconnected += (sender, e) => args = e; var ex = Record.Exception(() => s.InvokeMethod("ChangeState", SoulseekClientStates.Disconnected, message, exception)); Assert.Null(ex); Assert.NotNull(args); Assert.Equal(message, args.Message); Assert.Equal(exception, args.Exception); } }