(expr: &str)
| 38 | } |
| 39 | |
| 40 | fn verify_pretty_expr(expr: &str) { |
| 41 | let Ok(original) = parse_expr(expr) else { |
| 42 | return; |
| 43 | }; |
| 44 | for n in &[1, 40, 1000000] { |
| 45 | let n = *n; |
| 46 | let pretty1 = format!( |
| 47 | "{}", |
| 48 | Pretty { |
| 49 | config: PrettyConfig { |
| 50 | width: n, |
| 51 | format_mode: FormatMode::Simple |
| 52 | } |
| 53 | } |
| 54 | .doc_expr(&original) |
| 55 | .pretty(n) |
| 56 | ); |
| 57 | let prettied = parse_expr(&pretty1) |
| 58 | .unwrap_or_else(|_| panic!("could not parse: {pretty1}, original: {expr}")); |
| 59 | let pretty2 = format!( |
| 60 | "{}", |
| 61 | Pretty { |
| 62 | config: PrettyConfig { |
| 63 | width: n, |
| 64 | format_mode: FormatMode::Simple |
| 65 | } |
| 66 | } |
| 67 | .doc_expr(&prettied) |
| 68 | .pretty(n) |
| 69 | ); |
| 70 | assert_eq!(pretty1, pretty2); |
| 71 | assert_eq!( |
| 72 | original.to_ast_string_stable(), |
| 73 | prettied.to_ast_string_stable(), |
| 74 | "\noriginal: {expr}", |
| 75 | ); |
| 76 | } |
| 77 | } |
| 78 | |
| 79 | fn verify_pretty_statement(stmt: &str) { |
| 80 | let original = match parse_statements(stmt) { |
no test coverage detected