summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Joye <pajoye@php.net>2005-12-26 12:05:36 +0000
committerPierre Joye <pajoye@php.net>2005-12-26 12:05:36 +0000
commitab24e8589392b71454ced2ef921007227b0320ea (patch)
tree648b4f0f5c737eba58483dc1a7d8bf019c283975
parentfbc0843fd4a1618ff521b6f3942ddb7b08e86817 (diff)
downloadphp-git-ab24e8589392b71454ced2ef921007227b0320ea.tar.gz
- copyresized basic test
more once imagediff is available
-rw-r--r--ext/gd/tests/copyresized.phpt91
1 files changed, 91 insertions, 0 deletions
diff --git a/ext/gd/tests/copyresized.phpt b/ext/gd/tests/copyresized.phpt
new file mode 100644
index 0000000000..85eabd8664
--- /dev/null
+++ b/ext/gd/tests/copyresized.phpt
@@ -0,0 +1,91 @@
+--TEST--
+imagecopy
+--SKIPIF--
+<?php
+ if (!function_exists('imagecopy')) die("skip gd extension not available\n");
+?>
+--FILE--
+<?php
+
+function get_hexcolor($im, $c) {
+ if (imageistruecolor($im)) {
+ return $c;
+ }
+ $colors = imagecolorsforindex($im, $c);
+ return ($colors['red'] << 16) + ($colors['green'] << 8) + ($colors['blue']);
+}
+
+function check_doublesize($dst) {
+ $im = imagecreatetruecolor(38,38);
+ imagefill($im,0,0, 0xffffff);
+ imagefilledrectangle($im, 0,0,9,9, 0xff0000);
+ imagefilledrectangle($im, 0,28,9,37, 0xff0000);
+ imagefilledrectangle($im, 28,0,37,9, 0xff0000);
+ imagefilledrectangle($im, 28,28,37,37, 0xff0000);
+ imagefilledrectangle($im, 14,14,23,23, 0xff0000);
+
+ for ($x = 0; $x < 38; $x++) {
+ for ($y = 0; $y < 38; $y++) {
+ $p1 = imagecolorat($im, $x, $y);
+ $p2 = imagecolorat($dst, $x, $y);
+ if (get_hexcolor($im, $p1) != get_hexcolor($dst, $p2)) {
+ return false;
+ }
+ }
+ }
+ return true;
+}
+
+$src_tc = imagecreatetruecolor(19,19);
+imagefill($src_tc, 0,0, 0xffffff);
+imagefilledrectangle($src_tc, 0,0,4,4, 0xff0000);
+imagefilledrectangle($src_tc, 14,0,18,4, 0xff0000);
+imagefilledrectangle($src_tc, 0,14,4,18, 0xff0000);
+imagefilledrectangle($src_tc, 14,14,18,18, 0xff0000);
+imagefilledrectangle($src_tc, 7,7,11,11, 0xff0000);
+
+$dst_tc = imagecreatetruecolor(38,38);
+imagecopyresized($dst_tc, $src_tc, 0,0, 0,0, imagesx($dst_tc), imagesy($dst_tc), 19,19);
+
+if (!check_doublesize($dst_tc)) exit("1 failed\n");
+echo "TC->TC: ok\n";
+
+$src_tc = imagecreate(19,19);
+$white = imagecolorallocate($src_tc, 255,255,255);
+$red = imagecolorallocate($src_tc, 255,0,0);
+
+imagefilledrectangle($src_tc, 0,0,4,4, $red);
+imagefilledrectangle($src_tc, 14,0,18,4, $red);
+imagefilledrectangle($src_tc, 0,14,4,18, $red);
+imagefilledrectangle($src_tc, 14,14,18,18, $red);
+imagefilledrectangle($src_tc, 7,7,11,11, $red);
+
+$dst_tc = imagecreatetruecolor(38,38);
+imagecopyresized($dst_tc, $src_tc, 0,0, 0,0, imagesx($dst_tc), imagesy($dst_tc), 19,19);
+
+if (!check_doublesize($dst_tc)) exit("2 failed\n");
+echo "P->TC: ok\n";
+
+$src_tc = imagecreate(19,19);
+$white = imagecolorallocate($src_tc, 255,255,255);
+$red = imagecolorallocate($src_tc, 255,0,0);
+
+imagefilledrectangle($src_tc, 0,0,4,4, $red);
+imagefilledrectangle($src_tc, 14,0,18,4, $red);
+imagefilledrectangle($src_tc, 0,14,4,18, $red);
+imagefilledrectangle($src_tc, 14,14,18,18, $red);
+imagefilledrectangle($src_tc, 7,7,11,11, $red);
+
+$dst_tc = imagecreate(38,38);
+$white = imagecolorallocate($src_tc, 255,255,255);
+$red = imagecolorallocate($src_tc, 255,0,0);
+
+imagecopyresized($dst_tc, $src_tc, 0,0, 0,0, imagesx($dst_tc), imagesy($dst_tc), 19,19);
+
+if (!check_doublesize($dst_tc)) exit("3 failed\n");
+echo "P->P: ok\n";
+?>
+--EXPECTF--
+TC->TC: ok
+P->TC: ok
+P->P: ok