diff options
| author | Kevin Cantu <me@kevincantu.org> | 2012-11-14 21:33:32 -0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-11-25 12:41:11 -0800 |
| commit | 7b13ef7d501daea5f56605659ae1f1e38371ab32 (patch) | |
| tree | 414ebd00a898c682dd149863859154cc256d37d5 /src/libstd | |
| parent | a343e435d59e21188f6fc5918324c751a7eff6a9 (diff) | |
Test insert_with_key...
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/map.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/libstd/map.rs b/src/libstd/map.rs index d6feebc016c..041346c9cd9 100644 --- a/src/libstd/map.rs +++ b/src/libstd/map.rs @@ -773,4 +773,25 @@ mod tests { assert map.get(~"b") == 2; assert map.get(~"c") == 3; } + + #[test] + fn test_insert_with_key() { + let map = map::HashMap::<~str, uint>(); + + fn inc(k: ~str, v0: uint, v1: uint) -> uint { + v0 + v1 + } + + map.insert_with_key(inc, ~"cat", 1); + map.insert_with_key(inc, ~"mongoose", 1); + map.insert_with_key(inc, ~"cat", 7); + map.insert_with_key(inc, ~"ferret", 3); + map.insert_with_key(inc, ~"cat", 2); + + assert 10 == option::get(map.find(~"cat")); + assert 3 == option::get(map.find(~"ferret")); + assert 1 == option::get(map.find(~"mongoose")); + + assert None == map.find(~"unicorn"); + } } |
