]> git.huck.website - metaforge.git/commitdiff
better testing setup
authorHuck Boles <huck@huck.website>
Tue, 16 May 2023 00:14:28 +0000 (19:14 -0500)
committerHuck Boles <huck@huck.website>
Tue, 16 May 2023 00:14:28 +0000 (19:14 -0500)
.gitignore
benches/build_metafile.rs
tests/build_dir.rs

index 28878d601fe0864812e1f3fff419bfaa424a909c..8450d8722731d2e0e4c2bc851f30a58f50fd323f 100644 (file)
@@ -1,3 +1,3 @@
 /target
-files/site/build
+files/test_site/build
 files/bench_site/build
index 51844d29c62380b694fb210a672ee7cf37df9fbd..c8051b2cb4c068d8d1429a91e5be9e379ad6974e 100644 (file)
@@ -20,8 +20,7 @@ pub fn build_file_benchmark(c: &mut Criterion) {
             let mut file = metaforge::parse_file(string, black_box(&opts)).expect("parse file");
             file.path = black_box(source.clone());
             let string = metaforge::build_metafile(&file).expect("build file");
-            metaforge::write_file(black_box(&source), string, black_box(&opts))
-                .expect("write file");
+            std::fs::write(file.dest().expect("find dest"), string).expect("write file");
         })
     });
 }
index 570ba1eaf9f3213c43c3a7bae8d6b01215acc30f..505f9c46275a55848ad74ad1e5aaeaf81bf5943f 100644 (file)
@@ -2,7 +2,7 @@ use color_eyre::Result;
 
 #[test]
 fn build_test_site() -> Result<()> {
-    let dir = std::path::PathBuf::from("files/site")
+    let dir = std::path::PathBuf::from("files/test_site")
         .canonicalize()
         .unwrap();
 
@@ -16,11 +16,20 @@ fn build_test_site() -> Result<()> {
     metaforge::build_dir(&opts)?;
 
     assert!(opts.build.join("benchmark.html").exists());
-    assert!(opts.build.join("dir1/sub_dir1/deep1/deep.html").exists());
-    assert_eq!(
-        std::fs::read_to_string(opts.build.join("root.html"))?,
-        "<p>TEST</p>\n"
-    );
+    assert!(opts.build.join("unit_tests").exists());
+    assert!(opts
+        .build
+        .join("unit_tests/blank/blank_array.html")
+        .exists());
+    assert!(opts
+        .build
+        .join("unit_tests/expand/variable_in_source.html")
+        .exists());
+    assert!(opts
+        .build
+        .join("unit_tests/override/variable.html")
+        .exists());
+    assert!(opts.build.join("unit_tests/global/pattern.html").exists());
 
     Ok(())
 }