]> sjero.net Git - wget/blobdiff - tests/HTTPServer.pm
Test for -c shorter content (#23613).
[wget] / tests / HTTPServer.pm
index a307b737310cb644abb489d1132d06211d02e38f..b76f0985742af738c1ddb2ed3514aa1a9afd7a3e 100644 (file)
@@ -92,13 +92,13 @@ sub send_response {
             print $con $content;
             next;
         }
-        if ($req->header("Range")) {
+        if ($req->header("Range") && !$url_rec->{'force_code'}) {
             $req->header("Range") =~ m/bytes=(\d*)-(\d*)/;
             my $content_len = length($content);
             my $start = $1 ? $1 : 0;
             my $end = $2 ? $2 : ($content_len - 1);
             my $len = $2 ? ($2 - $start) : ($content_len - $start);
-            if ($len) {
+            if ($len > 0) {
                 $resp->header("Accept-Ranges" => "bytes");
                 $resp->header("Content-Length" => $len);
                 $resp->header("Content-Range"
@@ -120,6 +120,7 @@ sub send_response {
             next;
         }
         # fill in content
+        $content = $self->_substitute_port($content);
         $resp->content($content);
         print STDERR "HTTP::Response with content: \n", $resp->as_string if $log;
     }
@@ -207,6 +208,13 @@ sub verify_auth_basic {
     }
 }
 
+sub _substitute_port {
+    my $self = shift;
+    my $ret = shift;
+    $ret =~ s/{{port}}/$self->sockport/eg;
+    return $ret;
+}
+
 1;
 
 # vim: et ts=4 sw=4