summaryrefslogtreecommitdiff
path: root/ext/reflection/tests
diff options
context:
space:
mode:
authorZoe Slattery <zoe@php.net>2007-07-09 13:22:10 +0000
committerZoe Slattery <zoe@php.net>2007-07-09 13:22:10 +0000
commit4c22d54e231c8be879e42aa4ffe2fb7aa0fbc284 (patch)
treede23f4553f9adb655a9d9aa39daebeade61c5fd2 /ext/reflection/tests
parent2d098d18562215669b1835ee0a139f93610483e5 (diff)
downloadphp-git-4c22d54e231c8be879e42aa4ffe2fb7aa0fbc284.tar.gz
ReflectionClass constructor tests
Diffstat (limited to 'ext/reflection/tests')
-rw-r--r--ext/reflection/tests/reflectionClass_constructor_001.phpt33
-rw-r--r--ext/reflection/tests/reflectionClass_constructor_002.phpt67
2 files changed, 100 insertions, 0 deletions
diff --git a/ext/reflection/tests/reflectionClass_constructor_001.phpt b/ext/reflection/tests/reflectionClass_constructor_001.phpt
new file mode 100644
index 0000000000..1a70fe1f59
--- /dev/null
+++ b/ext/reflection/tests/reflectionClass_constructor_001.phpt
@@ -0,0 +1,33 @@
+--TEST--
+ReflectionClass::__constructor()
+--FILE--
+<?php
+$r1 = new ReflectionClass("stdClass");
+
+$myInstance = new stdClass;
+$r2 = new ReflectionClass($myInstance);
+
+class TrickClass {
+ function __toString() {
+ //Return the name of another class
+ return "Exception";
+ }
+}
+$myTrickClass = new TrickClass;
+$r3 = new ReflectionClass($myTrickClass);
+
+var_dump($r1, $r2, $r3);
+?>
+--EXPECTF--
+object(ReflectionClass)#%d (1) {
+ ["name"]=>
+ string(8) "stdClass"
+}
+object(ReflectionClass)#%d (1) {
+ ["name"]=>
+ string(8) "stdClass"
+}
+object(ReflectionClass)#%d (1) {
+ ["name"]=>
+ string(10) "TrickClass"
+}
diff --git a/ext/reflection/tests/reflectionClass_constructor_002.phpt b/ext/reflection/tests/reflectionClass_constructor_002.phpt
new file mode 100644
index 0000000000..3685c639de
--- /dev/null
+++ b/ext/reflection/tests/reflectionClass_constructor_002.phpt
@@ -0,0 +1,67 @@
+--TEST--
+ReflectionClass::__constructor() - bad arguments
+--FILE--
+<?php
+try {
+ var_dump(new ReflectionClass());
+} catch (Exception $e) {
+ echo $e->getMessage() . "\n";
+}
+
+try {
+ var_dump(new ReflectionClass(null));
+} catch (Exception $e) {
+ echo $e->getMessage() . "\n";
+}
+
+try {
+ var_dump(new ReflectionClass(true));
+} catch (Exception $e) {
+ echo $e->getMessage() . "\n";
+}
+
+try {
+ var_dump(new ReflectionClass(1));
+} catch (Exception $e) {
+ echo $e->getMessage() . "\n";
+}
+
+try {
+ var_dump(new ReflectionClass(array(1,2,3)));
+} catch (Exception $e) {
+ echo $e->getMessage() . "\n";
+}
+
+try {
+ var_dump(new ReflectionClass("stdClass", 1));
+} catch (Exception $e) {
+ echo $e->getMessage() . "\n";
+}
+
+try {
+ var_dump(new ReflectionClass("X"));
+} catch (Exception $e) {
+ echo $e->getMessage() . "\n";
+}
+
+?>
+--EXPECTF--
+
+Warning: ReflectionClass::__construct() expects exactly 1 parameter, 0 given in %s on line 3
+object(ReflectionClass)#%d (1) {
+ ["name"]=>
+ string(0) ""
+}
+Class does not exist
+Class 1 does not exist
+Class 1 does not exist
+
+Notice: Array to string conversion in %s on line 27
+Class Array does not exist
+
+Warning: ReflectionClass::__construct() expects exactly 1 parameter, 2 given in %s on line 33
+object(ReflectionClass)#%d (1) {
+ ["name"]=>
+ string(0) ""
+}
+Class X does not exist \ No newline at end of file