Skip to content

Commit 9188286

Browse files
committed
test: add headermap iterator tests
confirmed new tests fail as expected
1 parent 245b511 commit 9188286

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

actix-http/src/header/map.rs

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1160,6 +1160,40 @@ mod tests {
11601160
assert!(vals.next().is_none());
11611161
}
11621162

1163+
#[test]
1164+
fn iter_len_counts_values() {
1165+
let mut map = HeaderMap::new();
1166+
map.append(header::SET_COOKIE, HeaderValue::from_static("a=1"));
1167+
map.append(header::SET_COOKIE, HeaderValue::from_static("b=2"));
1168+
map.append(header::SET_COOKIE, HeaderValue::from_static("c=3"));
1169+
1170+
assert_eq!(map.iter().count(), 3);
1171+
assert_eq!(map.iter().len(), 3);
1172+
}
1173+
1174+
#[test]
1175+
fn into_iter_len_counts_values() {
1176+
let mut map = HeaderMap::new();
1177+
map.append(header::SET_COOKIE, HeaderValue::from_static("a=1"));
1178+
map.append(header::SET_COOKIE, HeaderValue::from_static("b=2"));
1179+
map.append(header::SET_COOKIE, HeaderValue::from_static("c=3"));
1180+
1181+
assert_eq!(map.clone().into_iter().count(), 3);
1182+
assert_eq!(map.into_iter().len(), 3);
1183+
}
1184+
1185+
#[test]
1186+
fn drain_len_counts_values() {
1187+
let mut map = HeaderMap::new();
1188+
map.append(header::SET_COOKIE, HeaderValue::from_static("a=1"));
1189+
map.append(header::SET_COOKIE, HeaderValue::from_static("b=2"));
1190+
map.append(header::SET_COOKIE, HeaderValue::from_static("c=3"));
1191+
1192+
let mut drained = map.clone();
1193+
assert_eq!(map.drain().count(), 3);
1194+
assert_eq!(drained.drain().len(), 3);
1195+
}
1196+
11631197
fn owned_pair<'a>((name, val): (&'a HeaderName, &'a HeaderValue)) -> (HeaderName, HeaderValue) {
11641198
(name.clone(), val.clone())
11651199
}

0 commit comments

Comments
 (0)