[nginx-tests] Tests: fixed proxy_cache_age.t with older Perl ver...

Maxim Dounin mdounin at mdounin.ru
Mon Aug 12 03:37:27 UTC 2024


details:   http://freenginx.org/hg/nginx-tests/rev/d715aff0b61d
branches:  
changeset: 1992:d715aff0b61d
user:      Maxim Dounin <mdounin at mdounin.ru>
date:      Thu Aug 01 10:35:39 2024 +0300
description:
Tests: fixed proxy_cache_age.t with older Perl versions.

The test used regular expressions with "{,n}" quantifier with empty
lower bound, which is only available starting with Perl 5.34.0.  Further,
it used variable-length look-behind assertions, which are only available
starting with Perl 5.30.0 and emit experimental warning till Perl 5.36.0.

Fix is to rewrite regular expressions in question using "(?>pattern)"
instead (an independent subexpression), which is available since at least
Perl 5.005.

diffstat:

 proxy_cache_age.t |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (18 lines):

diff --git a/proxy_cache_age.t b/proxy_cache_age.t
--- a/proxy_cache_age.t
+++ b/proxy_cache_age.t
@@ -123,11 +123,11 @@ like(get('/ignore/noage'), qr/HIT/, 'noa
 
 sleep(2);
 
-like(http_get('/fresh'), qr/(?<!Age:.{,200})Age: 9[1-5](?!.*Age:)/ms,
+like(http_get('/fresh'), qr/^(?>.*?Age:) 9[1-5](?!.*Age:)/s,
 	'cached age updated');
-like(http_get('/stale'), qr/(?<!Age:.{,200})Age: 110(?!.*Age:)/ms,
+like(http_get('/stale'), qr/^(?>.*?Age:) 110(?!.*Age:)/s,
 	'not cached age preserved');
-like(http_get('/noage'), qr/(?<!Age:.{,200})Age: [1-5](?!.*Age:)/ms,
+like(http_get('/noage'), qr/^(?>.*?Age:) [1-5](?!.*Age:)/s,
 	'noage age added');
 
 like(http_get('/revalidate'), qr/REVALIDATED(?!.*Age:)/ms,


More information about the nginx-devel mailing list