home · contact · privacy
Unhide metadata directory, move helpers script up in tree.
[redo-blog] / test.sh
diff --git a/test.sh b/test.sh
index e333c4059294e1debc672de7266220a2869a6749..f91d84e3cae8a0c9be682891a973a7a0a138356a 100755 (executable)
--- a/test.sh
+++ b/test.sh
@@ -2,13 +2,13 @@
 
 uuid_test()
 {
-uuid_file="$1"
-printf "== %s UUID pattern match test ==\n" "$uuid_file"
-if cat "$uuid_file" | grep -Eq "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"; then
-  echo "== test SUCCESS =="
-else
-  echo "== test FAILURE =="
-fi
+  uuid_file="$1"
+  printf "== %s UUID pattern match test ==\n" "$uuid_file"
+  if cat "$uuid_file" | grep -Eq "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"; then
+    echo "== test SUCCESS =="
+  else
+    echo "== test FAILURE =="
+  fi
 }
 
 diff_test()
@@ -32,21 +32,24 @@ generated_files_dir_escaped="test\\/test_dir"
 rm -rf "$generated_files_dir" 
 ./add_dir.sh "$generated_files_dir" 
 working_dir=$(pwd)
-cp "$expected_files_dir"/test.md "$generated_files_dir"/
-cp "$expected_files_dir"/foo.rst "$generated_files_dir"/
-cp "$expected_files_dir"/bar\ baz.md "$generated_files_dir"/
 cd "$generated_files_dir"
+cp "$working_dir/$expected_files_dir"/test.md .
+redo
+cp "$working_dir/$expected_files_dir"/bar\ baz.md .
+redo
+cp "$working_dir/$expected_files_dir"/foo.rst .
 redo
-cd "$working_dir" 
+cd "$working_dir"
 
 # Simple file comparison tests and UUID tests.
-uuid_test "$generated_files_dir""/uuid.meta"
-for file in "$expected_files_dir"/*.html "$expected_files_dir"/*.meta; do
+uuid_test "$generated_files_dir""/metadata/uuid"
+for file in "$expected_files_dir"/*.html "$expected_files_dir"/metadata/*; do
   sed_expression='s/'"$expected_files_dir_escaped"'/'"$generated_files_dir_escaped"'/'
   cmp_file=`echo "$file" | sed "$sed_expression"`
   if [ ! "$file" = "$expected_files_dir""/index.html" ] && \
       echo "$file" | grep -q "\.html$"; then
-    uuid_test "${cmp_file%.html}.uuid"
+    basename=$(basename "$cmp_file")
+    uuid_test "${generated_files_dir}/metadata/${basename%.html}.uuid"
   fi
   diff_test "$file" "$cmp_file"
 done
@@ -61,3 +64,15 @@ cat "$original_file" | \
   > "$generated_file"
 diff_test "$expected_file" "$generated_file"
 rm "$generated_file"
+
+# Check symbolic links.
+for file in "$generated_files_dir"/feed.xml "$generated_files_dir"/*.html; do
+  basename=$(basename "$file")
+  linkname=$(readlink "$generated_files_dir/public/$basename")
+  printf "== public/%s symbolic link test ==\n" "$basename"
+  if [ "$working_dir/$generated_files_dir/$basename" = "$linkname" ]; then
+    echo "== test SUCCESS =="
+  else
+    echo "== test FAILURE =="
+  fi
+done