Files
ARCADIA-Studio/crates/oa-core/examples/generate_demo.rs
T

24 lines
795 B
Rust

//! Regenerate both distributable forms from one model, preserving shared IDs.
use oa_core::{Project, persistence};
use std::path::PathBuf;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let directory = std::env::args_os()
.nth(1)
.map(PathBuf::from)
.unwrap_or_else(|| PathBuf::from("examples"));
let project = Project::demo();
let source = directory.join("coastal-rescue.arcadia");
let json = directory.join("coastal-rescue.json");
persistence::save(&source, &project)?;
persistence::save(&json, &project)?;
assert_eq!(persistence::load(&source)?, project);
assert_eq!(persistence::load(&json)?, project);
println!(
"Wrote and verified {} and {}",
source.display(),
json.display()
);
Ok(())
}