]> sjero.net Git - wget/blobdiff - tests/FTPTest.pm
NEWS: cite --start-pos
[wget] / tests / FTPTest.pm
index 01c738d48a59a3515ff7467579f70dbd57293f4e..c1d3d266cf0f692e0d7cad62f8ce9c92c981c767 100644 (file)
@@ -1,20 +1,19 @@
-#!/usr/bin/perl -w
-
 package FTPTest;
 
 use strict;
+use warnings;
 
 use FTPServer;
-use Test;
+use WgetTest;
 
-our @ISA = qw(Test);
+our @ISA = qw(WgetTest);
 my $VERSION = 0.01;
 
 
 {
     my %_attr_data = ( # DEFAULT
     );
-    
+
     sub _default_for
     {
         my ($self, $attr) = @_;
@@ -22,28 +21,23 @@ my $VERSION = 0.01;
         return $self->SUPER::_default_for($attr);
     }
 
-    sub _standard_keys 
+    sub _standard_keys
     {
         my ($self) = @_;
         ($self->SUPER::_standard_keys(), keys %_attr_data);
     }
 }
-    
+
 
 sub _setup_server {
     my $self = shift;
 
-    foreach my $url (keys %{$self->{_input}}) {
-        my $filename = $url;
-        $filename =~ s/^\///;
-        open (FILE, ">$filename")
-            or return "Test failed: cannot open input file $filename\n";
-
-        print FILE $self->{_input}->{$url}->{content}
-            or return "Test failed: cannot write input file $filename\n";
-
-        close (FILE);
-    }
+    $self->{_server} = FTPServer->new (input => $self->{_input},
+                                       server_behavior =>
+                                           $self->{_server_behavior},
+                                       LocalAddr => 'localhost',
+                                       ReuseAddr => 1,
+                                       rootDir => "$self->{_workdir}/$self->{_name}/input") or die "Cannot create server!!!";
 }
 
 
@@ -51,11 +45,14 @@ sub _launch_server {
     my $self = shift;
     my $synch_func = shift;
 
-    my $server = FTPServer->new (LocalAddr => 'localhost',
-                                 LocalPort => '8021',
-                                 ReuseAddr => 1,
-                                 rootDir => "$self->{_workdir}/$self->{_name}/input") or die "Cannot create server!!!";
-    $server->run ($synch_func);
+    $self->{_server}->run ($synch_func);
+}
+
+sub _substitute_port {
+    my $self = shift;
+    my $ret = shift;
+    $ret =~ s/{{port}}/$self->{_server}->sockport/eg;
+    return $ret;
 }
 
 1;