summaryrefslogtreecommitdiff
path: root/ext/gd/tests/imageconvolution_basic.phpt
diff options
context:
space:
mode:
authorChristoph M. Becker <cmbecker69@gmx.de>2016-06-19 14:29:27 +0200
committerChristoph M. Becker <cmbecker69@gmx.de>2016-09-11 12:56:53 +0200
commitdc09f309335cf8df7d39adc03580ac8d4f0c78f5 (patch)
tree1fbcf941a8fa538c889be5780e7e8dd24b81f07d /ext/gd/tests/imageconvolution_basic.phpt
parent326a4e38fbe8fd776624fc9891ad6a91a034504b (diff)
downloadphp-git-dc09f309335cf8df7d39adc03580ac8d4f0c78f5.tar.gz
A picture is worth a thousand message digests
The bundled GD test suites makes heavy use of md5() to verify the result of drawing operations. This leads to fragile tests (even a slight change in a PNG header would cause failure, and of course there is the possibility of collisions), and even worse, eventual test failures are rather unrevealing. Therefore we replace all md5() verification with a simplistic test_image_equals_file(), which is basically a simplified port of libgd's gdTestImageCompareToFile(), adapted to the needs of PHPTs. In the long run better tests helpers should be introduced (see also <http://news.php.net/php.internals/94081>), but for now this solution is preferable over the former. (cherry picked from commit 24f9e96792518ec2a75f26b1eb2471dd7694f2b7)
Diffstat (limited to 'ext/gd/tests/imageconvolution_basic.phpt')
-rw-r--r--ext/gd/tests/imageconvolution_basic.phpt10
1 files changed, 3 insertions, 7 deletions
diff --git a/ext/gd/tests/imageconvolution_basic.phpt b/ext/gd/tests/imageconvolution_basic.phpt
index 9e629ac0e6..972de76f86 100644
--- a/ext/gd/tests/imageconvolution_basic.phpt
+++ b/ext/gd/tests/imageconvolution_basic.phpt
@@ -22,12 +22,8 @@ $gaussian = array(
imageconvolution($image, $gaussian, 16, 0);
-ob_start();
-imagegd($image);
-$img = ob_get_contents();
-ob_end_clean();
-
-echo md5(base64_encode($img));
+include_once __DIR__ . '/func.inc';
+test_image_equals_file(__DIR__ . '/imageconvolution_basic.png', $image);
?>
--EXPECT--
-20979b45f8772cdbd78262af4e332638
+The images are equal.