php-src/ext/spl/tests/ArrayObject_overloaded_object_incompatible.phpt
Nikita Popov fd561505f4 Fix construction of AO with overloaded object error
a) Fix uses of zend_string in error message
b) Don't assign the overloaded object as the backing storage, that
   sort of defeats the point. Instead leave the previous value.
2016-02-24 22:34:50 +01:00

28 lines
494 B
PHP

--TEST--
Objects with overloaded get_properties are incompatible with ArrayObject
--FILE--
<?php
$ao = new ArrayObject([1, 2, 3]);
try {
$ao->exchangeArray(new SplFixedArray);
} catch (Exception $e) {
echo $e->getMessage(), "\n";
}
var_dump($ao);
?>
--EXPECT--
Overloaded object of type SplFixedArray is not compatible with ArrayObject
object(ArrayObject)#1 (1) {
["storage":"ArrayObject":private]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}