OLD | NEW |
1 #!/bin/bash | 1 #!/bin/bash |
2 | 2 |
3 # Self-tests for gm, based on tools/tests/run.sh | 3 # Self-tests for gm, based on tools/tests/run.sh |
4 # | 4 # |
5 # These tests are run by the Skia_PerCommit_House_Keeping bot at every commit, | 5 # These tests are run by the Skia_PerCommit_House_Keeping bot at every commit, |
6 # so make sure that they still pass when you make changes to gm! | 6 # so make sure that they still pass when you make changes to gm! |
7 # | 7 # |
8 # To generate new baselines when gm behavior changes, run gm/tests/rebaseline.sh | 8 # To generate new baselines when gm behavior changes, run gm/tests/rebaseline.sh |
9 # | 9 # |
10 # TODO: because this is written as a shell script (instead of, say, Python) | 10 # TODO: because this is written as a shell script (instead of, say, Python) |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 } | 130 } |
131 | 131 |
132 GM_TESTDIR=gm/tests | 132 GM_TESTDIR=gm/tests |
133 GM_INPUTS=$GM_TESTDIR/inputs | 133 GM_INPUTS=$GM_TESTDIR/inputs |
134 GM_OUTPUTS=$GM_TESTDIR/outputs | 134 GM_OUTPUTS=$GM_TESTDIR/outputs |
135 GM_TEMPFILES=$GM_TESTDIR/tempfiles | 135 GM_TEMPFILES=$GM_TESTDIR/tempfiles |
136 | 136 |
137 create_inputs_dir $GM_INPUTS | 137 create_inputs_dir $GM_INPUTS |
138 | 138 |
139 # Compare generated image against an input image file with identical bytes. | 139 # Compare generated image against an input image file with identical bytes. |
140 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/identical-b
ytes" "$GM_OUTPUTS/compared-against-identical-bytes-images" | 140 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/i
dentical-bytes" "$GM_OUTPUTS/compared-against-identical-bytes-images" |
141 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/json/identical-byt
es.json" "$GM_OUTPUTS/compared-against-identical-bytes-json" | 141 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/json/ide
ntical-bytes.json" "$GM_OUTPUTS/compared-against-identical-bytes-json" |
142 | 142 |
143 # Compare generated image against an input image file with identical pixels but
different PNG encoding. | 143 # Compare generated image against an input image file with identical pixels but
different PNG encoding. |
144 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/identical-p
ixels" "$GM_OUTPUTS/compared-against-identical-pixels-images" | 144 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/i
dentical-pixels" "$GM_OUTPUTS/compared-against-identical-pixels-images" |
145 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/json/identical-pix
els.json" "$GM_OUTPUTS/compared-against-identical-pixels-json" | 145 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/json/ide
ntical-pixels.json" "$GM_OUTPUTS/compared-against-identical-pixels-json" |
146 | 146 |
147 # Compare generated image against an input image file with different pixels. | 147 # Compare generated image against an input image file with different pixels. |
148 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/different-p
ixels" "$GM_OUTPUTS/compared-against-different-pixels-images" | 148 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/d
ifferent-pixels" "$GM_OUTPUTS/compared-against-different-pixels-images" |
149 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/json/different-pix
els.json" "$GM_OUTPUTS/compared-against-different-pixels-json" | 149 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/json/dif
ferent-pixels.json" "$GM_OUTPUTS/compared-against-different-pixels-json" |
150 | 150 |
151 # Compare generated image against an empty "expected image" dir. | 151 # Compare generated image against an empty "expected image" dir. |
152 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/empty-dir"
"$GM_OUTPUTS/compared-against-empty-dir" | 152 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/e
mpty-dir" "$GM_OUTPUTS/compared-against-empty-dir" |
| 153 |
| 154 # Compare generated image against an empty "expected image" dir, but NOT in verb
ose mode. |
| 155 gm_test "--hierarchy --match selftest1 $CONFIGS -r $GM_INPUTS/images/empty-dir"
"$GM_OUTPUTS/nonverbose" |
153 | 156 |
154 # If run without "-r", the JSON's "actual-results" section should contain | 157 # If run without "-r", the JSON's "actual-results" section should contain |
155 # actual checksums marked as "failure-ignored", but the "expected-results" | 158 # actual checksums marked as "failure-ignored", but the "expected-results" |
156 # section should be empty. | 159 # section should be empty. |
157 gm_test "--hierarchy --match selftest1 $CONFIGS" "$GM_OUTPUTS/no-readpath" | 160 gm_test "--verbose --hierarchy --match selftest1 $CONFIGS" "$GM_OUTPUTS/no-readp
ath" |
158 | 161 |
159 # Test what happens if a subset of the renderModes fail (e.g. pipe) | 162 # Test what happens if a subset of the renderModes fail (e.g. pipe) |
160 gm_test "--simulatePipePlaybackFailure --hierarchy --match selftest1 $CONFIGS -r
$GM_INPUTS/json/identical-pixels.json" "$GM_OUTPUTS/pipe-playback-failure" | 163 gm_test "--simulatePipePlaybackFailure --verbose --hierarchy --match selftest1 $
CONFIGS -r $GM_INPUTS/json/identical-pixels.json" "$GM_OUTPUTS/pipe-playback-fai
lure" |
161 | 164 |
162 # Confirm that IntentionallySkipped tests are recorded as such. | 165 # Confirm that IntentionallySkipped tests are recorded as such. |
163 gm_test "--hierarchy --match selftest1 selftest2 $CONFIGS" "$GM_OUTPUTS/intentio
nally-skipped-tests" | 166 gm_test "--verbose --hierarchy --match selftest1 selftest2 $CONFIGS" "$GM_OUTPUT
S/intentionally-skipped-tests" |
164 | 167 |
165 echo "All tests passed." | 168 echo "All tests passed." |
OLD | NEW |