km_to_sql/
json.rs

1use crate::{
2    error::{Error, Result},
3    metadata::TableMetadata,
4};
5
6pub fn parse_metadata(json: &str) -> Result<TableMetadata> {
7    serde_json::from_str(json).map_err(Error::from)
8}
9
10#[cfg(test)]
11mod tests {
12    use super::*;
13
14    #[test]
15    fn test_parse_metadata() {
16        let json_str = include_str!("../test/metadata.json");
17
18        let metadata: TableMetadata = parse_metadata(json_str).unwrap();
19        assert_eq!(metadata.name, "example_table");
20        assert_eq!(metadata.columns.len(), 2);
21    }
22}