Sfoglia il codice sorgente

build(vhs): gen_test support automatic gen

The idea behind this is that it makes it easier for users of this system
to change the reference. They should now only have to delete the old
reference, and a new one will be generated.

Signed-off-by: Christina Sørensen <christina@cafkafk.com>
Christina Sørensen 2 anni fa
parent
commit
23acc987fa
1 ha cambiato i file con 15 aggiunte e 5 eliminazioni
  1. 15 5
      tests/vhs-runner.sh

+ 15 - 5
tests/vhs-runner.sh

@@ -12,13 +12,14 @@ function run_test -d "Run VHS test" -a NAME
     set SUCCESS "[+] $NAME: Success"
     set FAILURE "[+] $NAME: Failure"
 
-    echo "[*] Testing $NAME..."
-
     set GEN_DIR $TEMP
     set GEN_FILE $GEN_DIR/$NAME.txt
     set GEN_FILE_ESCAPE (echo $GEN_FILE | sed "s/\//\\\\\//g")
 
+    echo "[*] Testing $NAME..."
+
     cat $TAPES/$NAME_TAPE | sed s/outfile/$GEN_FILE_ESCAPE/ | sed s/-l// | vhs >/dev/null
+
     cmp -s -- $REFERENCES/$NAME.txt $TEMP/$NAME.txt && echo $SUCCESS || echo $FAILURE
 end
 
@@ -29,19 +30,28 @@ function gen_test -d "Generate VHS test" -a NAME
     set SUCCESS "[+] $NAME: Success"
     set FAILURE "[+] $NAME: Failure"
 
-    echo "[*] Generating $NAME..."
-
     set GEN_DIR $REFERENCES
     set GEN_FILE $GEN_DIR/$NAME.txt
     set GEN_FILE_ESCAPE (echo $GEN_FILE | sed "s/\//\\\\\//g")
 
+    # The idea behind this is that it makes it easier for users of this system
+    # to change the reference. They should now only have to delete the old
+    # reference, and a new one will be generated.
+    if builtin test -f $GEN_FILE
+        echo "[*] $GEN_FILE exists, skipping generating it"
+        return
+    end
+
+    echo "[*] Generating $NAME..."
+
     cat $TAPES/$NAME_TAPE | sed s/outfile/$GEN_FILE_ESCAPE/ | sed s/-l// | vhs >/dev/null
+
     cmp -s -- $REFERENCES/$NAME.txt $TEMP/$NAME.txt && echo $SUCCESS || echo $FAILURE
 end
 
 function main
 
-    # gen_test main
+    gen_test main
 
     run_test main