MCPcopy Create free account
hub / github.com/csskit/csskit / test_lexer_iterator_clone

Function test_lexer_iterator_clone

crates/css_lexer/src/lib.rs:330–348  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

328
329 #[test]
330 fn test_lexer_iterator_clone() {
331 let source = "foo bar baz";
332 let mut lexer = Lexer::new(&EmptyAtomSet::ATOMS, source);
333
334 let first = lexer.next();
335 assert!(first.is_some());
336 assert_eq!(first.unwrap(), Kind::Ident);
337
338 let lexer_clone = lexer.clone();
339
340 let cursors1: Vec<_> = lexer.collect();
341 let cursors2: Vec<_> = lexer_clone.collect();
342
343 assert_eq!(cursors1.len(), cursors2.len());
344 for (c1, c2) in cursors1.iter().zip(cursors2.iter()) {
345 assert_eq!(c1.token().kind(), c2.token().kind());
346 assert_eq!(c1.offset(), c2.offset());
347 }
348 }
349}

Callers

nothing calls this directly

Calls 4

cloneMethod · 0.80
collectMethod · 0.80
iterMethod · 0.80
nextMethod · 0.45

Tested by

no test coverage detected