use super::support::{required, serial_key};
use crate::database::introspection::{Schema, Table};
use std::path::{Path, PathBuf};
fn table(name: &str) -> Table {
Table {
name: name.to_string(),
columns: vec![serial_key("id"), required("label", "text")],
primary_key: vec!["id".to_string()],
foreign_keys: Vec::new(),
uniques: Vec::new(),
indexes: Vec::new(),
view: false,
}
}
pub(super) fn pair() -> Schema {
Schema {
tables: vec![table("user"), table("users")],
enums: Vec::new(),
}
}
pub(super) fn directories(out: &Path) -> Vec<PathBuf> {
std::fs::read_dir(out)
.unwrap()
.filter_map(|entry| entry.ok())
.map(|entry| entry.path())
.filter(|path| path.is_dir())
.collect()
}