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

Function test_basic

crates/css_parse/src/cursor_overlay_sink.rs:203–225  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

201
202 #[test]
203 fn test_basic() {
204 let source_text = "black white";
205 let bump = Bump::default();
206 let lexer = Lexer::new(&EmptyAtomSet::ATOMS, source_text);
207 let mut p = Parser::new(&bump, source_text, lexer);
208 let output = p.parse_entirely::<(T![Ident], T![Ident])>().output.unwrap();
209
210 let overlay_text = "green";
211 let lexer = Lexer::new(&EmptyAtomSet::ATOMS, overlay_text);
212 let mut p = Parser::new(&bump, overlay_text, lexer);
213 let overlay = p.parse_entirely::<T![Ident]>();
214 let mut source_cursors = Vec::new_in(&bump);
215 let mut sink = CursorToSourceCursorSink::new(overlay_text, &mut source_cursors);
216 overlay.to_cursors(&mut sink);
217 let mut overlays = CursorOverlaySet::new(&bump);
218 overlays.insert(output.1.to_span(), source_cursors);
219
220 let mut str = String::new();
221 let mut stream = CursorOverlaySink::new(source_text, &overlays, CursorWriteSink::new(source_text, &mut str));
222 output.to_cursors(&mut stream);
223
224 assert_eq!(str, "black green");
225 }
226
227 #[test]
228 fn test_with_pretty_writer() {

Callers

nothing calls this directly

Calls 3

to_cursorsMethod · 0.45
insertMethod · 0.45
to_spanMethod · 0.45

Tested by

no test coverage detected