public void Start_AuthentificationTimout_ShouldThrowEvent() { Mock <IMessageReader> reader = new Mock <IMessageReader>(); Mock <IMessageWriter> messageWritter = new Mock <IMessageWriter>(); ECKeyPair key = new KeyPairGenerator().Generate(); Peer p = new Peer(new TcpClient(), reader.Object, messageWritter.Object, 1234, key, 0); p.AuthTimeout = 100; AuthFinishedArgs authFinishedArgs = null; p.AuthFinished += (sender, args) => { authFinishedArgs = args as AuthFinishedArgs; }; p.Start(); Task.Delay(200).Wait(); Assert.NotNull(authFinishedArgs); Assert.False(authFinishedArgs.IsAuthentified); Assert.True(authFinishedArgs.Reason == RejectReason.AuthTimeout); Assert.False(p.IsAuthentified); }
public void Start_AuthentificationNoTimout_ShouldThrowEvent() { int localPort = 1234; int remotePort = 1235; Mock <IMessageReader> reader = new Mock <IMessageReader>(); Mock <IMessageWriter> messageWritter = new Mock <IMessageWriter>(); ECKeyPair key = new KeyPairGenerator().Generate(); Peer p = new Peer(new TcpClient(), reader.Object, messageWritter.Object, localPort, key, 0); p.AuthTimeout = 100; AuthFinishedArgs authFinishedArgs = null; p.AuthFinished += (sender, args) => { authFinishedArgs = args as AuthFinishedArgs; }; p.Start(); var(_, handshake) = NetworkTestHelpers.CreateKeyPairAndHandshake(remotePort); p.AuthentifyWith(handshake); Task.Delay(200).Wait(); Assert.Null(authFinishedArgs); Assert.True(p.IsAuthentified); }