summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnt Phillips <ant@php.net>2008-12-01 12:26:36 +0000
committerAnt Phillips <ant@php.net>2008-12-01 12:26:36 +0000
commit4248c38558b84bc9d8ba73693e37dbb6492f6ec8 (patch)
tree892a979daab13b6e1f9333285f0da67a5f5870e8
parent0410026ac0725f25e10a946316cf8d5f98bc122f (diff)
downloadphp-git-4248c38558b84bc9d8ba73693e37dbb6492f6ec8.tar.gz
Exif tests: checked on PHP 5.2.6, 5.3 and 6.0 (Windows, Linux and Linux 64 bit).
-rw-r--r--ext/exif/tests/exif007.phpt7
-rw-r--r--ext/exif/tests/exif008.phpt9
-rw-r--r--ext/exif/tests/exif009.phpt9
-rw-r--r--ext/exif/tests/exif010.phpt13
-rw-r--r--ext/exif/tests/exif011.phpt8
-rw-r--r--ext/exif/tests/exif012.phptbin2066 -> 2049 bytes
-rw-r--r--ext/exif/tests/exif013.phptbin2069 -> 2052 bytes
-rw-r--r--ext/exif/tests/exif014.phptbin2597 -> 2546 bytes
-rw-r--r--ext/exif/tests/exif015.phptbin2600 -> 2549 bytes
-rw-r--r--ext/exif/tests/exif016.phpt7
-rw-r--r--ext/exif/tests/exif017.phpt7
-rw-r--r--ext/exif/tests/exif018.phpt11
-rw-r--r--ext/exif/tests/exif020.phpt7
-rw-r--r--ext/exif/tests/exif021.phpt7
-rw-r--r--ext/exif/tests/exif022.phpt11
-rw-r--r--ext/exif/tests/exif023.phpt11
-rw-r--r--ext/exif/tests/exif024.phpt7
-rw-r--r--ext/exif/tests/exif025.phpt7
-rw-r--r--ext/exif/tests/exif026.phpt7
-rw-r--r--ext/exif/tests/exif027.phpt7
-rw-r--r--ext/exif/tests/exif_imagetype_basic.phpt23
-rw-r--r--ext/exif/tests/exif_imagetype_error.phpt46
-rw-r--r--ext/exif/tests/exif_imagetype_variation1.phpt209
-rw-r--r--ext/exif/tests/exif_read_exif_data_basic.phpt62
-rw-r--r--ext/exif/tests/exif_tagname_basic.phpt30
-rw-r--r--ext/exif/tests/exif_tagname_error.phpt37
-rw-r--r--ext/exif/tests/exif_tagname_variation1.phpt181
27 files changed, 663 insertions, 60 deletions
diff --git a/ext/exif/tests/exif007.phpt b/ext/exif/tests/exif007.phpt
index 5748f00547..e9c0e4dbe1 100644
--- a/ext/exif/tests/exif007.phpt
+++ b/ext/exif/tests/exif007.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, baseline JPEG with no IFD, EXIF, GPS or Interoperability data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(7) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(283)
+ int(%d)
[u"FileType"]=>
int(2)
[u"MimeType"]=>
@@ -35,5 +37,4 @@ array(7) {
int(1)
}
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif008.phpt b/ext/exif/tests/exif008.phpt
index 7dc38ca3d5..5b9ef0ec0a 100644
--- a/ext/exif/tests/exif008.phpt
+++ b/ext/exif/tests/exif008.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, JPEG with IFD data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(16) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(527)
+ int(%d)
[u"FileType"]=>
int(2)
[u"MimeType"]=>
@@ -55,11 +57,10 @@ array(16) {
[u"ResolutionUnit"]=>
int(2)
[u"DateTime"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"Artist"]=>
unicode(12) "Eric Stewart"
[u"Copyright"]=>
unicode(12) "Eric Stewart"
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif009.phpt b/ext/exif/tests/exif009.phpt
index 185eace31a..69ea530c86 100644
--- a/ext/exif/tests/exif009.phpt
+++ b/ext/exif/tests/exif009.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, JPEG with IFD data in Motorola byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(16) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(527)
+ int(%d)
[u"FileType"]=>
int(2)
[u"MimeType"]=>
@@ -55,11 +57,10 @@ array(16) {
[u"ResolutionUnit"]=>
int(2)
[u"DateTime"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"Artist"]=>
unicode(12) "Eric Stewart"
[u"Copyright"]=>
unicode(12) "Eric Stewart"
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif010.phpt b/ext/exif/tests/exif010.phpt
index 8b230198dc..b4ea4020fc 100644
--- a/ext/exif/tests/exif010.phpt
+++ b/ext/exif/tests/exif010.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, JPEG with IFD and EXIF data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(28) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(741)
+ int(%d)
[u"FileType"]=>
int(2)
[u"MimeType"]=>
@@ -57,7 +59,7 @@ array(28) {
[u"ResolutionUnit"]=>
int(2)
[u"DateTime"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"Artist"]=>
unicode(12) "Eric Stewart"
[u"Copyright"]=>
@@ -71,9 +73,9 @@ array(28) {
[u"ISOSpeedRatings"]=>
int(80)
[u"DateTimeOriginal"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"DateTimeDigitized"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"MeteringMode"]=>
int(5)
[u"LightSource"]=>
@@ -87,5 +89,4 @@ array(28) {
[u"ExifImageLength"]=>
int(1)
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif011.phpt b/ext/exif/tests/exif011.phpt
index 0c5df35ed4..d19a6bf192 100644
--- a/ext/exif/tests/exif011.phpt
+++ b/ext/exif/tests/exif011.phpt
@@ -16,7 +16,7 @@ array(28) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(741)
+ int(%d)
[u"FileType"]=>
int(2)
[u"MimeType"]=>
@@ -57,7 +57,7 @@ array(28) {
[u"ResolutionUnit"]=>
int(2)
[u"DateTime"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"Artist"]=>
unicode(12) "Eric Stewart"
[u"Copyright"]=>
@@ -71,9 +71,9 @@ array(28) {
[u"ISOSpeedRatings"]=>
int(80)
[u"DateTimeOriginal"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"DateTimeDigitized"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"MeteringMode"]=>
int(5)
[u"LightSource"]=>
diff --git a/ext/exif/tests/exif012.phpt b/ext/exif/tests/exif012.phpt
index 0528c2fcf7..ade6320c4d 100644
--- a/ext/exif/tests/exif012.phpt
+++ b/ext/exif/tests/exif012.phpt
Binary files differ
diff --git a/ext/exif/tests/exif013.phpt b/ext/exif/tests/exif013.phpt
index a1bbe327fe..b9a7cce2c3 100644
--- a/ext/exif/tests/exif013.phpt
+++ b/ext/exif/tests/exif013.phpt
Binary files differ
diff --git a/ext/exif/tests/exif014.phpt b/ext/exif/tests/exif014.phpt
index 3dad079df8..d4cddc2be8 100644
--- a/ext/exif/tests/exif014.phpt
+++ b/ext/exif/tests/exif014.phpt
Binary files differ
diff --git a/ext/exif/tests/exif015.phpt b/ext/exif/tests/exif015.phpt
index bee890f2b7..70b0f4460c 100644
--- a/ext/exif/tests/exif015.phpt
+++ b/ext/exif/tests/exif015.phpt
Binary files differ
diff --git a/ext/exif/tests/exif016.phpt b/ext/exif/tests/exif016.phpt
index cc03946a69..88fdf30e26 100644
--- a/ext/exif/tests/exif016.phpt
+++ b/ext/exif/tests/exif016.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(26) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(1874)
+ int(%d)
[u"FileType"]=>
int(7)
[u"MimeType"]=>
@@ -1618,5 +1620,4 @@ array(26) {
[u"Copyright"]=>
unicode(12) "Eric Stewart"
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif017.phpt b/ext/exif/tests/exif017.phpt
index 88b5adab1a..06a3683d7c 100644
--- a/ext/exif/tests/exif017.phpt
+++ b/ext/exif/tests/exif017.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD data in Motorola byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(26) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(1874)
+ int(%d)
[u"FileType"]=>
int(8)
[u"MimeType"]=>
@@ -1618,5 +1620,4 @@ array(26) {
[u"Copyright"]=>
unicode(12) "Eric Stewart"
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif018.phpt b/ext/exif/tests/exif018.phpt
index a206606207..2792485aed 100644
--- a/ext/exif/tests/exif018.phpt
+++ b/ext/exif/tests/exif018.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD and EXIF data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(37) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(2088)
+ int(%d)
[u"FileType"]=>
int(7)
[u"MimeType"]=>
@@ -1626,9 +1628,9 @@ array(37) {
[u"ISOSpeedRatings"]=>
int(80)
[u"DateTimeOriginal"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"DateTimeDigitized"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"MeteringMode"]=>
int(5)
[u"LightSource"]=>
@@ -1642,5 +1644,4 @@ array(37) {
[u"ExifImageLength"]=>
int(1)
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif020.phpt b/ext/exif/tests/exif020.phpt
index c78e6eb5c5..55c744f219 100644
--- a/ext/exif/tests/exif020.phpt
+++ b/ext/exif/tests/exif020.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD and GPS data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(34) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(2068)
+ int(%d)
[u"FileType"]=>
int(7)
[u"MimeType"]=>
@@ -1655,5 +1657,4 @@ array(34) {
unicode(4) "53/1"
}
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif021.phpt b/ext/exif/tests/exif021.phpt
index 51211cac74..49883a87aa 100644
--- a/ext/exif/tests/exif021.phpt
+++ b/ext/exif/tests/exif021.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD and GPS data in Motorola byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(34) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(2068)
+ int(%d)
[u"FileType"]=>
int(8)
[u"MimeType"]=>
@@ -1655,5 +1657,4 @@ array(34) {
unicode(4) "53/1"
}
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif022.phpt b/ext/exif/tests/exif022.phpt
index 47057df3fb..b5605c4423 100644
--- a/ext/exif/tests/exif022.phpt
+++ b/ext/exif/tests/exif022.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD, EXIF and GPS data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(45) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(2282)
+ int(%d)
[u"FileType"]=>
int(7)
[u"MimeType"]=>
@@ -1626,9 +1628,9 @@ array(45) {
[u"ISOSpeedRatings"]=>
int(80)
[u"DateTimeOriginal"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"DateTimeDigitized"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"MeteringMode"]=>
int(5)
[u"LightSource"]=>
@@ -1679,5 +1681,4 @@ array(45) {
unicode(4) "53/1"
}
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif023.phpt b/ext/exif/tests/exif023.phpt
index 841f9dca98..2182ee7196 100644
--- a/ext/exif/tests/exif023.phpt
+++ b/ext/exif/tests/exif023.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD, EXIF and GPS data in Motorola byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(45) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(2282)
+ int(%d)
[u"FileType"]=>
int(8)
[u"MimeType"]=>
@@ -1626,9 +1628,9 @@ array(45) {
[u"ISOSpeedRatings"]=>
int(80)
[u"DateTimeOriginal"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"DateTimeDigitized"]=>
- unicode(19) "2008:06:19 01:47:53"
+ unicode(%d) "%s"
[u"MeteringMode"]=>
int(5)
[u"LightSource"]=>
@@ -1679,5 +1681,4 @@ array(45) {
unicode(4) "53/1"
}
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif024.phpt b/ext/exif/tests/exif024.phpt
index 76a8d9b9e5..54704486bd 100644
--- a/ext/exif/tests/exif024.phpt
+++ b/ext/exif/tests/exif024.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, JPEG with IFD0, EXIF, INTEROP data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(14) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(417)
+ int(%d)
[u"FileType"]=>
int(2)
[u"MimeType"]=>
@@ -51,5 +53,4 @@ array(14) {
[u"RelatedImageHeight"]=>
int(1)
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif025.phpt b/ext/exif/tests/exif025.phpt
index 40c6ba1347..14669e130c 100644
--- a/ext/exif/tests/exif025.phpt
+++ b/ext/exif/tests/exif025.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, JPEG with IFD0, EXIF, INTEROP data in Motorola byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(14) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(417)
+ int(%d)
[u"FileType"]=>
int(2)
[u"MimeType"]=>
@@ -51,5 +53,4 @@ array(14) {
[u"RelatedImageHeight"]=>
int(1)
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif026.phpt b/ext/exif/tests/exif026.phpt
index a837193cd1..834d05a188 100644
--- a/ext/exif/tests/exif026.phpt
+++ b/ext/exif/tests/exif026.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD0, EXIF, INTEROP data in Intel byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(31) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(1984)
+ int(%d)
[u"FileType"]=>
int(7)
[u"MimeType"]=>
@@ -1628,5 +1630,4 @@ array(31) {
[u"RelatedImageHeight"]=>
int(1)
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif027.phpt b/ext/exif/tests/exif027.phpt
index 8afa0482cb..3b5134060b 100644
--- a/ext/exif/tests/exif027.phpt
+++ b/ext/exif/tests/exif027.phpt
@@ -1,5 +1,7 @@
--TEST--
Check for exif_read_data, TIFF with IFD0, EXIF, INTEROP data in Motorola byte-order.
+--CREDIT--
+Eric Stewart <ericleestewart@gmail.com>
--SKIPIF--
<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
--INI--
@@ -16,7 +18,7 @@ array(31) {
[u"FileDateTime"]=>
int(%d)
[u"FileSize"]=>
- int(1984)
+ int(%d)
[u"FileType"]=>
int(8)
[u"MimeType"]=>
@@ -1628,5 +1630,4 @@ array(31) {
[u"RelatedImageHeight"]=>
int(1)
}
---CREDIT--
-Eric Stewart <ericleestewart@gmail.com>
+
diff --git a/ext/exif/tests/exif_imagetype_basic.phpt b/ext/exif/tests/exif_imagetype_basic.phpt
new file mode 100644
index 0000000000..1248d39add
--- /dev/null
+++ b/ext/exif/tests/exif_imagetype_basic.phpt
@@ -0,0 +1,23 @@
+--TEST--
+Check for exif_imagetype default behaviour
+--SKIPIF--
+<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
+--INI--
+output_handler=
+zlib.output_compression=0
+--FILE--
+<?php
+
+/* Prototype : int exif_imagetype ( string $filename )
+ * Description: Determine the type of an image
+ * Source code: ext/exif/exif.c
+*/
+echo "*** Testing exif_imagetype() : basic functionality ***\n";
+
+var_dump(exif_imagetype(dirname(__FILE__).'/test2.jpg'));
+?>
+===Done===
+--EXPECT--
+*** Testing exif_imagetype() : basic functionality ***
+int(2)
+===Done=== \ No newline at end of file
diff --git a/ext/exif/tests/exif_imagetype_error.phpt b/ext/exif/tests/exif_imagetype_error.phpt
new file mode 100644
index 0000000000..989d02b6a4
--- /dev/null
+++ b/ext/exif/tests/exif_imagetype_error.phpt
@@ -0,0 +1,46 @@
+--TEST--
+Test exif_imagetype() function : error conditions
+--SKIPIF--
+<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
+--FILE--
+<?php
+
+/* Prototype : int exif_imagetype ( string $filename )
+ * Description: Determine the type of an image
+ * Source code: ext/exif/exif.c
+*/
+
+echo "*** Testing exif_imagetype() : error conditions ***\n";
+
+echo "\n-- Testing exif_imagetype() function with no arguments --\n";
+var_dump( exif_imagetype() );
+
+echo "\n-- Testing exif_imagetype() function with more than expected no. of arguments --\n";
+$extra_arg = 10;
+var_dump( exif_imagetype(dirname(__FILE__).'/test2.jpg', $extra_arg) );
+
+echo "\n-- Testing exif_imagetype() function with an unknown file --\n";
+var_dump( exif_imagetype(dirname(__FILE__).'/foo.jpg') );
+
+
+?>
+===Done===
+--EXPECTF--
+*** Testing exif_imagetype() : error conditions ***
+
+-- Testing exif_imagetype() function with no arguments --
+
+Warning: exif_imagetype() expects exactly 1 parameter, 0 given in %s on line %d
+NULL
+
+-- Testing exif_imagetype() function with more than expected no. of arguments --
+
+Warning: exif_imagetype() expects exactly 1 parameter, 2 given in %s on line %d
+NULL
+
+-- Testing exif_imagetype() function with an unknown file --
+
+Warning: exif_imagetype(%s/foo.jpg): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+===Done===
+
diff --git a/ext/exif/tests/exif_imagetype_variation1.phpt b/ext/exif/tests/exif_imagetype_variation1.phpt
new file mode 100644
index 0000000000..2841f9a622
--- /dev/null
+++ b/ext/exif/tests/exif_imagetype_variation1.phpt
@@ -0,0 +1,209 @@
+--TEST--
+Test exif_imagetype() function : usage variations - different types for filename argument
+--SKIPIF--
+<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
+--FILE--
+<?php
+
+/* Prototype : int exif_imagetype ( string $filename )
+ * Description: Determine the type of an image
+ * Source code: ext/exif/exif.c
+*/
+
+echo "*** Testing exif_imagetype() : different types for filename argument ***\n";
+// initialize all required variables
+
+// get an unset variable
+$unset_var = 'string_val';
+unset($unset_var);
+
+// declaring a class
+class sample {
+ public function __toString() {
+ return "obj'ct";
+ }
+}
+
+// Defining resource
+$file_handle = fopen(__FILE__, 'r');
+
+// array with different values
+$values = array (
+
+ // integer values
+ 0,
+ 1,
+ 12345,
+ -2345,
+
+ // float values
+ 10.5,
+ -10.5,
+ 10.1234567e10,
+ 10.7654321E-10,
+ .5,
+
+ // array values
+ array(),
+ array(0),
+ array(1),
+ array(1, 2),
+ array('color' => 'red', 'item' => 'pen'),
+
+ // boolean values
+ true,
+ false,
+ TRUE,
+ FALSE,
+
+ // empty string
+ "",
+ '',
+
+ // undefined variable
+ $undefined_var,
+
+ // unset variable
+ $unset_var,
+
+ // objects
+ new sample(),
+
+ // resource
+ $file_handle,
+
+ NULL,
+ null
+);
+
+
+// loop through each element of the array and check the working of exif_imagetype()
+// when $filename is supplied with different values
+
+echo "\n--- Testing exif_imagetype() by supplying different values for 'filename' argument ---\n";
+$counter = 1;
+foreach($values as $filename) {
+ echo "-- Iteration $counter --\n";
+ var_dump( exif_imagetype($filename) );
+ $counter ++;
+}
+
+// closing the file
+fclose($file_handle);
+
+echo "Done\n";
+?>
+
+?>
+===Done===
+--EXPECTF--
+*** Testing exif_imagetype() : different types for filename argument ***
+
+Notice: Undefined variable: undefined_var in %s on line %d
+
+Notice: Undefined variable: unset_var in %s on line %d
+
+--- Testing exif_imagetype() by supplying different values for 'filename' argument ---
+-- Iteration 1 --
+
+Warning: exif_imagetype(0): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 2 --
+
+Warning: exif_imagetype(1): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 3 --
+
+Warning: exif_imagetype(12345): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 4 --
+
+Warning: exif_imagetype(-2345): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 5 --
+
+Warning: exif_imagetype(10.5): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 6 --
+
+Warning: exif_imagetype(-10.5): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 7 --
+
+Warning: exif_imagetype(101234567000): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 8 --
+
+Warning: exif_imagetype(1.07654321E-9): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 9 --
+
+Warning: exif_imagetype(0.5): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 10 --
+
+Notice: Array to string conversion in %s on line %d
+
+Warning: exif_imagetype(Array): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 11 --
+
+Notice: Array to string conversion in %s on line %d
+
+Warning: exif_imagetype(Array): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 12 --
+
+Notice: Array to string conversion in %s on line %d
+
+Warning: exif_imagetype(Array): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 13 --
+
+Notice: Array to string conversion in %s on line %d
+
+Warning: exif_imagetype(Array): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 14 --
+
+Notice: Array to string conversion in %s on line %d
+
+Warning: exif_imagetype(Array): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 15 --
+
+Warning: exif_imagetype(1): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 16 --
+bool(false)
+-- Iteration 17 --
+
+Warning: exif_imagetype(1): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 18 --
+bool(false)
+-- Iteration 19 --
+bool(false)
+-- Iteration 20 --
+bool(false)
+-- Iteration 21 --
+bool(false)
+-- Iteration 22 --
+bool(false)
+-- Iteration 23 --
+
+Warning: exif_imagetype(obj'ct): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 24 --
+
+Warning: exif_imagetype(Resource id #%d): failed to open stream: No such file or directory in %s on line %d
+bool(false)
+-- Iteration 25 --
+bool(false)
+-- Iteration 26 --
+bool(false)
+Done
+
+?>
+===Done===
+
diff --git a/ext/exif/tests/exif_read_exif_data_basic.phpt b/ext/exif/tests/exif_read_exif_data_basic.phpt
new file mode 100644
index 0000000000..435f13752a
--- /dev/null
+++ b/ext/exif/tests/exif_read_exif_data_basic.phpt
@@ -0,0 +1,62 @@
+--TEST--
+Check for read_exif_data default behaviour
+--SKIPIF--
+<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
+--INI--
+output_handler=
+zlib.output_compression=0
+--FILE--
+<?php
+
+/* Prototype : array read_exif_data ( string $filename [, string $sections [, bool $arrays [, bool $thumbnail ]]] )
+ * Description: Alias of exif_read_data()
+ * Source code: ext/exif/exif.c
+*/
+echo "*** Testing read_exif_data() : basic functionality ***\n";
+
+print_r(read_exif_data(dirname(__FILE__).'/test2.jpg'));
+?>
+===Done===
+--EXPECTF--
+*** Testing read_exif_data() : basic functionality ***
+Array
+(
+ [FileName] => test2.jpg
+ [FileDateTime] => %d
+ [FileSize] => 1240
+ [FileType] => 2
+ [MimeType] => image/jpeg
+ [SectionsFound] => ANY_TAG, IFD0, THUMBNAIL, COMMENT
+ [COMPUTED] => Array
+ (
+ [html] => width="1" height="1"
+ [Height] => 1
+ [Width] => 1
+ [IsColor] => 1
+ [ByteOrderMotorola] => 1
+ [UserComment] => Exif test image.
+ [UserCommentEncoding] => ASCII
+ [Copyright] => Photo (c) M.Boerger, Edited by M.Boerger.
+ [Copyright.Photographer] => Photo (c) M.Boerger
+ [Copyright.Editor] => Edited by M.Boerger.
+ [Thumbnail.FileType] => 2
+ [Thumbnail.MimeType] => image/jpeg
+ )
+
+ [Copyright] => Photo (c) M.Boerger
+ [UserComment] => ASCII
+ [THUMBNAIL] => Array
+ (
+ [JPEGInterchangeFormat] => 134
+ [JPEGInterchangeFormatLength] => 523
+ )
+
+ [COMMENT] => Array
+ (
+ [0] => Comment #1.
+ [1] => Comment #2.
+ [2] => Comment #3end
+ )
+
+)
+===Done=== \ No newline at end of file
diff --git a/ext/exif/tests/exif_tagname_basic.phpt b/ext/exif/tests/exif_tagname_basic.phpt
new file mode 100644
index 0000000000..e81b723dbb
--- /dev/null
+++ b/ext/exif/tests/exif_tagname_basic.phpt
@@ -0,0 +1,30 @@
+--TEST--
+Test exif_tagname() function : basic functionality
+--SKIPIF--
+<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
+--INI--
+output_handler=
+zlib.output_compression=0
+--FILE--
+<?php
+
+/* Prototype :string exif_tagname ( string $index )
+ * Description: Get the header name for an index
+ * Source code: ext/exif/exif.c
+*/
+
+echo "*** Testing exif_tagname() : basic functionality ***\n";
+
+var_dump(exif_tagname(0x10E));
+var_dump(exif_tagname(0x10F));
+var_dump(exif_tagname(0x110));
+
+?>
+===Done===
+--EXPECT--
+*** Testing exif_tagname() : basic functionality ***
+unicode(16) "ImageDescription"
+unicode(4) "Make"
+unicode(5) "Model"
+===Done===
+
diff --git a/ext/exif/tests/exif_tagname_error.phpt b/ext/exif/tests/exif_tagname_error.phpt
new file mode 100644
index 0000000000..ed1f2fdc3a
--- /dev/null
+++ b/ext/exif/tests/exif_tagname_error.phpt
@@ -0,0 +1,37 @@
+--TEST--
+Test exif_tagname() function : error conditions
+--SKIPIF--
+<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
+--FILE--
+<?php
+
+/* Prototype :string exif_tagname ( string $index )
+ * Description: Get the header name for an index
+ * Source code: ext/exif/exif.c
+*/
+
+echo "*** Testing exif_tagname() : error conditions ***\n";
+
+echo "\n-- Testing exif_tagname() function with no arguments --\n";
+var_dump( exif_tagname() );
+
+echo "\n-- Testing exif_tagname() function with more than expected no. of arguments --\n";
+$extra_arg = 10;
+var_dump( exif_tagname(0x10E, $extra_arg) );
+
+?>
+===Done===
+--EXPECTF--
+*** Testing exif_tagname() : error conditions ***
+
+-- Testing exif_tagname() function with no arguments --
+
+Warning: exif_tagname() expects exactly 1 parameter, 0 given in %s on line %d
+NULL
+
+-- Testing exif_tagname() function with more than expected no. of arguments --
+
+Warning: exif_tagname() expects exactly 1 parameter, 2 given in %s on line %d
+NULL
+===Done===
+
diff --git a/ext/exif/tests/exif_tagname_variation1.phpt b/ext/exif/tests/exif_tagname_variation1.phpt
new file mode 100644
index 0000000000..1e49bd1a2b
--- /dev/null
+++ b/ext/exif/tests/exif_tagname_variation1.phpt
@@ -0,0 +1,181 @@
+--TEST--
+Test exif_tagname() function : usage variations - different types for index argument
+--SKIPIF--
+<?php if (!extension_loaded('exif')) print 'skip exif extension not available';?>
+--FILE--
+<?php
+
+/* Prototype : string exif_tagname ( string $index )
+ * Description: Get the header name for an index
+ * Source code: ext/exif/exif.c
+*/
+
+echo "*** Testing exif_tagname() : different types for index argument ***\n";
+// initialize all required variables
+
+// get an unset variable
+$unset_var = 'string_val';
+unset($unset_var);
+
+// declaring a class
+class sample {
+ public function __toString() {
+ return "obj'ct";
+ }
+}
+
+// Defining resource
+$file_handle = fopen(__FILE__, 'r');
+
+// array with different values
+$values = array (
+
+ // integer values
+ 0,
+ 1,
+ 12345,
+ -2345,
+
+ // float values
+ 10.5,
+ -10.5,
+ 10.1234567e10,
+ 10.7654321E-10,
+ .5,
+
+ // array values
+ array(),
+ array(0),
+ array(1),
+ array(1, 2),
+ array('color' => 'red', 'item' => 'pen'),
+
+ // boolean values
+ true,
+ false,
+ TRUE,
+ FALSE,
+
+ // empty string
+ "",
+ '',
+
+ // undefined variable
+ $undefined_var,
+
+ // unset variable
+ $unset_var,
+
+ // objects
+ new sample(),
+
+ // resource
+ $file_handle,
+
+ NULL,
+ null
+);
+
+
+// loop through each element of the array and check the working of exif_tagname()
+// when $index arugment is supplied with different values
+
+echo "\n--- Testing exif_tagname() by supplying different values for 'index' argument ---\n";
+$counter = 1;
+foreach($values as $index) {
+ echo "-- Iteration $counter --\n";
+ var_dump( exif_tagname($index) );
+ $counter ++;
+}
+
+// closing the file
+fclose($file_handle);
+
+echo "Done\n";
+?>
+
+?>
+===Done===
+--EXPECTF--
+*** Testing exif_tagname() : different types for index argument ***
+
+Notice: Undefined variable: undefined_var in %s on line %d
+
+Notice: Undefined variable: unset_var in %s on line %d
+
+--- Testing exif_tagname() by supplying different values for 'index' argument ---
+-- Iteration 1 --
+bool(false)
+-- Iteration 2 --
+bool(false)
+-- Iteration 3 --
+bool(false)
+-- Iteration 4 --
+bool(false)
+-- Iteration 5 --
+bool(false)
+-- Iteration 6 --
+bool(false)
+-- Iteration 7 --
+bool(false)
+-- Iteration 8 --
+bool(false)
+-- Iteration 9 --
+bool(false)
+-- Iteration 10 --
+
+Warning: exif_tagname() expects parameter 1 to be long, array given in %s on line %d
+NULL
+-- Iteration 11 --
+
+Warning: exif_tagname() expects parameter 1 to be long, array given in %s on line %d
+NULL
+-- Iteration 12 --
+
+Warning: exif_tagname() expects parameter 1 to be long, array given in %s on line %d
+NULL
+-- Iteration 13 --
+
+Warning: exif_tagname() expects parameter 1 to be long, array given in %s on line %d
+NULL
+-- Iteration 14 --
+
+Warning: exif_tagname() expects parameter 1 to be long, array given in %s on line %d
+NULL
+-- Iteration 15 --
+bool(false)
+-- Iteration 16 --
+bool(false)
+-- Iteration 17 --
+bool(false)
+-- Iteration 18 --
+bool(false)
+-- Iteration 19 --
+
+Warning: exif_tagname() expects parameter 1 to be long, Unicode string given in %s on line %d
+NULL
+-- Iteration 20 --
+
+Warning: exif_tagname() expects parameter 1 to be long, Unicode string given in %s on line %d
+NULL
+-- Iteration 21 --
+bool(false)
+-- Iteration 22 --
+bool(false)
+-- Iteration 23 --
+
+Warning: exif_tagname() expects parameter 1 to be long, object given in %s on line %d
+NULL
+-- Iteration 24 --
+
+Warning: exif_tagname() expects parameter 1 to be long, resource given in %s on line %d
+NULL
+-- Iteration 25 --
+bool(false)
+-- Iteration 26 --
+bool(false)
+Done
+
+?>
+===Done===
+