You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by co...@apache.org on 2025/07/16 17:31:51 UTC

svn commit: r1927269 - in /httpd/test/framework/trunk/t: conf/extra.conf.in modules/rewrite.t

Author: covener
Date: Wed Jul 16 17:31:50 2025
New Revision: 1927269

URL: http://svn.apache.org/viewvc?rev=1927269&view=rev
Log:
add tests for expression conds

Modified:
    httpd/test/framework/trunk/t/conf/extra.conf.in
    httpd/test/framework/trunk/t/modules/rewrite.t

Modified: httpd/test/framework/trunk/t/conf/extra.conf.in
URL: http://svn.apache.org/viewvc/httpd/test/framework/trunk/t/conf/extra.conf.in?rev=1927269&r1=1927268&r2=1927269&view=diff
==============================================================================
--- httpd/test/framework/trunk/t/conf/extra.conf.in (original)
+++ httpd/test/framework/trunk/t/conf/extra.conf.in Wed Jul 16 17:31:50 2025
@@ -306,6 +306,19 @@
       RewriteRule proxy_ne/(.*) http://@SERVERNAME@:@PORT@/?$1 [P,NE]
     </LocationMatch>
 
+
+   RewriteCond expr false
+   RewriteRule ^/modules/rewrite/expr/notgone/false$ - [G]
+
+   RewriteCond expr !true
+   RewriteRule ^/modules/rewrite/expr/notgone/nottrue$ - [G]
+
+   RewriteCond expr true
+   RewriteRule ^/modules/rewrite/expr/shouldredir/true$ /dummy [R=303]
+
+   RewriteCond expr !false
+   RewriteRule ^/modules/rewrite/expr/shouldredir/notfalse$ /dummy [R=303]
+
    <Location /modules/rewrite/>
       Header always set rewritten-query "expr=%{QUERY_STRING}"
    </Location>

Modified: httpd/test/framework/trunk/t/modules/rewrite.t
URL: http://svn.apache.org/viewvc/httpd/test/framework/trunk/t/modules/rewrite.t?rev=1927269&r1=1927268&r2=1927269&view=diff
==============================================================================
--- httpd/test/framework/trunk/t/modules/rewrite.t (original)
+++ httpd/test/framework/trunk/t/modules/rewrite.t Wed Jul 16 17:31:50 2025
@@ -99,6 +99,12 @@ if (have_min_apache_version('2.4.60')){
     ));
 }
 
+my @condexpr= (
+        [ "/modules/rewrite/expr/notgone/false"                          =>  404],
+        [ "/modules/rewrite/expr/notgone/nottrue"                        =>  404],
+        [ "/modules/rewrite/expr/shouldredir/true"                       =>  303],
+        [ "/modules/rewrite/expr/shouldredir/notfalse"                   =>  303],
+);
 if (!have_min_apache_version('2.4.19')) {
     # PR 50447, server context
     push @todo, 26
@@ -114,7 +120,7 @@ my $cookie_tests = have_min_apache_versi
 my @redirects = map {$_->[2] ? $_ : ()} @redirects_all;
 
 plan tests => @map * @num + 16 + $vary_header_tests + $cookie_tests + scalar(@escapes) + scalar(@redirects) + scalar(@bflags)
-              + scalar(@badquery) + scalar(@prefixstats),
+              + scalar(@badquery) + scalar(@prefixstats) + scalar(@condexpr),
               todo => \@todo, need_module 'rewrite';
 
 foreach (@map) {
@@ -313,8 +319,17 @@ foreach my $t (@badquery) {
     ok t_cmp $received, $expect;
 }
 
+foreach my $t (@condexpr) {
+    my $url =  $t->[0];
+    my $expect = $t->[1];
+    t_debug "Check $url for $expect\n";
+    $r = GET($url, redirect_ok => 0);
+    ok t_cmp $r->code, $expect;
+}
+
 foreach my $t (@prefixstats) {
     # Uses vhost "rewrite_prefix_stat" with larger LimitRequestLine
+    # Seems to have a side affect for any subsequent GET's
     my $url= Apache::TestRequest::module2url("rewrite_prefix_stat", { path => $t->[0] });
     my $expect = $t->[1];
     t_debug "Check $url for $expect\n";