| 218 | |
| 219 | #[test] |
| 220 | fn test_rust_use_declarations() { |
| 221 | let source = r#" |
| 222 | use std::collections::HashMap; |
| 223 | use std::io::{self, Read}; |
| 224 | "#; |
| 225 | let extractor = RustExtractor; |
| 226 | let result = extractor.extract("imports.rs", source); |
| 227 | assert!(result.errors.is_empty(), "errors: {:?}", result.errors); |
| 228 | let uses: Vec<_> = result |
| 229 | .nodes |
| 230 | .iter() |
| 231 | .filter(|n| n.kind == NodeKind::Use) |
| 232 | .collect(); |
| 233 | assert_eq!( |
| 234 | uses.len(), |
| 235 | 2, |
| 236 | "expected 2 use decls, got: {:?}", |
| 237 | uses.iter().map(|n| &n.name).collect::<Vec<_>>() |
| 238 | ); |
| 239 | } |
| 240 | |
| 241 | #[test] |
| 242 | fn test_rust_const_and_static() { |