From c0c190c16a2c1b281f40dacdcf515dc5a59ab3bb Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Tue, 16 Oct 2018 16:39:29 -0700 Subject: [PATCH] [fuzzing] Run tests against fuzzing fonts Some disable. --- test/fuzzing/run-shape-fuzzer-tests.py | 12 +-- test/fuzzing/run-subset-fuzzer-tests.py | 29 ++++--- test/shaping/data/in-house/Makefile.sources | 1 - test/shaping/data/in-house/tests/fuzzed.tests | 84 ------------------- 4 files changed, 21 insertions(+), 105 deletions(-) delete mode 100644 test/shaping/data/in-house/tests/fuzzed.tests diff --git a/test/fuzzing/run-shape-fuzzer-tests.py b/test/fuzzing/run-shape-fuzzer-tests.py index 2b1906c35..314468903 100755 --- a/test/fuzzing/run-shape-fuzzer-tests.py +++ b/test/fuzzing/run-shape-fuzzer-tests.py @@ -20,15 +20,11 @@ please provide it as the first argument to the tool""") print ('hb_shape_fuzzer:', hb_shape_fuzzer) fails = 0 -parent_path = os.path.join (srcdir, "..", "shaping", "data", "in-house", "tests") -for line in open (os.path.join (parent_path, "fuzzed.tests")): - font = line.split (":")[0] - if font.startswith('#'): - continue +parent_path = os.path.join (srcdir, "fonts") +for file in os.listdir (parent_path): + path = os.path.join(parent_path, file) - font_path = os.path.join (parent_path, font) - - p = subprocess.Popen ([hb_shape_fuzzer, font_path]) + p = subprocess.Popen ([hb_shape_fuzzer, path]) if p.wait () != 0: print ('failure on %s', font) diff --git a/test/fuzzing/run-subset-fuzzer-tests.py b/test/fuzzing/run-subset-fuzzer-tests.py index ff4440baa..d4e3487f0 100755 --- a/test/fuzzing/run-subset-fuzzer-tests.py +++ b/test/fuzzing/run-subset-fuzzer-tests.py @@ -20,21 +20,26 @@ please provide it as the first argument to the tool""") print ('hb_subset_fuzzer:', hb_subset_fuzzer) fails = 0 -parent_path = os.path.join (srcdir, "..", "subset", "data", "fonts") -print ("running subset fuzzer against fonts in %s" % parent_path) -for file in os.listdir (parent_path): - path = os.path.join(parent_path, file) +def run_dir (parent_path): + global fails + print ("running subset fuzzer against fonts in %s" % parent_path) + for file in os.listdir (parent_path): + path = os.path.join(parent_path, file) - print ("running subset fuzzer against %s" % path) - p = subprocess.Popen ([hb_subset_fuzzer, path]) + print ("running subset fuzzer against %s" % path) + p = subprocess.Popen ([hb_subset_fuzzer, path]) - if p.wait () != 0: - print ("failed for %s" % path) - fails = fails + 1 + if p.wait () != 0: + print ("failed for %s" % path) + fails = fails + 1 - if p.wait () != 0: - print ("failed for %s" % path) - fails = fails + 1 + if p.wait () != 0: + print ("failed for %s" % path) + fails = fails + 1 + +run_dir (os.path.join (srcdir, "..", "subset", "data", "fonts")) +# TODO running these tests very slow tests. Fix and re-enable +#run_dir (os.path.join (srcdir, "fonts")) if fails: print ("%i subset fuzzer related tests failed." % fails) diff --git a/test/shaping/data/in-house/Makefile.sources b/test/shaping/data/in-house/Makefile.sources index d0a3f1f64..6e21ddd4c 100644 --- a/test/shaping/data/in-house/Makefile.sources +++ b/test/shaping/data/in-house/Makefile.sources @@ -15,7 +15,6 @@ TESTS = \ tests/default-ignorables.tests \ tests/emoji.tests \ tests/fallback-positioning.tests \ - tests/fuzzed.tests \ tests/hangul-jamo.tests \ tests/hyphens.tests \ tests/indic-consonant-with-stacker.tests \ diff --git a/test/shaping/data/in-house/tests/fuzzed.tests b/test/shaping/data/in-house/tests/fuzzed.tests deleted file mode 100644 index 023e9f2f2..000000000 --- a/test/shaping/data/in-house/tests/fuzzed.tests +++ /dev/null @@ -1,84 +0,0 @@ -../../../../fuzzing/fonts/clusterfuzz-testcase-hb-fuzzer-4666056377368576:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-hb-fuzzer-5662671558934528:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-hb-fuzzer-6243458541944832:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-hb-fuzzer-6303297511096320:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-hb-fuzzer-6696647723581440:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4523479581851648:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4535496598355968:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4548492505645056:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4595692015190016:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4687441845813248:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4706238090706944:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4769173588672512:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4827735151083520:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4841745322868736:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-4884742786777088:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5216838347653120:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5255344882188288:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5294584596791296:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5303930168803328:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5331901587914752:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5388906574905344:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5517117891805184:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5617496443846656:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5672141338968064:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5700697074958336:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5720051798769664:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-5924299061854208:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6023178755244032:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6111685556305920:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6160439919509504:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6210176798425088:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6260579246276608:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6264625609834496:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6424351550210048:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6460279560863744:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6576177596596224:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6595199411159040:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6624904746106880:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-fuzzer-6723367514144768:--font-funcs=ot:U+0041:* -#../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5630246225707008:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5635082459545600:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5652019562414080:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5656511058018304:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5659641787187200:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5668791174823936:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5672261407735808:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5674361600606208:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5677421274071040:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5679244475105280:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5685596677210112:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5695615258853376:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5696686572175360:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5718889451749376:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5719982789361664:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5725129603022848:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5726089628876800:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5729361857085440:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5733166795456512:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5734736291430400:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5740171484463104:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5750379279548416:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-shape-fuzzer-5762490181353472:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5359635656605696:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5521982557782016:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5542653037903872:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5609911946838016:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5629878397829120:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5651059347816448:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5669437462544384:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5670861909524480:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5696607199166464:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5711951464759296:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5747265633779712:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5750092395970560:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5758598970343424:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-6543700493598720:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-6651660668502016:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-5203067375976448:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-5630904853069824:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-5687638085337088:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-5736539338833920:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-5973295416475648:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-6136125075750912:--font-funcs=ot:U+0041:* -../../../../fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-get-codepoints-fuzzer-6394290358976512:--font-funcs=ot:U+0041:*