| 13 | |
| 14 | #[test] |
| 15 | fn test_website_examples() { |
| 16 | for example in read_dir("../website/data/examples").unwrap().flatten() { |
| 17 | let file = std::fs::File::open(example.path()).unwrap(); |
| 18 | let example_value: Value = serde_yaml::from_reader(&file).unwrap(); |
| 19 | let prql = example_value.get("prql").unwrap().as_str().unwrap(); |
| 20 | |
| 21 | let compiled_sql = compile(prql).unwrap(); |
| 22 | |
| 23 | if let Some(sql) = example_value.get("sql") { |
| 24 | assert_eq!( |
| 25 | sql_normalize(&compiled_sql), |
| 26 | sql_normalize(sql.as_str().unwrap()), |
| 27 | "Failed for file: {:?}", |
| 28 | example.path() |
| 29 | ); |
| 30 | } |
| 31 | } |
| 32 | } |