serialize-pane.rs

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