Skip to content

Commit c1bd018

Browse files
committed
---
yaml --- r: 143288 b: refs/heads/try2 c: df67942 h: refs/heads/master v: v3
1 parent 3108332 commit c1bd018

File tree

3 files changed

+87
-1
lines changed

3 files changed

+87
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
55
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: 037bf3757cf54e38544c494657ac88bc002b945c
8+
refs/heads/try2: df67942dccc33379051e66f075615e579f3bdb49
99
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try2/src/libstd/rt/io/net/tcp.rs

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -568,4 +568,61 @@ mod test {
568568
}
569569
}
570570

571+
#[cfg(test)]
572+
fn socket_name(addr: IpAddr) {
573+
do run_in_newsched_task {
574+
do spawntask_immediately {
575+
let listener = TcpListener::bind(addr);
576+
577+
assert!(listener.is_some());
578+
let mut listener = listener.unwrap();
579+
580+
// Make sure socket_name gives
581+
// us the socket we binded to.
582+
let so_name = listener.socket_name();
583+
assert!(so_name.is_some());
584+
assert_eq!(addr, so_name.unwrap());
585+
586+
}
587+
}
588+
}
589+
590+
#[cfg(test)]
591+
fn peer_name(addr: IpAddr) {
592+
do run_in_newsched_task {
593+
do spawntask_immediately {
594+
let mut listener = TcpListener::bind(addr);
595+
596+
listener.accept();
597+
}
598+
599+
do spawntask_immediately {
600+
let stream = TcpStream::connect(addr);
601+
602+
assert!(stream.is_some());
603+
let mut stream = stream.unwrap();
604+
605+
// Make sure peer_name gives us the
606+
// address/port of the peer we've
607+
// connected to.
608+
let peer_name = stream.peer_name();
609+
assert!(peer_name.is_some());
610+
assert_eq!(addr, peer_name.unwrap());
611+
}
612+
}
613+
}
614+
615+
#[test]
616+
fn socket_and_peer_name_ip4() {
617+
peer_name(next_test_ip4());
618+
socket_name(next_test_ip4());
619+
}
620+
621+
#[test]
622+
fn socket_and_peer_name_ip6() {
623+
// XXX: peer name is not consistent
624+
//peer_name(next_test_ip6());
625+
socket_name(next_test_ip6());
626+
}
627+
571628
}

branches/try2/src/libstd/rt/io/net/udp.rs

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,4 +263,33 @@ mod test {
263263
}
264264
}
265265
}
266+
267+
#[cfg(test)]
268+
fn socket_name(addr: IpAddr) {
269+
do run_in_newsched_task {
270+
do spawntask_immediately {
271+
let server = UdpSocket::bind(addr);
272+
273+
assert!(server.is_some());
274+
let mut server = server.unwrap();
275+
276+
// Make sure socket_name gives
277+
// us the socket we binded to.
278+
let so_name = server.socket_name();
279+
assert!(so_name.is_some());
280+
assert_eq!(addr, so_name.unwrap());
281+
282+
}
283+
}
284+
}
285+
286+
#[test]
287+
fn socket_name_ip4() {
288+
socket_name(next_test_ip4());
289+
}
290+
291+
#[test]
292+
fn socket_name_ip6() {
293+
socket_name(next_test_ip6());
294+
}
266295
}

0 commit comments

Comments
 (0)