public async Task RepeatSendMessage() { this.RegisterType <BadServerSaltHandler>(); this.BuildClientSettingsProps(); const int BadMsgId = 1; var request = new RequestPing(); this.Resolve <Mock <ISessionWriter> >() .BuildSuccessSave(); var mRequestService = this.Resolve <Mock <IRequestService> >(); mRequestService.Setup(rs => rs.GetRequestToReply(BadMsgId)) .Returns(() => request); var requestEncoder = this.Resolve <BadServerSaltHandler>(); var channel = new EmbeddedChannel(requestEncoder); var badServerSalt = new TBadServerSalt { BadMsgId = BadMsgId, NewServerSalt = Random.NextLong() }; // --- channel.WriteInbound(badServerSalt); await Task.Delay(500).ConfigureAwait(false); // --- Assert.Equal(request, channel.ReadOutbound <object>()); }
public void BadServerSaltHandle() { this.RegisterType <BadServerSaltHandler>(); var mSettings = this.BuildClientSettingsProps(); var requestEncoder = this.Resolve <BadServerSaltHandler>(); var channel = new EmbeddedChannel(requestEncoder); var badServerSalt = new TBadServerSalt { NewServerSalt = Random.NextLong() }; // --- channel.WriteInbound(badServerSalt); // --- Assert.Null(channel.ReadOutbound <object>()); Assert.Equal(BitConverter.GetBytes(badServerSalt.NewServerSalt), mSettings.Object.ClientSession.ServerSalt); }