Browse Source

ReflectionClass constructor tests

experimental/5.2-WITH_DRCP
Zoe Slattery 19 years ago
parent
commit
4c22d54e23
  1. 33
      ext/reflection/tests/reflectionClass_constructor_001.phpt
  2. 67
      ext/reflection/tests/reflectionClass_constructor_002.phpt

33
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"
}

67
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
Loading…
Cancel
Save