summaryrefslogtreecommitdiff
path: root/scripts/src/bin/generate-charts/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/src/bin/generate-charts/main.rs')
-rw-r--r--scripts/src/bin/generate-charts/main.rs35
1 files changed, 35 insertions, 0 deletions
diff --git a/scripts/src/bin/generate-charts/main.rs b/scripts/src/bin/generate-charts/main.rs
new file mode 100644
index 0000000..1206e5f
--- /dev/null
+++ b/scripts/src/bin/generate-charts/main.rs
@@ -0,0 +1,35 @@
+mod progress;
+use std::{path::PathBuf, str::FromStr};
+
+use eyre::Result;
+
+fn main() -> Result<()> {
+ generate_charts()
+}
+
+fn generate_charts() -> Result<()> {
+ let results_dir = PathBuf::from_str("./crates/tinywasm/tests/generated")?;
+
+ // check if the folder exists
+ if !results_dir.exists() {
+ return Err(eyre::eyre!(
+ "This script should be run from the root of the project, and the test results should be generated first."
+ ));
+ }
+
+ progress::create_progress_chart(
+ "WebAssembly 1.0 Test Suite",
+ &results_dir.join("mvp.csv"),
+ &results_dir.join("progress-mvp.svg"),
+ )?;
+ println!("created progress chart: {}", results_dir.join("progress-mvp.svg").display());
+
+ progress::create_progress_chart(
+ "WebAssembly 2.0 Test Suite",
+ &results_dir.join("2.0.csv"),
+ &results_dir.join("progress-2.0.svg"),
+ )?;
+ println!("created progress chart: {}", results_dir.join("progress-2.0.svg").display());
+
+ Ok(())
+}