Remove commented out code

This commit is contained in:
Carl Lerche
2017-06-09 12:07:56 -07:00
parent fa53d9556b
commit 73de7918de

View File

@@ -261,155 +261,6 @@ fn gen_string(g: &mut StdRng, min: usize, max: usize) -> String {
String::from_utf8(bytes).unwrap()
}
/*
impl Arbitrary for HeaderSet {
fn arbitrary<G: Gen>(g: &mut G) -> Self {
let mut source: Vec<Header> = vec![];
for _ in 0..2000 {
source.push(Header::arbitrary(g));
}
// Actual headers
let num: usize = g.gen_range(40, 300);
let mut actual: Vec<Header> = vec![];
let skew: i32 = g.gen_range(1, 5);
while actual.len() < num {
let x: f64 = g.gen_range(0.0, 1.0);
let x = x.powi(skew);
let i = (x * source.len() as f64) as usize;
actual.push(source[i].clone());
}
HeaderSet {
headers: actual,
}
}
fn shrink(&self) -> Box<Iterator<Item=HeaderSet>> {
let headers = self.headers.clone();
let iter = (0..headers.len()+1).map(move |i| {
HeaderSet { headers: headers[..0].to_vec() }
});
Box::new(iter)
}
}
impl Arbitrary for Header {
fn arbitrary<G: Gen>(g: &mut G) -> Self {
use http::StatusCode;
use http::method::{self, Method};
if g.gen_weighted_bool(10) {
match g.next_u32() % 5 {
0 => {
let value = String::arbitrary(g);
Header::Authority(value.into())
}
1 => {
let method = match g.next_u32() % 6 {
0 => method::GET,
1 => method::POST,
2 => method::PUT,
3 => method::PATCH,
4 => method::DELETE,
5 => {
let n = g.gen::<usize>() % 7;
let bytes: Vec<u8> = (0..n).map(|_| {
g.choose(b"ABCDEFGHIJKLMNOPQRSTUVWXYZ").unwrap().clone()
}).collect();
Method::from_bytes(&bytes).unwrap()
}
_ => unreachable!(),
};
Header::Method(method)
}
2 => {
let value = match g.next_u32() % 2 {
0 => "http",
1 => "https",
_ => unreachable!(),
};
Header::Scheme(value.into())
}
3 => {
let value = match g.next_u32() % 100 {
0 => "/".to_string(),
1 => "/index.html".to_string(),
_ => String::arbitrary(g),
};
Header::Path(value.into())
}
4 => {
let status = (g.gen::<u16>() % 500) + 100;
Header::Status(StatusCode::from_u16(status).unwrap())
}
_ => unreachable!(),
}
} else {
let mut name = HeaderName2::arbitrary(g);
let mut value = HeaderValue2::arbitrary(g);
if g.gen_weighted_bool(30) {
value.0.set_sensitive(true);
}
Header::Field { name: name.0, value: value.0 }
}
}
}
#[derive(Clone)]
struct HeaderName2(HeaderName);
#[derive(Clone)]
struct HeaderValue2(HeaderValue);
impl Arbitrary for HeaderName2 {
fn arbitrary<G: Gen>(g: &mut G) -> Self {
use http::header;
if g.gen_weighted_bool(2) {
g.choose(&[
HeaderName2(header::ACCEPT),
]).unwrap().clone()
} else {
let len = g.gen::<usize>() % 25 + 1;
let value: Vec<u8> = (0..len).map(|_| {
g.choose(b"abcdefghijklmnopqrstuvwxyz-").unwrap().clone()
}).collect();
HeaderName2(HeaderName::from_bytes(&value).unwrap())
}
}
}
impl Arbitrary for HeaderValue2 {
fn arbitrary<G: Gen>(g: &mut G) -> Self {
// Random length
let len = g.gen::<usize>() % 70;
// Generate the value
let value: Vec<u8> = (0..len).map(|_| {
g.choose(b"abcdefghijklmnopqrstuvwxyz -_").unwrap().clone()
}).collect();
HeaderValue2(HeaderValue::try_from_bytes(&value).unwrap())
}
}
*/
#[test]
fn hpack_fixtures() {
let fixture_dir = Path::new(env!("CARGO_MANIFEST_DIR"))