1use std::{fs::File, path::Path};
2
3const TEST_FILE: &'static str = "test-db.db";
4
5fn main() -> anyhow::Result<()> {
6 env_logger::init();
7 let db = db::Db::open_in_memory();
8 if db.real().is_none() {
9 return Err(anyhow::anyhow!("Migrations failed"));
10 }
11 let file = Path::new(TEST_FILE);
12
13 let f = File::create(file)?;
14 drop(f);
15
16 db.write_kvp("test", "1")?;
17 db.write_kvp("test-2", "2")?;
18
19 db.workspace_for_roots(&["/tmp1"]);
20 db.workspace_for_roots(&["/tmp1", "/tmp2"]);
21 db.workspace_for_roots(&["/tmp1", "/tmp2", "/tmp3"]);
22 db.workspace_for_roots(&["/tmp2", "/tmp3"]);
23 db.workspace_for_roots(&["/tmp2", "/tmp3", "/tmp4"]);
24 db.workspace_for_roots(&["/tmp2", "/tmp4"]);
25 db.workspace_for_roots(&["/tmp2"]);
26
27 db.write_to(file).ok();
28
29 println!("Wrote database!");
30
31 Ok(())
32}