Extract seed log artifacts into fixture files
Move inline log content strings from dev.rs into fixtures/ so the seed
data is easier to scan. Added a run_id() helper to reduce UUID
repetition.

Assisted-by: GLM-5.1 via pi
change nrvlvvwtzzlqmmnryrnqryrqoxvrpnot
commit 1584c95cabcce1213801cfa33e2e924b42032483
author Alpha Chen <alpha@kejadlen.dev>
date
parent uwmututx
diff --git a/src/bin/quire/commands/dev.rs b/src/bin/quire/commands/dev.rs
index 430138d..bb5b5fe 100644
--- a/src/bin/quire/commands/dev.rs
+++ b/src/bin/quire/commands/dev.rs
@@ -424,81 +424,87 @@ fn insert_sh_events(db: &rusqlite::Connection) -> Result<()> {
 }
 
 fn write_log_artifacts(quire: &Quire) -> Result<()> {
-    let runs_base = quire.base_dir().join("runs").join("example.git");
+    let b = quire.base_dir().join("runs").join("example.git");
 
     // Run 1 — complete, clean build output.
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000001",
+        &b,
+        run_id(1),
         "build",
         1,
-        "   Compiling quire v0.1.0\n    Finished `release` profile [optimized] target(s) in 1.4s\n",
+        include_str!("fixtures/run-1-build-1.log"),
     );
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000001",
+        &b,
+        run_id(1),
         "build",
         2,
-        "    Checking quire v0.1.0\n    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.5s\n",
+        include_str!("fixtures/run-1-build-2.log"),
     );
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000001",
+        &b,
+        run_id(1),
         "test",
         1,
-        "running 42 tests\n..........................................\n\n42 passed; 0 failed; 0 ignored\n",
+        include_str!("fixtures/run-1-test-1.log"),
     );
 
     // Run 2 — failed, test output with failures.
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000002",
+        &b,
+        run_id(2),
         "build",
         1,
-        "   Compiling quire v0.1.0\n    Finished `release` profile [optimized] target(s) in 2.0s\n",
+        include_str!("fixtures/run-2-build-1.log"),
     );
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000002",
+        &b,
+        run_id(2),
         "test",
         1,
-        "running 42 tests\n.........................................F\n\nFAILURES:\n  quire::web::tests::run_list_template_renders_runs\n\n39 passed; 1 failed; 2 ignored\n",
+        include_str!("fixtures/run-2-test-1.log"),
     );
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000002",
+        &b,
+        run_id(2),
         "test",
         2,
-        "running 3 tests\n..F\n\nFAILURES:\n  quire::ci::test_ignored_failure\n\nassertion failed: expected ok, got err\n\n2 passed; 1 failed\n",
+        include_str!("fixtures/run-2-test-2.log"),
     );
 
     // Run 7 — orphaned, long output that was interrupted.
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000007",
+        &b,
+        run_id(7),
         "build",
         1,
-        "   Compiling quire v0.1.0\n    Finished `release` profile [optimized] target(s) in 3.0s\n",
+        include_str!("fixtures/run-7-build-1.log"),
     );
-    let mut long_test_output = String::from("running 200 tests\n");
-    for i in 0..150 {
-        long_test_output.push('.');
-        if (i + 1) % 80 == 0 {
-            long_test_output.push('\n');
-        }
-    }
-    long_test_output.push_str("\n\n150 passed; 50 untested; container died (exit 137: OOM)\n");
     write_sh_log(
-        &runs_base,
-        "aaaaaaaa-0000-0000-0000-000000000007",
+        &b,
+        run_id(7),
         "test",
         1,
-        &long_test_output,
+        include_str!("fixtures/run-7-test-1.log"),
     );
 
     Ok(())
 }
 
+/// Short-hand for the seed run UUIDs (1-indexed).
+fn run_id(n: u8) -> &'static str {
+    match n {
+        1 => "aaaaaaaa-0000-0000-0000-000000000001",
+        2 => "aaaaaaaa-0000-0000-0000-000000000002",
+        3 => "aaaaaaaa-0000-0000-0000-000000000003",
+        4 => "aaaaaaaa-0000-0000-0000-000000000004",
+        5 => "aaaaaaaa-0000-0000-0000-000000000005",
+        6 => "aaaaaaaa-0000-0000-0000-000000000006",
+        7 => "aaaaaaaa-0000-0000-0000-000000000007",
+        _ => panic!("no seed run with index {n}"),
+    }
+}
+
 fn write_sh_log(
     runs_base: &std::path::Path,
     run_id: &str,
diff --git a/src/bin/quire/commands/fixtures/run-1-build-1.log b/src/bin/quire/commands/fixtures/run-1-build-1.log
new file mode 100644
index 0000000..8b71584
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-1-build-1.log
@@ -0,0 +1,2 @@
+   Compiling quire v0.1.0
+    Finished `release` profile [optimized] target(s) in 1.4s
diff --git a/src/bin/quire/commands/fixtures/run-1-build-2.log b/src/bin/quire/commands/fixtures/run-1-build-2.log
new file mode 100644
index 0000000..478e325
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-1-build-2.log
@@ -0,0 +1,2 @@
+    Checking quire v0.1.0
+    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.5s
diff --git a/src/bin/quire/commands/fixtures/run-1-test-1.log b/src/bin/quire/commands/fixtures/run-1-test-1.log
new file mode 100644
index 0000000..b0191d4
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-1-test-1.log
@@ -0,0 +1,4 @@
+running 42 tests
+..........................................
+
+42 passed; 0 failed; 0 ignored
diff --git a/src/bin/quire/commands/fixtures/run-2-build-1.log b/src/bin/quire/commands/fixtures/run-2-build-1.log
new file mode 100644
index 0000000..b6b36d8
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-2-build-1.log
@@ -0,0 +1,2 @@
+   Compiling quire v0.1.0
+    Finished `release` profile [optimized] target(s) in 2.0s
diff --git a/src/bin/quire/commands/fixtures/run-2-test-1.log b/src/bin/quire/commands/fixtures/run-2-test-1.log
new file mode 100644
index 0000000..05ee26d
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-2-test-1.log
@@ -0,0 +1,7 @@
+running 42 tests
+.........................................F
+
+FAILURES:
+  quire::web::tests::run_list_template_renders_runs
+
+39 passed; 1 failed; 2 ignored
diff --git a/src/bin/quire/commands/fixtures/run-2-test-2.log b/src/bin/quire/commands/fixtures/run-2-test-2.log
new file mode 100644
index 0000000..bd0736d
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-2-test-2.log
@@ -0,0 +1,9 @@
+running 3 tests
+..F
+
+FAILURES:
+  quire::ci::test_ignored_failure
+
+assertion failed: expected ok, got err
+
+2 passed; 1 failed
diff --git a/src/bin/quire/commands/fixtures/run-7-build-1.log b/src/bin/quire/commands/fixtures/run-7-build-1.log
new file mode 100644
index 0000000..470e7e3
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-7-build-1.log
@@ -0,0 +1,2 @@
+   Compiling quire v0.1.0
+    Finished `release` profile [optimized] target(s) in 3.0s
diff --git a/src/bin/quire/commands/fixtures/run-7-test-1.log b/src/bin/quire/commands/fixtures/run-7-test-1.log
new file mode 100644
index 0000000..2f8ec0e
--- /dev/null
+++ b/src/bin/quire/commands/fixtures/run-7-test-1.log
@@ -0,0 +1,6 @@
+running 200 tests
+................................................................................
+................................................................................
+.......................
+
+150 passed; 50 untested; container died (exit 137: OOM)