public static AmqpTestFramework WithDefaultProtocolHeaderNegotiation(this AmqpTestFramework testFramework) { return(testFramework .On <ProtocolHeader>((connectionId, frame) => testFramework.Send(connectionId, new MethodFrame <Connection.Start>(frame.Channel, new Connection.Start { VersionMajor = Octet.From((byte)frame.Message.Version.Major), VersionMinor = Octet.From((byte)frame.Message.Version.Minor), Locales = Longstr.From(Encoding.UTF8.GetBytes("en_US")), Mechanisms = Longstr.From(Encoding.UTF8.GetBytes("PLAIN")), })))); }
public static AmqpTestFramework WithDefaultSecurityNegotiation(this AmqpTestFramework testFramework, TimeSpan heartbeatInterval = default) { heartbeatInterval = heartbeatInterval == default ? TimeSpan.FromSeconds(DefaultHeartbeatIntervalInSeconds) : heartbeatInterval; return(testFramework .On <Connection.StartOk>((connectionId, frame) => testFramework.Send(connectionId, new MethodFrame <Connection.Secure>(frame.Channel, new Connection.Secure { Challenge = Longstr.From(Encoding.UTF8.GetBytes("challenge")) }))) .On <Connection.SecureOk>((connectionId, frame) => testFramework.Send(connectionId, new MethodFrame <Connection.Tune>(frame.Channel, new Connection.Tune { ChannelMax = Short.From(0), FrameMax = Long.From(0), Heartbeat = Short.From((short)(heartbeatInterval.TotalMilliseconds / 1000)) })))); }