diff options
-rw-r--r-- | test/php/fastcgi_finish_request/index.php | 11 | ||||
-rw-r--r-- | test/test_php_application.py | 26 |
2 files changed, 37 insertions, 0 deletions
diff --git a/test/php/fastcgi_finish_request/index.php b/test/php/fastcgi_finish_request/index.php new file mode 100644 index 00000000..a6211303 --- /dev/null +++ b/test/php/fastcgi_finish_request/index.php @@ -0,0 +1,11 @@ +<?php +if (!isset($_GET['skip'])) { + echo "0123"; +} + +if (!fastcgi_finish_request()) { + error_log("Error in fastcgi_finish_request"); +} + +echo "4567"; +?> diff --git a/test/test_php_application.py b/test/test_php_application.py index f1a9e293..578de0b7 100644 --- a/test/test_php_application.py +++ b/test/test_php_application.py @@ -94,6 +94,32 @@ class TestPHPApplication(TestApplicationPHP): assert resp['status'] == 200, 'query string empty status' assert resp['headers']['Query-String'] == '', 'query string empty' + def test_php_application_fastcgi_finish_request(self, temp_dir): + self.load('fastcgi_finish_request') + + assert self.get()['body'] == '0123' + + unit_stop() + + with open(temp_dir + '/unit.log', 'r', errors='ignore') as f: + errs = re.findall(r'Error in fastcgi_finish_request', f.read()) + + assert len(errs) == 0, 'no error' + + def test_php_application_fastcgi_finish_request_2(self, temp_dir): + self.load('fastcgi_finish_request') + + resp = self.get(url='/?skip') + assert resp['status'] == 200 + assert resp['body'] == '' + + unit_stop() + + with open(temp_dir + '/unit.log', 'r', errors='ignore') as f: + errs = re.findall(r'Error in fastcgi_finish_request', f.read()) + + assert len(errs) == 0, 'no error' + def test_php_application_query_string_absent(self): self.load('query_string') |