Feed events socket into the server

This commit is contained in:
Greg Fitzgerald 2018-05-15 11:19:58 -06:00
parent cfe8b3fc55
commit 3f38c0a245
3 changed files with 16 additions and 8 deletions

View File

@ -123,7 +123,7 @@ fn main() {
let gossip_sock = UdpSocket::bind(&gossip_addr).unwrap(); let gossip_sock = UdpSocket::bind(&gossip_addr).unwrap();
let replicate_sock = UdpSocket::bind(&replicate_addr).unwrap(); let replicate_sock = UdpSocket::bind(&replicate_addr).unwrap();
let _events_sock = UdpSocket::bind(&events_addr).unwrap(); let events_sock = UdpSocket::bind(&events_addr).unwrap();
let pubkey = KeyPair::new().pubkey(); let pubkey = KeyPair::new().pubkey();
let d = ReplicatedData::new( let d = ReplicatedData::new(
pubkey, pubkey,
@ -144,6 +144,7 @@ fn main() {
Some(Duration::from_millis(1000)), Some(Duration::from_millis(1000)),
d, d,
serve_sock, serve_sock,
events_sock,
broadcast_socket, broadcast_socket,
respond_socket, respond_socket,
gossip_sock, gossip_sock,

View File

@ -22,6 +22,7 @@ impl Server {
tick_duration: Option<Duration>, tick_duration: Option<Duration>,
me: ReplicatedData, me: ReplicatedData,
requests_socket: UdpSocket, requests_socket: UdpSocket,
_events_socket: UdpSocket,
broadcast_socket: UdpSocket, broadcast_socket: UdpSocket,
respond_socket: UdpSocket, respond_socket: UdpSocket,
gossip: UdpSocket, gossip: UdpSocket,

View File

@ -177,16 +177,18 @@ mod tests {
fn test_thin_client() { fn test_thin_client() {
logger::setup(); logger::setup();
let gossip = UdpSocket::bind("0.0.0.0:0").unwrap(); let gossip = UdpSocket::bind("0.0.0.0:0").unwrap();
let serve = UdpSocket::bind("0.0.0.0:0").unwrap(); let requests_socket = UdpSocket::bind("0.0.0.0:0").unwrap();
serve.set_read_timeout(Some(Duration::new(1, 0))).unwrap(); requests_socket
let _events_socket = UdpSocket::bind("0.0.0.0:0").unwrap(); .set_read_timeout(Some(Duration::new(1, 0)))
let addr = serve.local_addr().unwrap(); .unwrap();
let events_socket = UdpSocket::bind("0.0.0.0:0").unwrap();
let addr = requests_socket.local_addr().unwrap();
let pubkey = KeyPair::new().pubkey(); let pubkey = KeyPair::new().pubkey();
let d = ReplicatedData::new( let d = ReplicatedData::new(
pubkey, pubkey,
gossip.local_addr().unwrap(), gossip.local_addr().unwrap(),
"0.0.0.0:0".parse().unwrap(), "0.0.0.0:0".parse().unwrap(),
serve.local_addr().unwrap(), requests_socket.local_addr().unwrap(),
); );
let alice = Mint::new(10_000); let alice = Mint::new(10_000);
@ -194,7 +196,7 @@ mod tests {
let bob_pubkey = KeyPair::new().pubkey(); let bob_pubkey = KeyPair::new().pubkey();
let exit = Arc::new(AtomicBool::new(false)); let exit = Arc::new(AtomicBool::new(false));
let mut local = serve.local_addr().unwrap(); let mut local = requests_socket.local_addr().unwrap();
local.set_port(0); local.set_port(0);
let broadcast_socket = UdpSocket::bind(local).unwrap(); let broadcast_socket = UdpSocket::bind(local).unwrap();
let respond_socket = UdpSocket::bind(local.clone()).unwrap(); let respond_socket = UdpSocket::bind(local.clone()).unwrap();
@ -204,7 +206,8 @@ mod tests {
alice.last_id(), alice.last_id(),
Some(Duration::from_millis(30)), Some(Duration::from_millis(30)),
d, d,
serve, requests_socket,
events_socket,
broadcast_socket, broadcast_socket,
respond_socket, respond_socket,
gossip, gossip,
@ -251,6 +254,7 @@ mod tests {
let mut local = leader_serve.local_addr().unwrap(); let mut local = leader_serve.local_addr().unwrap();
local.set_port(0); local.set_port(0);
let events_socket = UdpSocket::bind("0.0.0.0:0").unwrap();
let broadcast_socket = UdpSocket::bind(local).unwrap(); let broadcast_socket = UdpSocket::bind(local).unwrap();
let respond_socket = UdpSocket::bind(local.clone()).unwrap(); let respond_socket = UdpSocket::bind(local.clone()).unwrap();
@ -260,6 +264,7 @@ mod tests {
Some(Duration::from_millis(30)), Some(Duration::from_millis(30)),
leader_data, leader_data,
leader_serve, leader_serve,
events_socket,
broadcast_socket, broadcast_socket,
respond_socket, respond_socket,
leader_gossip, leader_gossip,
@ -411,6 +416,7 @@ mod tests {
None, None,
leader.0.clone(), leader.0.clone(),
leader.2, leader.2,
leader.4,
broadcast_socket, broadcast_socket,
respond_socket, respond_socket,
leader.1, leader.1,