diff options
| author | Ivan Nejgebauer <inejge@gmail.com> | 2016-07-08 13:48:46 +0200 |
|---|---|---|
| committer | Ivan Nejgebauer <inejge@gmail.com> | 2016-07-08 13:48:46 +0200 |
| commit | 66bf1092a58fb50279d263ba9e831435ace8e844 (patch) | |
| tree | da7e4a699a2dde3bb09747697d89611cbc682778 | |
| parent | 0314d179aa07905cc3bd4ec3206be28ff11696f9 (diff) | |
| download | rust-66bf1092a58fb50279d263ba9e831435ace8e844.tar.gz rust-66bf1092a58fb50279d263ba9e831435ace8e844.zip | |
Add test for std::net::lookup_host() duplicates
| -rw-r--r-- | src/libstd/sys/common/net.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/libstd/sys/common/net.rs b/src/libstd/sys/common/net.rs index 26925b12f93..8b7af17f92b 100644 --- a/src/libstd/sys/common/net.rs +++ b/src/libstd/sys/common/net.rs @@ -601,3 +601,22 @@ impl fmt::Debug for UdpSocket { .finish() } } + +#[cfg(test)] +mod tests { + use prelude::v1::*; + + use super::*; + use collections::HashMap; + + #[test] + fn no_lookup_host_duplicates() { + let mut addrs = HashMap::new(); + let lh = match lookup_host("localhost") { + Ok(lh) => lh, + Err(e) => panic!("couldn't resolve `localhost': {}", e) + }; + let _na = lh.map(|sa| *addrs.entry(sa).or_insert(0) += 1).count(); + assert!(addrs.values().filter(|&&v| v > 1).count() == 0); + } +} |
