 72c8da94a3
			
		
	
	
		72c8da94a3
		
			
		
	
	
	
	
		
			
			Instead of using a hacked-together shell script, use rust's test framework to do the comparison.
		
			
				
	
	
		
			18 lines
		
	
	
		
			767 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
		
			767 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #[test]
 | |
| fn {name}() {{
 | |
|     let todo_org_path = "{path}";
 | |
|     let org_contents = std::fs::read_to_string(todo_org_path).expect("Read org file.");
 | |
|     let org_sexp = emacs_parse_org_document(todo_org_path).expect("Use emacs to parse org file.");
 | |
|     println!("{{}}", org_sexp);
 | |
|     let (_remaining, parsed_sexp) = sexp(org_sexp.as_str()).expect("Sexp Parse failure");
 | |
|     let (remaining, rust_parsed) = document(org_contents.as_str()).expect("Org Parse failure");
 | |
|     println!("{{:#?}}", rust_parsed);
 | |
|     let diff_result =
 | |
|         compare_document(&parsed_sexp, &rust_parsed).expect("Compare parsed documents.");
 | |
|     diff_result
 | |
|         .print()
 | |
|         .expect("Print document parse tree diff.");
 | |
|     assert!(!diff_result.is_bad());
 | |
|     assert_eq!(remaining, "");
 | |
| }}
 |