1--TEST--
2FPM: GH-9921 - loading shared ext in FPM config does not register module handlers
3--SKIPIF--
4<?php
5include "skipif.inc";
6FPM\Tester::skipIfSharedExtensionNotFound('dl_test');
7?>
8--FILE--
9<?php
10
11require_once "tester.inc";
12
13$cfg = <<<EOT
14[global]
15error_log = {{FILE:LOG}}
16[unconfined]
17listen = {{ADDR}}
18pm = static
19pm.max_children = 1
20pm.status_path = /status
21catch_workers_output = yes
22env[PHP_DL_TEST_MODULE_DEBUG] = 1
23php_admin_value[extension] = dl_test
24EOT;
25
26$code = <<<EOT
27<?php
28var_dump(extension_loaded('dl_test'));
29EOT;
30
31$tester = new FPM\Tester($cfg, $code);
32$tester->start();
33$tester->expectLogStartNotices();
34$tester->request()->expectBody('bool(true)');
35$tester->expectLogPattern('/DL TEST MINIT/');
36$tester->expectLogPattern('/DL TEST RINIT/');
37$tester->expectLogPattern('/DL TEST RSHUTDOWN/');
38$tester->request()->expectBody('bool(true)');
39$tester->expectLogPattern('/DL TEST RINIT/');
40$tester->expectLogPattern('/DL TEST RSHUTDOWN/');
41$tester->terminate();
42$tester->expectLogTerminatingNotices();
43$tester->close();
44
45?>
46Done
47--EXPECT--
48Done
49--CLEAN--
50<?php
51require_once "tester.inc";
52FPM\Tester::clean();
53?>
54<?php
55