Clone in a terminal:
Commit ff18fd5
Johan Mattsson - 2015-11-01T09:22:26+00:00
ff18fd5b9d1c8b5941b3e5b52d06ac5fb11ffc4cjohan.mattsson.m@gmail.com

Fuzz test for bf fonts

Changed files (1)

Diff

diff --git a/scripts/fuzzbf.py b/scripts/fuzzbf.pynew file mode 100755index 0000000..3140e74--- /dev/null+++ b/scripts/fuzzbf.py@@ -0,0 +1,33 @@+#!/usr/bin/python3++import subprocess+from os import path++from run import run++def fuzz_import():+    fuzz_bf ('birdfont-test/testfont.bf')++def fuzz_bf (file):+    run ("mkdir -p build/fuzz")+    run ("mkdir -p build/fuzz/bugs")+    run ("radamsa " + file + " > build/fuzz/font.bf")++    cmd = "./birdfont-test.sh BF build/fuzz/font.bf"+    print('Running: ' + cmd)+    process = subprocess.Popen (cmd, shell=True)+    process.communicate()[0]+    if not process.returncode == 0:+        print("Error: " + cmd)+        print("A bug was found.")+        +        i = 0+        while path.isfile ('build/bugs/font_' + str(i) + '.bf'):+            i = i + 1+			+        run ('mv build/fuzz/font.bf attic/fuzz/bugs/font_' + str(i) + '.bf')++    run ("rm -f build/fuzz/font.svg")++while True:+    fuzz_import ()

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112