diff options
author | Etienne Kneuss <colder@php.net> | 2008-05-24 13:25:24 +0000 |
---|---|---|
committer | Etienne Kneuss <colder@php.net> | 2008-05-24 13:25:24 +0000 |
commit | 5f360ab9bff5424fe55b684f7c71459db3c193cf (patch) | |
tree | 8571e96d8a52ea1c94d55badaaf6ebf9c5c36a73 | |
parent | 51967b91d50905de072646e0fc90e16c061e5086 (diff) | |
download | php-git-5f360ab9bff5424fe55b684f7c71459db3c193cf.tar.gz |
Add tests from testfest
-rw-r--r-- | ext/spl/tests/regexIterator_flags_basic.phpt | 26 | ||||
-rw-r--r-- | ext/spl/tests/regexIterator_mode_basic.phpt | 34 | ||||
-rw-r--r-- | ext/spl/tests/regexIterator_setMode_error.phpt | 30 |
3 files changed, 90 insertions, 0 deletions
diff --git a/ext/spl/tests/regexIterator_flags_basic.phpt b/ext/spl/tests/regexIterator_flags_basic.phpt new file mode 100644 index 0000000000..0a23dbdfb5 --- /dev/null +++ b/ext/spl/tests/regexIterator_flags_basic.phpt @@ -0,0 +1,26 @@ +--TEST-- +SPL: RegexIterator::getFlags() and setFlags() basic tests +--SKIPIF-- +<?php extension_loaded('spl') or die('skip'); ?> +--CREDITS-- +Felix De Vliegher <felix.devliegher@gmail.com> +--FILE-- +<?php + +$array = array('foo', 'bar', 'baz'); +$iterator = new ArrayIterator($array); +$regexIterator = new RegexIterator($iterator, "/f/", null, RegexIterator::USE_KEY); + +var_dump($regexIterator->getFlags() === RegexIterator::USE_KEY); + +// Test a change in flags, there's only one class constant so it has to be another int value +$regexIterator->setFlags(3); +var_dump($regexIterator->getFlags() === RegexIterator::USE_KEY); +$regexIterator->setFlags(RegexIterator::USE_KEY); +var_dump($regexIterator->getFlags() === RegexIterator::USE_KEY); + +?> +--EXPECT-- +bool(true) +bool(false) +bool(true) diff --git a/ext/spl/tests/regexIterator_mode_basic.phpt b/ext/spl/tests/regexIterator_mode_basic.phpt new file mode 100644 index 0000000000..204f537cb7 --- /dev/null +++ b/ext/spl/tests/regexIterator_mode_basic.phpt @@ -0,0 +1,34 @@ +--TEST-- +SPL: RegexIterator::getMode() and setMode() basic tests +--SKIPIF-- +<?php extension_loaded('spl') or die('skip'); ?> +--CREDITS-- +Felix De Vliegher <felix.devliegher@gmail.com> +--FILE-- +<?php + +$array = array('foo', 'bar', 'baz'); +$iterator = new ArrayIterator($array); +$regexIterator = new RegexIterator($iterator, "/f/"); + +var_dump($regexIterator->getMode() === RegexIterator::MATCH); + +$regexIterator->setMode(RegexIterator::MATCH); +var_dump($regexIterator->getMode() === RegexIterator::MATCH); + +$regexIterator->setMode(RegexIterator::GET_MATCH); +var_dump($regexIterator->getMode() === RegexIterator::GET_MATCH); + +$regexIterator->setMode(RegexIterator::ALL_MATCHES); +var_dump($regexIterator->getMode() === RegexIterator::ALL_MATCHES); + +$regexIterator->setMode(RegexIterator::SPLIT); +var_dump($regexIterator->getMode() === RegexIterator::SPLIT); + +?> +--EXPECT-- +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) diff --git a/ext/spl/tests/regexIterator_setMode_error.phpt b/ext/spl/tests/regexIterator_setMode_error.phpt new file mode 100644 index 0000000000..617ece30bc --- /dev/null +++ b/ext/spl/tests/regexIterator_setMode_error.phpt @@ -0,0 +1,30 @@ +--TEST-- +SPL: RegexIterator::setMode() error tests +--SKIPIF-- +<?php extension_loaded('spl') or die('skip'); ?> +--CREDITS-- +Felix De Vliegher <felix.devliegher@gmail.com> +--FILE-- +<?php + +$array = array('foo', 'bar', 'baz'); +$regexIterator = new RegexIterator(new ArrayIterator($array), "/f/"); + +var_dump($regexIterator->getMode()); + +try { + $regexIterator->setMode(7); +} catch (InvalidArgumentException $e) { + var_dump($e->getMessage()); + var_dump($e->getCode()); +} + +$regexIterator->setMode('foo'); + +?> +--EXPECTF-- +int(0) +string(14) "Illegal mode 7" +int(0) + +Warning: RegexIterator::setMode() expects parameter 1 to be long, string given in %s on line %d |