Re: Re: cvs: php4 / run-tests.php
| From: | (Marcus Börger) | Date: | Mon, 28 Oct 2002 17:24:31 +0000 |
| Subject: | Re: Re: cvs: php4 / run-tests.php | ||
| References: | 1 2 3 4 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-90214@lists.php.net to get a copy of this message | ||
First of all only some tests in ext/xslt were designed to present a warning.
I suggest this can be fixed by adding a --INI-- section disabling the error
messages.
Second i did another commit to direct logs to stderr so the errors are shown
in the output. So i do not see any problem here.
Third i guess we have two options:
a) Set error_log and such Off, track_errors=On and 'magically'
prepend echo $php_errormsg at each --FILE-- section. But as you can see
above there are tests that expect such messages so this would be a bit
complicated.
b) Leave it as it is now (of cause my favorite). Since now every warning/error
and not wanted message results in a test failure! According to iconv tests
i do not know by now if disabling the notices in the tests was a good idea.
regards
marcus
At 07:58 28.10.2002, Derick Rethans wrote:
On Mon, 28 Oct 2002, Jani Taskinen wrote: +1 for removing both bogus settings. (html_errors & log_errors) Another one here then: +1 for reverting the changes. Derick On Sun, 27 Oct 2002, Ilia A. wrote:I am curios as to your reasoning behind turning on html_errors bydefault, whywould the tests need HTML data? Logging of errors occurred during the tests seems pointless to me. AsI'vementioned before if a test needs to check if a certain type of error is generated the track_errors & $php_errormsg facility can be used tocapturethis error reliably. Logging of errors is unreliable since the actualerrormessage can go anywhere, stderr,syslog, user specified file, etc... It is highly likely that you may not even see the error message because itis notsent to stderr. Data sent to the error log is also 'variable', because it contains fluid data which different from system to system due to filepaths,so we must do all kinds of hackery if we are to use it when confirmingtheoutput of a test. I for one, would like to see that setting go away. Ilia P.S. The recent change to ini settings broken 9 tests, which workedfine priorto your change. EUC-JP to ISO-2022-JP [ext/iconv/tests/eucjp2iso2022jp.phpt] EUC-JP to SJIS [ext/iconv/tests/eucjp2sjis.phpt] EUC-JP to UTF8 [ext/iconv/tests/eucjp2utf8.phpt] iconv test [ext/iconv/tests/iconv001.phpt] UCS4BE to ASCII [ext/iconv/tests/iconv002.phpt] ob_output_handler [ext/iconv/tests/ob_iconv_handler.phpt] HTML input/output [ext/mbstring/tests/htmlent.phpt] rewriter handles <form> and <fieldset> correctly[ext/session/tests/021.phpt]Memoryleak in error printing [ext/xslt/tests/xslt-001.phpt] On October 27, 2002 07:14 pm, Marcus Börger wrote:php...First the tests take the nomal ini settings from any file found by$section_text['INI']) asSecond there are some settings overwritten by run-test.php.. Third you can overwrite first and second by specifying an INI section in the .phpt files. Now to the setting "log_errors" i want this thing on because ANY MESSAGE is either wanted or a REAL ERROR. The only test being an exception to this rule is ext/session/tests/008-php4.2.3.phpt. This test requires log_error to be set 0. BEFORE REMOVING log_errors=1 again i want this beeing discussed! marcus At 01:07 28.10.2002, Marcus Börger wrote:helly Sun Oct 27 19:07:11 2002 EDTModified files:/php4 run-tests.phpLog: allow default ini overwrites to be overwritten themselves in --INI-- #see followup on dev list Index: php4/run-tests.php diff -u php4/run-tests.php:1.91 php4/run-tests.php:1.92--- php4/run-tests.php:1.91 Sat Oct 26 12:54:30 2002+++ php4/run-tests.php Sun Oct 27 19:07:11 2002 @@ -480,28 +480,50 @@// Default ini settings $settings = array ( - "-d 'open_basedir='", - "-d 'disable_functions='", - "-d 'error_reporting=2047'", - "-d 'display_errors=0'", - "-d 'log_errors=0'", - "-d 'html_errors=0'", - "-d 'docref_root=/phpmanual/'", - "-d 'docref_ext=.html'", - "-d 'error_prepend_string='", - "-d 'error_append_string='", - "-d 'auto_append_file='", - "-d 'auto_prepend_file='", + "open_basedir=", + "disable_functions=", + "error_reporting=2047", + "display_errors=0", + "log_errors=1", + "html_errors=1", + "track_errors=1", + "docref_root=/phpmanual/", + "docref_ext=.html", + "error_prepend_string=", + "error_append_string=", + "auto_append_file=", + "auto_prepend_file=", ); - $ini_settings = ' '. join (' ', $settings); + $ini_settings = array(); + foreach($settings as $setting) { + if (strpos($setting, '=')!==false) { + $setting = explode("=", $setting); + $name = trim(strtolower($setting[0])); + $value = trim($setting[1]); + $ini_settings[$name] = $value; + } + }- // Any special ini settings + // Any special ini settings + // these may overwrite the test defaults... if (array_key_exists('INI', $section_text)) { foreach(preg_split( "/[\n\r]+/",-- <- For Sale! -> -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php -- ---------------------------------------------------------------------------$setting) {- if (strlen($setting)) { - $ini_settings .= " -d '$setting'"; + if (strpos($setting, '=')!==false) { + $setting = explode("=", $setting); + $name = trim(strtolower($setting[0])); + $value = trim($setting[1]); + $ini_settings[$name] = $value; } } + } + if (count($ini_settings)) { + $settings = ''; + foreach($ini_settings as $name => $value) { + $settings .= " -d '$name=$value'"; + } + $ini_settings = $settings; + } else { + $ini_settings = ''; }// We've satisfied the preconditions - run the test!-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.phpDerick Rethans http://derickrethans.nl/JDI Media Solutions --------------[ if you hold a unix shell to your ear, do you hear the c? ]-