]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/python/tools/test_exec_utils.py
In tests for PHP 8 disable Just-in-time, it conflicts with tools that determine coverage
[nominatim.git] / test / python / tools / test_exec_utils.py
index e6289135e7bd0f5da96d55db0e3cb2ee75da8632..26ea92b2c787fb72b6c4a39e64e9646723907cd9 100644 (file)
@@ -1,3 +1,9 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# This file is part of Nominatim. (https://nominatim.org)
+#
+# Copyright (C) 2022 by the Nominatim developer community.
+# For a full list of authors see the git log.
 """
 Tests for tools.exec_utils module.
 """
@@ -116,7 +122,13 @@ class TestRunApiScript:
 
     @staticmethod
     def test_fail_on_error_output(tmp_path):
-        (tmp_path / 'website' / 'bad.php').write_text("<?php\nfwrite(STDERR, 'WARNING'.PHP_EOL);")
+        # Starting PHP 8 the PHP CLI no longer has STDERR defined as constant
+        php = """
+        <?php
+        if(!defined('STDERR')) define('STDERR', fopen('php://stderr', 'wb'));
+        fwrite(STDERR, 'WARNING'.PHP_EOL);
+        """
+        (tmp_path / 'website' / 'bad.php').write_text(php)
 
         assert exec_utils.run_api_script('bad', tmp_path) == 1