Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:55304 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 52019 invoked from network); 8 Sep 2011 12:07:30 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 Sep 2011 12:07:30 -0000 Authentication-Results: pb1.pair.com smtp.mail=confik@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=confik@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.213.170 as permitted sender) X-PHP-List-Original-Sender: confik@gmail.com X-Host-Fingerprint: 209.85.213.170 mail-yx0-f170.google.com Received: from [209.85.213.170] ([209.85.213.170:61771] helo=mail-yx0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 48/27-05788-100B86E4 for ; Thu, 08 Sep 2011 08:07:29 -0400 Received: by yxi13 with SMTP id 13so150780yxi.29 for ; Thu, 08 Sep 2011 05:07:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:from:date:message-id:subject:to:content-type; bh=MJlTCDRyAw6CNmaCXCqRAq0kreE01JdOQw7BiSi86Ds=; b=thle44VnZkxci8F0T42B/obII52vcZtFro+I+3bGW2GgfWv3hPY/2EX3HadOQV8syh 9i+q60uNGR1wQKFmDqJXwh8wxtvEqbARfxG2iufTkEuU+o68M7N7GyQ3dEav6YgT3+vG 3OfD6AMUOB/vehe9Jt1ictmyZG4SfvUWjPL14= Received: by 10.101.146.30 with SMTP id y30mr540201ann.68.1315483647077; Thu, 08 Sep 2011 05:07:27 -0700 (PDT) MIME-Version: 1.0 Received: by 10.100.33.19 with HTTP; Thu, 8 Sep 2011 05:07:07 -0700 (PDT) Date: Thu, 8 Sep 2011 17:07:07 +0500 Message-ID: To: PHP Internals Content-Type: multipart/mixed; boundary=0016e6d3dea07dec5e04ac6ce75f Subject: [PATCH] Autoguessing TEST_PHP_EXECUTABLE if none is provided in run-tests.php From: confik@gmail.com (Alexey Shein) --0016e6d3dea07dec5e04ac6ce75f Content-Type: text/plain; charset=UTF-8 Hello! I've made some improvements to run-tests.php: 1) Autoguessing TEST_PHP_EXECUTABLE and TEST_PHP_CGI_EXECUTABLE if they're not provided, i.e. assume they have value 'auto'. You can still pass your own value as usual. 2) Added option -n (use no php.ini) to the shebang line (#!/usr/bin/php -n) so it would run more reliably on some hosts. My Ubuntu setup did not have E letter in variables_order (i.e. variables_order=GPCS) so $_ENV array was empty and some tests were skipped when they could be run. 3) Some better error handling of wrong paths So now you can run run-tests.php with just $ ./run-tests.php ext instead of $ TEST_PHP_EXECUTABLE=auto php -n run-tests.php ext You can also run run-tests.php from sub-dir, it will correctly guess 'auto' as well: $ cd ext/ $ ../run-tests.php zlib Please, review this patch and, if there's no objections, I will prepare 5.4 and 5.3 versions too. -- Regards, Shein Alexey --0016e6d3dea07dec5e04ac6ce75f Content-Type: text/plain; charset=US-ASCII; name="run-tests.patch.txt" Content-Disposition: attachment; filename="run-tests.patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gsbojzsx0 SW5kZXg6IHJ1bi10ZXN0cy5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcnVuLXRlc3RzLnBocAkocmV2aXNp b24gMzE2NDEwKQorKysgcnVuLXRlc3RzLnBocAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQg QEAKLSMhL3Vzci9iaW4vcGhwCisjIS91c3IvYmluL3BocCAtbgogPD9waHAKIC8qCiAgICArLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSsKQEAgLTE0Myw1NSArMTQzLDQwIEBACiAgICRlbnZpcm9ubWVudFsiU3lzdGVt Um9vdCJdID0gZ2V0ZW52KCJTeXN0ZW1Sb290Iik7CiB9CiAKLS8vIERvbid0IGV2ZXIgZ3Vlc3Mg YXQgdGhlIFBIUCBleGVjdXRhYmxlIGxvY2F0aW9uLgotLy8gUmVxdWlyZSB0aGUgZXhwbGljaXQg c3BlY2lmaWNhdGlvbi4KLS8vIE90aGVyd2lzZSB3ZSBjb3VsZCBlbmQgdXAgdGVzdGluZyB0aGUg d3JvbmcgZmlsZSEKKy8vIFRyeSB0byBndWVzcyBQSFAgZXhlY3V0YWJsZSBsb2NhdGlvbiBpZiBl bnYgdmFyaWFibGUgaXMgbm90IHByb3ZpZGVkLCBhc3N1bWUgaXQgdG8gYmUgJ2F1dG8nLgogCi0k cGhwID0gbnVsbDsKLSRwaHBfY2dpID0gbnVsbDsKKyRwaHAgPSBnZXRlbnYoJ1RFU1RfUEhQX0VY RUNVVEFCTEUnKSA/IGdldGVudignVEVTVF9QSFBfRVhFQ1VUQUJMRScpIDogJ2F1dG8nOworJHBo cF9jZ2kgPSBnZXRlbnYoJ1RFU1RfUEhQX0NHSV9FWEVDVVRBQkxFJykgPyBnZXRlbnYoJ1RFU1Rf UEhQX0NHSV9FWEVDVVRBQkxFJykgOiAnYXV0byc7CiAKLWlmIChnZXRlbnYoJ1RFU1RfUEhQX0VY RUNVVEFCTEUnKSkgewotCSRwaHAgPSBnZXRlbnYoJ1RFU1RfUEhQX0VYRUNVVEFCTEUnKTsKLQot CWlmICgkcGhwPT0nYXV0bycpIHsKLQkJJHBocCA9ICRjd2QgLiAnL3NhcGkvY2xpL3BocCc7Ci0J CXB1dGVudigiVEVTVF9QSFBfRVhFQ1VUQUJMRT0kcGhwIik7Ci0KLQkJaWYgKCFnZXRlbnYoJ1RF U1RfUEhQX0NHSV9FWEVDVVRBQkxFJykpIHsKLQkJCSRwaHBfY2dpID0gJGN3ZCAuICcvc2FwaS9j Z2kvcGhwLWNnaSc7Ci0KLQkJCWlmIChmaWxlX2V4aXN0cygkcGhwX2NnaSkpIHsKLQkJCQlwdXRl bnYoIlRFU1RfUEhQX0NHSV9FWEVDVVRBQkxFPSRwaHBfY2dpIik7Ci0JCQl9IGVsc2UgewotCQkJ CSRwaHBfY2dpID0gbnVsbDsKLQkJCX0KLQkJfQotCX0KLQkkZW52aXJvbm1lbnRbJ1RFU1RfUEhQ X0VYRUNVVEFCTEUnXSA9ICRwaHA7CitpZiAoJHBocCA9PSAnYXV0bycpIHsKKwkkcGhwID0gcmVh bHBhdGgoX19ESVJfXyAuICcvc2FwaS9jbGkvcGhwJyk7CisJcHV0ZW52KCJURVNUX1BIUF9FWEVD VVRBQkxFPSRwaHAiKTsKIH0KKyRlbnZpcm9ubWVudFsnVEVTVF9QSFBfRVhFQ1VUQUJMRSddID0g JHBocDsKIAotaWYgKGdldGVudignVEVTVF9QSFBfQ0dJX0VYRUNVVEFCTEUnKSkgewotCSRwaHBf Y2dpID0gZ2V0ZW52KCdURVNUX1BIUF9DR0lfRVhFQ1VUQUJMRScpOwotCi0JaWYgKCRwaHBfY2dp PT0nYXV0bycpIHsKLQkJJHBocF9jZ2kgPSAkY3dkIC4gJy9zYXBpL2NnaS9waHAtY2dpJzsKLQkJ cHV0ZW52KCJURVNUX1BIUF9DR0lfRVhFQ1VUQUJMRT0kcGhwX2NnaSIpOwotCX0KLQotCSRlbnZp cm9ubWVudFsnVEVTVF9QSFBfQ0dJX0VYRUNVVEFCTEUnXSA9ICRwaHBfY2dpOworaWYgKCRwaHBf Y2dpID09ICdhdXRvJykgeworCSRwaHBfY2dpID0gcmVhbHBhdGgoX19ESVJfXyAuICcvc2FwaS9j Z2kvcGhwLWNnaScpOworCXB1dGVudigiVEVTVF9QSFBfQ0dJX0VYRUNVVEFCTEU9JHBocF9jZ2ki KTsKIH0KKyRlbnZpcm9ubWVudFsnVEVTVF9QSFBfQ0dJX0VYRUNVVEFCTEUnXSA9ICRwaHBfY2dp OwogCiBmdW5jdGlvbiB2ZXJpZnlfY29uZmlnKCkKIHsKLQlnbG9iYWwgJHBocDsKKwlnbG9iYWwg JHBocCwgJHBocF9jZ2k7CiAKLQlpZiAoZW1wdHkoJHBocCkgfHwgIWZpbGVfZXhpc3RzKCRwaHAp KSB7CisJaWYgKGVtcHR5KCRwaHApIHx8ICFpc19maWxlKCRwaHApKSB7CiAJCWVycm9yKCdlbnZp cm9ubWVudCB2YXJpYWJsZSBURVNUX1BIUF9FWEVDVVRBQkxFIG11c3QgYmUgc2V0IHRvIHNwZWNp ZnkgUEhQIGV4ZWN1dGFibGUhJyk7CiAJfQogCiAJaWYgKGZ1bmN0aW9uX2V4aXN0cygnaXNfZXhl Y3V0YWJsZScpICYmICFpc19leGVjdXRhYmxlKCRwaHApKSB7CiAJCWVycm9yKCJpbnZhbGlkIFBI UCBleGVjdXRhYmxlIHNwZWNpZmllZCBieSBURVNUX1BIUF9FWEVDVVRBQkxFICA9ICRwaHAiKTsK IAl9CisKKwlpZiAoIWVtcHR5KCRwaHBfY2dpKSkgeworCQlpZiAoIWlzX2ZpbGUoJHBocF9jZ2kp IHx8IChmdW5jdGlvbl9leGlzdHMoJ2lzX2V4ZWN1dGFibGUnKSAmJiAhaXNfZXhlY3V0YWJsZSgk cGhwX2NnaSkpKSB7CisJCQllcnJvcigiaW52YWxpZCBQSFAtQ0dJIGV4ZWN1dGFibGUgc3BlY2lm aWVkIGJ5IFRFU1RfUEhQX0NHSV9FWEVDVVRBQkxFID0gJHBocF9jZ2kiKTsKKwkJfQorCX0KIH0K IAogaWYgKGdldGVudignVEVTVF9QSFBfTE9HX0ZPUk1BVCcpKSB7Cg== --0016e6d3dea07dec5e04ac6ce75f--